|TechDraw → Dimensions → Insert Length Dimension|
|Introduced in version|
|TechDraw HorizontalDimension, TechDraw VerticalDimension|
The Length Dimension tool adds a linear dimension to a View. The dimension may be between the distance between two vertices, the length of one edge or the distance between 2 edges. The distance will initially be the projected distance (ie as shown on the drawing), but this may be changed to the actual 3D distance using thetool.
Length dimension taken from two arbitrary nodes of the view
- Select the points or edge which define your measurement.
- Press the button.
- A dimension will be added to the View. The dimension may be dragged to the desired position.
- If needed, add tolerances as described in this page.
To change the properties of a dimension object either double-clicking it in the drawing or in the Tree view. This will open the dimension dialog:
The dimension dialog offers the following settings:
- Theoretically Exact: If checked, is specifies the dimension as theoretically exact dimension. As such, it shall not bear any tolerances. The dimension will be displayed by a frame around the value:
- Equal Tolerance: If checked, the over- and undertolerance are equal and the negated value of the overtolerance is used as undertolerance. The display will be , otherwise it will be .
- Overtolerance: The amount by which the dimension may be larger.
- Undertolerance: The amount by which the dimension may be smaller.
- Format Specifier: How the dimension value will be formatted. By default the specifier is %.xf whereby x is the number of decimals. For the formatting syntax see this Wikipedia page.
- Arbitrary Text: If checked, the dimension is replaced by the content of the Format Specifier field.
- OverTolerance Format Specifier: How the overtolerance value will be formatted. By default the specifier is %.xf whereby x is the number of decimals. For the formatting syntax see this Wikipedia page.
- UnderTolerance Format Specifier: How the undertolerance value will be formatted. By default the specifier is %.xf whereby x is the number of decimals. For the formatting syntax see this Wikipedia page.
- Arbitrary Tolerance Text: If checked, the tolerances are replaced by the content of the OverTolerance Format Specifier UnderTolerance Format Specifier fields.
- Flip Arrowheads: Flips the direction in which the dimension line arrows are pointing. By default they are inside the dimension line/arc and pointing outwards.
- Color: The color for lines and text.
- Font Size: The dimension text size.
- Drawing Style: The standard (and its style) according to which the dimension is drawn. See the property Standard And Style for details.
- DataX: Horizontal position of the dimension text relative to the View.
- DataY: Vertical position of the dimension text relative to the View.
- DataType: Length,radius,diameter, etc. Not normally manipulated by the end user.
- DataMeasure Type: How the measurement is performed. Not normally manipulated directly by the end user.
- True - based on 3D geometry or
- Projected - based on the drawing
- DataTheoretical Exact: Specifies a theoretically exact (or basic) dimension.
- DataEqual Tolerance: If over- and undertolerance are equal. Then the negated value of the overtolerance is used as undertolerance.
- DataOver Tolerance: The amount by which the dimension may be larger.
- DataUnder Tolerance: The amount by which the dimension may be smaller.
- DataInverted: Marks whether the dimension represents a common or an inverted value.
false- the ordinary value is used. For length it is a positive number, for angle the oblique value (0° - 180°).
true- the inverted value is used. For length a negative number, for angle the reflex value (180° - 360°).
- DataFormat Spec: How the dimension value will be formatted. By default the specifier is %.xf whereby x is the number of decimals. For the formatting syntax see this Wikipedia page.
- DataFormat Spec Over Tolerance: Like DataFormat Spec, but for overtolerances.
- DataFormat Spec Under Tolerance: Like DataFormat Spec, but for undertolerances.
- DataArbitrary: Whether the dimension is replaced by the content of the Format Spec field.
false- the content of the Format Spec is used to format the actual dimensional value.
true- the content of the Format Spec will be displayed as text instead if the dimension value.
- DataArbitrary Tolerances: Like DataArbitrary, but for the tolerance.
- ViewVisibility: Sets whether the dimension is visible.
- ViewFont: The name of the font to use for the dimension text.
- ViewFont Size: Dimension text size.
- ViewLine Width: Dimension line weight.
- ViewColor: Color for lines and text.
- ViewStandard And Style: Specifies the standard (and its style) according to which the dimension is drawn:
ISO Oriented- drawn according to the standard ISO 129-1, text is rotated to be parallel with the dimension line tangent.
ISO Referencing- drawn in compliance with ISO 129-1, text is always horizontal, above the shortest possible reference line.
ASME Inlined- drawn according to the standard ASME Y14.5M, text is horizontal, inserted in a break within the dimension line or arc.
ASME Referencing- drawn in compliance with ASME Y14.5M, text is horizontal, short reference line is attached to one side's vertical center.
- ViewRendering Extent: Rather universal property specifying how much space the dimension drawing may take up:
None- no lines or arrows are drawn, only the bare dimension value is displayed.
Minimal- for lengths and angles a single headed line connecting the dimensional value and the end point's virtual extension line is drawn. The extension line itself is not added.
- Diameters are rendered following
Confinedextent, radii following
Confined- for lengths and angles a double headed line (or arc) connecting the start and end point's virtual extension lines is drawn, though the extension lines themselves are not added.
- Diameters are drawn with a minimal single headed line from dimensional value to the closest point on circle, radii as with
Reduced- for lengths and angles a single headed line connecting the dimensional value and the end point's extension line is drawn along with the extension line itself.
- Diameters are drawn with a single headed line from the center to the closest point on circle, radii with a minimal single headed line from dimensional value to the closest arc point.
Normal- the default value. For lengths and angles a double headed line (or arc) connecting the start and end point's extension lines is drawn, the extension lines themselves as well.
- Diameters are drawn as double headed lines striking the center and connecting the closest and farthest points on the circle.
- Radii are drawn as a single headed line from center to the closest arc point.
Expanded- Only diameters support this value, rendering them in a horizontal or vertical length-like way. Other dimension types are rendered as with
- ViewFlip Arrowheads: By default the value inside the dimension line/arc means the arrows pointing outwards. If placed outside the dimension line/arc, the arrows point inwards the dimension line/arc.
false- Let the direction of arrows to be selected automatically according to the rule above.
true- Override the automatically chosen direction and force the opposite one.
Dimension objects are vulnerable to the "topological naming problem". This means that if you modify the 3D geometry the faces and edges of the model may be renamed internally; if a dimension is attached to an edge that is then modified, the dimension may break. In general, it is not possible to keep the projected 2D dimensions synchronized with the actual 3D objects.
Therefore, it is recommended that dimensions be added when the 3D model is no longer being modified.
If you want to keep a TechDraw view with dimensions that won't break, you need to dimension an object that won't change.
- Select the object that you want to project, then switch to the Part Workbench and use Part → Create simple copy. This will create a single object that is not parametric, that is, no longer editable.
- Select this copy, then use TechDraw View, and add the desired dimensions.
- If the original 3D model is modified, the modifications won't affect the simple copy, nor the dimensions in the TechDraw view.
See Landmark Dimensions for another approach to circumventing the topological naming issue.
dim1 = FreeCAD.ActiveDocument.addObject('TechDraw::DrawViewDimension','Dimension') dim1.Type = "Distance" dim1.References2D=[(view1, 'Edge1')] rc = page.addView(dim1)
- Edge selection. Edges can be difficult to select. You can adjust the selection area for edges using the parameter "/Mod/TechDraw/General/EdgeFuzz" (see Std_DlgParameter). This is a dimension-less number. The default is 10.0. Values in the 20-30 range will make it noticeably easier to select edges. Large numbers will cause overlaps with other drawing elements.
- Decimal places. Dimensions use the global decimal places setting by default. This can be changed via preferences or by changing the FormatSpec property.
- Multiple objects. Views may contain multiple 3D objects as Source. Dimensions may be applied to geometry from any object(s) in the View (ex from Object1.Vertex0 to Object2.Vertex3).