Dimensioning

Change the dimensions of existing geometry, thus changing the basic shape of solids and other enclosed volumes.



Figure 1. Initial Dimensions


Figure 2. Modified Dimensions

Edit Dimensions

Dimensioning is accomplished with features, parameters and dimension manipulators.

When changing several dimensions, each dimension change is performed separately using the respective manipulator. However, if multiple dimensions are linked to the same parameter or parameter expression, they will be updated simultaneously.

When dimensions are modified, a very limited check for mutual penetrations of the repositioned surfaces is performed. It is the your responsibility to ensure that the new dimensions are appropriate.

The locked end of the dimension manipulator defines the direction in which the affected surfaces move when the dimension is modified. For a dimension to be modified, one or both ends of the dimension manipulator must unlocked.

When dimensions cannot be modified, the locked side is set to Both and you may use the Sides Selection advanced option to specify how the dimension should be changed, when possible.

  1. Create dimension feature.
    1. In the Model Browser, right-click and select Create > Feature from the context menu.
      The Feature dialog opens.
    2. In the Name field, enter a name for the dimension.
    3. In the Point1 and Point2 fields, use the entity selector to select two fixed points (vertices) between the opposite surfaces where the dimension is defined.

      A dimension manipulator is then created between these fixed points (Point1 and Point2).

    4. In the Parameterization field, select a parameterization method.
      Note:

      A new parameter can be created and assigned to an existing dimension feature at any time via the Create Parameter option in the Entity Editor context menu.

      • Choose Create Parameter to create and assign a new parameter to a dimension feature.
      • Choose Select Parameter to assign an existing parameter to the new dimension feature.
      • Choose No Parameter if you do not want to assign a parameter to the dimension feature.
    5. Click Create.
  2. In the Entity Editor, define dimension feature attributes.
  3. Edit dimension.
    • In the modeling window, click the dimension's corresponding label and enter a new value.
    • In the Model Browser, select the parameter assigned to the dimension feature. In the Entity Editor, enter a new value.


    Figure 3.

Dimensioning Concepts

Learn about basic dimensioning concepts, such as continuous surface offset functionality and tolerance and accuracy.

Continuous Surface Offset Functionality

Dimensioning is based on a continuous surface offset functionality. It provides assistance in the selection of the surfaces to offset so that a change to the selected dimension can occur, and calculates the offset values required for each surface to achieve the specified dimension.

The continuous offset modifies both the surfaces you selected for the offset and the adjacent involved surfaces that must also be modified so that the result will remain as continuous as the initial input.

These "selected" and "involved" surfaces are modified with different rules.
  • Selected surfaces
    • Offset by a constant value that is normal, or in some cases almost normal, to the surface at each point. For example, a standalone surface is offset by the given constant distance exactly normal to itself.


      Figure 4. Normal Offset of a Standalone Surface
    • When the adjacent surfaces form a corner between them, the exact normal offset will result in either disconnected surfaces or in intersecting surfaces, for example if the offset was performed in the opposite direction.


      Figure 5. Exact Normal Offset of the Adjacent Surfaces Creates a Rupture
    • A continuous result that is consistent with the given offset distance is obtained by reconciling the offset vectors of the vertices shared by the surfaces being offset.


      Figure 6. Reconciled Offset Vectors at Shared Edge
  • Involved Surfaces
    • The edges of the involved surfaces that are shared with the selected surfaces move with the selected surfaces.
    • The edges of the involved surfaces that do not have a common point with the selected surfaces do not move, for example they are locked.
    • The offset of the edges that connect both the moving and the locked involved surface edges is defined by interpolation. Different interpolation methods are available.
In general cases, the target dimension between the selected vertices is achieved by offsetting the surfaces that contain the vertices in an infinite number of ways. To avoid this, the following rules are implemented.
  • If both dimension ends (both vertices) are allowed to move, an attempt is made to move them by the same distance whenever possible.
  • If possible, the dimension ends are moved in such a way that the direction of the dimension will not change.
In the following example, the initial positions of the vertices are marked with temp nodes to enable the changes can be easily seen. The locked state of the dimension manipulators is indicated by the lock icons.
Note: These examples are not cumulative, so no two images are directly related. The first image, showing the dimensions of 3, 4, and 5, is the starting point from which all of the other examples derive.


Figure 7. Original Model. 3 dimensions selected.


Figure 8. Dim 4 Changed to 5. Top and bottom move.


Figure 9. Dim 4 Changed to 5. Top moves, bottom is locked.


Figure 10. Dim 5 (Diagonal) Changed to 6. All sides move.


Figure 11. Dim 5 Changed to 6. Only top moves.


Figure 12. Dim 5 Changed to 6. Only right side moves.

Tolerances and Accuracy

All geometry transformation tools are numerical tools that operate with some accuracy defined by the tolerances, such as the geometry cleanup tolerance set in the Options panel. Curved surfaces and lines have internal structures in 3D that are invisible to you. Significantly reducing the size of such an entity so that these structures fall below the tolerances may result in a structure simplification that you cannot notice at first; the structural data will be lost. When this occurs any subsequent increase in the size will not restore the initial structures. For example, reducing a cylinder diameter 100 times and then increasing the diameter 100 times may not lead to the same cylinder; in some cases, a complex internal representation of the cylinder may lead to a corrupt surface. In general, transformation of a curved entity may result in both the simplification or complication of its internal structure. It is therefore not recommended to perform multiple transformations on curved entities.

Dimension Manipulators

Dimension manipulators are used to alter selected dimensions of solid entities.

A dimension manipulator consists of:
Dimension line
A segment parallel to the line that connects the selected points, but is shifted off the selected points for visibility. The terms manipulator direction and manipulator ends are also used, which are the same as the dimension line direction and the dimension line ends.
Pullout lines
Two parallel segments that connect the ends of the dimension line with the selected points.
Lock icons
Arrow (movable) and block (locked) icons indicate the lock state of a manipulator end.
Lock controls
Sphere handles, located near the lock icons, enable the lock state of a manipulator end to be modified.
Display/input field
Displays the current dimension value, which can be modified or deleted. This value can be modified or deleted. Deleting the value deletes the the manipulator. For dimensions that are parameterized, an "&" symbol will appear before the dimension. Editing a parameterized dimension directly edits the parameter, or parameter expression.


Figure 13. Dimension Manipulator

Dimension Feature Attributes

Attributes associated with dimension features can be modifed in the Entity Editor.

Attribute Action
Lock Side Select the locked end of the dimension manipulator, which defines the direction in which the affected surfaces move when the dimension is modified. For a dimension to be modified, one or both ends of the dimension manipulator must unlocked.

When dimensions cannot be modified, the locked side is set to Both and you may use the Sides Selection advanced option to specify how the dimension should be changed, when possible.

Surfaces Interpolation System
Automatic
A heuristic algorithm is used to try and decide which of the two interpolation methods to apply for each individual, applicable involved surface.
Local
A Local Coordinate System (LSC) 2D interpolation method that "slides" along the surfaces to determine the offset vectors, which are then interpolated and combined into the interpolated offset at each point. Selected surfaces are always interpolated using this method.
Global
A global coordinate system 1D linear interpolation method that stretches/compresses a surface proportionally in a global 1D. Only applicable when all of the offset vectors at the surface's vertices are collinear and proportional to the distance parameter along their common direction.


Figure 14. Interpolation of the Same Offset Vectors at the Vertices for both Methods
Minimum Slide Angle When a selected surface is offset, the involved surfaces must be modified to keep the continuity of the model.

Surfaces can be modified by dragging the involved surface behind the selected surface, or by defining it as a "slider" along which the selected surface slides.

The Minimum Slide angle determines which method is used. If the slide angle is more than the specified value, then the involved surface will slide; otherwise it will drag.

When the involved surface is a slider, the orientation of the surface does not change for planar surfaces. However, for curved involved surfaces, the sliding directions are defined by the tangents to the surface where it is adjacent to the selected surface. Sliding of the selected and involved surfaces along these directions may also result in some change to the shape of the involved surface.


Figure 15. Original Model


Figure 16. Involved Surface Dragged. Dimension modified to D=0.4.


Figure 17. Involved Surface as Slider. Dimension modified to D=0.4.
Remove Collapsed Surfaces Remove portions of the offset surfaces that fold into themselves or adjacent surfaces (portions of surfaces that penetrate themselves or adjacent surfaces along the edges they are adjacent over).
For example, suppose that the slide angle is greater than the Minimum Slide Angle and the value in the dimension manipulator is set to 1. If this option is off, the involved surface will slide and ignore the self-penetration, resulting in a corrupt model. If this option is on, the involved surface will slide as far as possible without causing self-penetration. This may not allow the specified dimension to be reached, but will not result in a corrupt model.


Figure 18. Remove Collapse Surfaces Off. Dimension modified to D=1.


Figure 19. Remove Collapse Surfaces On. Dimension modified to D=1.
Another useful application is for the removal of holes. If the hole diameter is set to 0 and this option is on, the hole will be removed. If the option is off, a small "straw surface" will still remain.

In general, unless it is known that collapsed surfaces will result, it is better to keep this option off for performance reasons, as this option has no effect on general cases that do not result in penetration.

Sides Selection
Auto
Automatically select the surfaces to offset using the following rules:
  1. Surfaces adjacent to the manipulator ends are selected if the angle between the normal to the surface at the dimension end and the dimension direction is less than the Max Pick Tilt.
    If surfaces are selected at both ends for the specified Max Pick Tilt value, then the lock control handles will allow for the manual manipulation of the offset scenario.


    Figure 20. Angle between the Normal to the Surface and the Manipulator Direction
  2. Surfaces adjacent to the selected surfaces are appended, provided that they are planar and the angle along the edge over which they are adjacent to the already selected surface is less than the Max Expand Angle.
  3. The total area of the selected surfaces at each end is calculated. If the area of the selected surfaces at one end is more than the Side Selection Area Ratio and larger than the area of the selected surfaces at the other end, then the surfaces on the larger area side are unselected. In this case, only the surfaces at the smaller area side are used to offset.


    Figure 21. Side Selection Area Ratio. The image on the left has a side selection area ratio = 3, and the image on right has a side selection area ratio = 1.5. The bottom surface area is twice as much as the top surface, therefore the bottom will not move (note the lock indicator).
The ends of the dimension lines that are allowed to move are marked with arrows, while the locked ends are marked with blocks.


Figure 22. Example of Lock Icons
When both sides have surfaces that satisfy rule 1 above, rule 3 can be manually overridden. In this case the lock controls (spheres near the icons) define the offset scenario. Clicking the lock control handles will toggle the lock state between locked and unlocked for that end. If a lock control state is manually specified, then rule 3 is ignored for that dimension manipulator and the Side Selection Area Ratio option no longer applies.
When Sides Selection is set to Manual, the surfaces to offset are selected using the Surfaces to Move selector. The manual surface selection is then governed by the lock state of the dimension manipulator ends.
Note: Out of the selected surfaces, only those that are linked to at least one of the dimension manipulator ends by a continuous selection are actually used in the offset.
With the manual selection, the use of Separator Lines is also available (see the surface edit subpanel for details).
Manual
Manually select the surfaces to offset.
With manual side selection, surfaces are selected erroneously, and the results can be unexpected or catastrophic.


Figure 23. Dim 50.5 Changed to 70 to Move the Wall. The three highlighted surfaces are selected in order to change the dimension from 50.5 to 70 and move the wall to a new position.

Advanced Considerations

Advanced considerations to keep in mind when changing the dimensions of existing geometry.

In practice, changing of a linear dimension in a model normally implies either stretching/compressing in the direction of the modified dimension or changing of a diameter/radius. With dimensioning funtionality, a combination of both modification types is provided.

In the example below, one of the two D=52 dimensions is changed to D=60. How the offset is performed will give different results, both of which may be valid, depending on which of the two dimension manipulators is changed.


Figure 24. Original model


Figure 25. Edge Fillet Surfaces Selected. The fillet radius is scaled.


Figure 26. Edge Fillet Surfaces Involved. Linear scaling only, fillet curvature changes.

When the value of the upper dimension manipulator is modified from 52 to 60, the edge fillet surfaces are adjacent to the modified manipulator and are offset as selected surfaces. As such, they are offset with the LSC interpolation, which results in a preservation of their shape along with the change in radii.

When the value of the lower dimension manipulator is modified from 52 to 60, the edge fillet surfaces are not adjacent to the modified dimension manipulator and are curved, so they are offset as involved surfaces. Using automatic interpolation, it is recognized that these two curved surfaces can be simply stretched to provide the model continuity via the global interpolation method.

When using manual surface selection and changing the same lower dimension, a variety of results are obtainable depending on the selected surfaces. Some of the possible results are shown below.
Note: In each row of the three images, the first two show the initial selection from two angles, to reveal all of the selected surfaces, while the third shows the results of the dimension change based on those selected surfaces.


Figure 27. Original model, 3 surfaces selected


Figure 28. Original model, 3 surfaces selected


Figure 29. Result of the dimension 52 change to 60


Figure 30. Original model, 4 surfaces selected


Figure 31. Original model, 4 surfaces selected


Figure 32. Result of the dimension 52 change to 60


Figure 33. Original model, 5 surfaces selected


Figure 34. Original model, 5 surfaces selected


Figure 35. Result of the dimension 52 change to 60


Figure 36. Original model, 6 surfaces selected


Figure 37. Original model, 6 surfaces selected


Figure 38. Result of the dimension 52 change to 60


Figure 39. Original model, 7 surfaces selected


Figure 40. Original model, 7 surfaces selected


Figure 41. Result of the dimension 52 change to 60
The following steps are used to calculate the offset values of the selected surfaces.
  1. The required shift in the dimension manipulator direction is calculated as a difference between the requested distance and the actual distance between the dimension manipulator ends.
  2. If both dimension manipulators ends are allowed to move, the required shift is divided by two.

    When Sides Selection is set to Auto, an end is allowed to move if it belongs to a surface that is automatically selected to move. When this can be overridden manually by you, the lock controls appear.

    When Sides Selection is set to Manual, an end is allowed to move if it belongs to a manually selected surface, and the surface normal at the dimension manipulator end forms an angle with the dimension manipulator direction that is less than arccos(0.05) (87.134016 degrees).

    For example, the right end of the dimension manipulator belongs to only the selected surface 2. The normal to surface 2 at the right end creates a 90-degree angle with the dimension manipulator and thus the end is not allowed to move. The left dimension manipulator end belongs to both selected surfaces 1 and 2. The normal to surface 1 at the left end makes a 0-degree angle with the dimension manipulator direction, and thus the left end is allowed to move.
    Figure 42.



    Figure 43. . In this example, the right end belongs to selected surfaces 2 and 7, with the left end belonging to selected surfaces 1 and 2. Thus, both ends are allowed to move.
  3. When only planar surfaces are selected, the absolute value of its normal offset is defined as the absolute value of the required shift multiplied by the cosine between the normal to the surface and the dimension manipulator direction.


    Figure 44.

    For a planar surface, this provides that its shift in the dimension manipulator direction is equal to the required shift.

    When curved surfaces are included and the Sides Selection is set to Manual, the rules of the offset value calculations are more complex. The problem in this case originates from the fact that a selected curved surface can provide a smooth link between the selected planar surfaces that are tilted by different angles versus the dimension manipulator direction. When smooth, adjacent surfaces are offset, they must be offset by the same value to ensure continuity of the result, because in this case it is not possible to reconcile the different offset values as discussed earlier. This means that the planar surfaces with a different tilt towards the dimension manipulator direction cannot be offset by different distances, as shown above, when the planar surfaces are smoothly linked by a selected surface.

    The current algorithm to define the offset value in the general case, for both curved and planar surfaces, is as follows. For a selected surface adjacent to the dimension manipulator end, its offset is calculated as shown in the image above, based on the normal to the surface at the dimension manipulator end. For a selected surface that is not adjacent to the dimension manipulator end, a chain of selected surfaces that links it to the related end is detected, and the offset is calculated along the chain, from the previous surface to the next. The calculation along the chain is based on the following:
    • If the surfaces are smoothly adjacent, the offset value is directly passed from one surface to the next.
    • If the surfaces are not smoothly adjacent, the offset is calculated in such a way that for a planar surface the result as shown in the image above is obtained.
    The problem here is that when several chains of selected surfaces connect a selected surface with the related dimension manipulator end, the offset results for the surface obtained along the different chains can contradict each other. Then the dimensioning result may be corrupt. Therefore, it is important to make appropriate manual surface selections.


    Figure 45. . Surfaces 1, 2, and 4 selected, D=52 changed to D=60. Surfaces 1, 2, and 4 offset by 8.


    Figure 46. . Surfaces 1, 3, and 4 selected, D=52 changed to D=60. Surface 1 offset by 8, Surfaces 3 and 4 by 0.


    Figure 47. . Surfaces 1, 2, 3, and 4 selected, D=52 changed to D=60. The result is corrupt.
  4. For each selected surface the sign of the offset is defined so that it will move in the same direction as the dimension manipulator end to which it is related.

    A surface can be related to one, and only one, of the dimension manipulator ends. For this, first, the dimension manipulator end must be allowed to move. Second, the surface should be linked to the dimension manipulator end over a chain of adjacent selected surfaces. Third, in the case when the surface is linked to both dimension manipulator ends which are allowed to move, the surface will be related to the end that is closer to it.

    As an example, selected surface 2 will have an offset of 0, because cos(90) = 0. The purpose for selection of this surface is just to provide a link from the dimension manipulator ends to the other selected surfaces. Surface 1 is at the moving dimension manipulator end, and surface 3 moves as surface 1.
    Figure 48.


    Following the same rules, surfaces 1 and 7 are at the moving dimension manipulator ends. Surfaces 3 and 5 move as surface 1, and surfaces 4 and 6 move as surface 7.


    Figure 49.