Topological naming problem: Difference between revisions
(→Solution: {{TechDraw Tools navi}}{{Part Tools navi}}) |
(→Introduction: Minor changes) |
||
Line 6: | Line 6: | ||
* In TechDraw, if a dimension is measuring the length of a projected edge, the dimension may break if the 3D model is changed in such a way that it affects the edge. |
* In TechDraw, if a dimension is measuring the length of a projected edge, the dimension may break if the 3D model is changed in such a way that it affects the edge. |
||
The topological naming issue is a complex problem in CAD modelling that stems from the way the FreeCAD core routines handle updates |
The topological naming issue is a complex problem in CAD modelling that stems from the way the FreeCAD core routines handle updates of the geometrical shapes created with the OCCT kernel. As of FreeCAD 0.18 there is ongoing efforts to reduce or eliminate such topological issues. New developments may eventually be included in future versions of FreeCAD. |
||
The topological naming problem most often affects and confuses new users |
The topological naming problem most often affects and confuses new users of FreeCAD. Careful modelling and use of supporting datum objects like [[PartDesign Plane|planes]] and [[PartDesign CoordinateSystem|local coordinate systems]] is advisable to produce stable models that aren't easily subject to such errors. |
||
== Example == |
== Example == |
Revision as of 21:07, 4 May 2019
Introduction
The topological naming problem in FreeCAD refers to the issue of a shape changing its internal name after a geometrical modelling operation (pad, cut, fuse, chamfer, fillet, etc.) is performed. This will result in other parametric features that depend on that shape to break or be incorrectly computed. This issue affects all objects in FreeCAD but is especially notable when building solids with the PartDesign Workbench, and when dimensioning those solids with the TechDraw Workbench.
- In PartDesign, if a feature is supported on a face (or edge or vertex), the feature may break if the underlying pad changes size or orientation, as the original face (or edge or vertex) may be internally renamed.
- In TechDraw, if a dimension is measuring the length of a projected edge, the dimension may break if the 3D model is changed in such a way that it affects the edge.
The topological naming issue is a complex problem in CAD modelling that stems from the way the FreeCAD core routines handle updates of the geometrical shapes created with the OCCT kernel. As of FreeCAD 0.18 there is ongoing efforts to reduce or eliminate such topological issues. New developments may eventually be included in future versions of FreeCAD.
The topological naming problem most often affects and confuses new users of FreeCAD. Careful modelling and use of supporting datum objects like planes and local coordinate systems is advisable to produce stable models that aren't easily subject to such errors.
Example
1. In the PartDesign Workbench, create a PartDesign Body, then use PartDesign NewSketch and select the XY plane to create a sketch; then perform a PartDesign Pad to create a first solid.
2. Select the top face of the previous solid, and then use PartDesign NewSketch to draw another sketch; then perform a second pad.
3. Select the top face of the previous extrusion, and once again create a sketch, and a pad.
4. Now, the second sketch will be modified so that the length is towards the X direction; doing this will recreate the second pad. The third pad will stay in the same place.
5. Now, modify again the second sketch, so that it leaves the limits defined by the first pad. By doing this, the second pad will recompute correctly, however, when looking at the tree view, an error will be indicated in the third pad.
6. By making visible the third sketch and pad, it is clear that the computation did not proceed correctly. The third sketch, instead of being supported by the top face of the second pad, appears in a strange orientation, resulting in an invalid pad, as this pad would be disconnected from the rest of the PartDesign Body.
Solution
As explained in the feature editing page, a solution to this problem is to support sketches not on faces but on datum planes which are themselves offset from the main XY plane of the PartDesign Body.
In this manner, it doesn't matter if the second sketch changes, as the modified second pad will not affect the support of the third sketch.
Adding datum objects is more modelling work for the user, but ultimately produces more stable models that are less subject to the topological naming problem.
- Pages: Insert Default Page, Insert Page using Template, Redraw Page, Print All Pages
- Views: Insert View, Insert Active View, Insert Projection Group, Insert Section View, Insert Complex Section View, Insert Detail View, Insert Draft Workbench Object, Insert Arch Workbench Object, Insert Spreadsheet View, Insert Clip Group, Share View, Project Shape
- Stacking: Move view to top of stack, Move view to bottom of stack, Move view up one level, Move view down one level
- Decorations: Hatch Face using Image File, Apply Geometric Hatch to Face, Insert SVG Symbol, Insert Bitmap Image, Turn View Frames On/Off
- Dimensions: Insert Length Dimension, Insert Horizontal Dimension, Insert Vertical Dimension, Insert Radius Dimension, Insert Diameter Dimension, Insert Angle Dimension, Insert 3-Point Angle Dimension, Insert Horizontal Extent Dimension, Insert Vertical Extent Dimension, Link Dimension to 3D Geometry, Insert Balloon Annotation, Insert Axonometric Length Dimension, Insert Landmark Dimension, Adjust Geometric References of Dimension
- Annotations: Insert Annotation, Add Leaderline to View, Insert Rich Text Annotation, Add Cosmetic Vertex, Add Midpoint Vertices, Add Quadrant Vertices, Add Centerline to Faces, Add Centerline between 2 Lines, Add Centerline between 2 Points, Add Cosmetic Line Through 2 points, Add Cosmetic Circle, Change Appearance of Lines, Show/Hide Invisible Edges, Add Welding Information to Leader, Add Surface Finish Symbol, Add Hole or Shaft Tolerances
- Extensions:
- Attributes and modifications: Select Line Attributes, Cascade Spacing and Delta Distance, Change Line Attributes, Extend Line, Shorten Line, Lock/Unlock View, Position Section View, Position Horizontal Chain Dimensions, Position Vertical Chain Dimensions, Position Oblique Chain Dimensions, Cascade Horizontal Dimensions, Cascade Vertical Dimensions, Cascade Oblique Dimensions, Calculate the area of selected faces, Calculate the arc length of selected edges, Customize format label
- Centerlines and threading: Add Circle Centerlines, Add Bolt Circle Centerlines, Add Cosmetic Thread Hole Side View, Add Cosmetic Thread Hole Bottom View, Add Cosmetic Thread Bolt Side View, Add Cosmetic Thread Bolt Bottom View, Add Cosmetic Intersection Vertex(es), Add an offset vertex, Add Cosmetic Circle, Add Cosmetic Arc, Add Cosmetic Circle 3 Points, Add Cosmetic Parallel Line, Add Cosmetic Perpendicular Line
- Dimensions: Create Horizontal Chain Dimensions, Create Vertical Chain Dimensions, Create Oblique Chain Dimensions, Create Horizontal Coordinate Dimensions, Create Vertical Coordinate Dimensions, Create Oblique Coordinate Dimensions, Create Horizontal Chamfer Dimension, Create Vertical Chamfer Dimension, Create Arc Length Dimension, Insert '⌀' Prefix, Insert '〼' Prefix, Remove Prefix, Increase Decimal Places, Decrease Decimal Places
- Export: Export Page as SVG, Export Page as DXF
- Additional: Line Groups, Templates, Hatching, Geometric dimensioning and tolerancing, Preferences
- Structure tools: Part, Group
- Helper tools: Create body, Create sketch, Edit sketch, Map sketch to face
- Modeling tools
- Datum tools: Create a datum point, Create a datum line, Create a datum plane, Create a local coordinate system, Create a shape binder, Create a sub-object(s) shape binder, Create a clone
- Additive tools: Pad, Revolution, Additive loft, Additive pipe, Additive helix, Additive box, Additive cylinder, Additive sphere, Additive cone, Additive ellipsoid, Additive torus, Additive prism, Additive wedge
- Subtractive tools: Pocket, Hole, Groove, Subtractive loft, Subtractive pipe, Subtractive helix, Subtractive box, Subtractive cylinder, Subtractive sphere, Subtractive cone, Subtractive ellipsoid, Subtractive torus, Subtractive prism, Subtractive wedge
- Transformation tools: Mirrored, Linear Pattern, Polar Pattern, Create MultiTransform, Scaled
- Dress-up tools: Fillet, Chamfer, Draft, Thickness
- Boolean: Boolean operation
- Extras: Migrate, Sprocket, Involute gear, Shaft design wizard
- Context menu: Set tip, Move object to other body, Move object after other object, Appearance, Color per face
- Primitives: Box, Cylinder, Sphere, Cone, Torus, Tube, Create primitives, Shape builder
- Creation and modification: Extrude, Revolve, Mirror, Fillet, Chamfer, Make face from wires, Ruled Surface, Loft, Sweep, Section, Cross sections, 3D Offset, 2D Offset, Thickness, Projection on surface, Attachment
- Boolean: Make compound, Explode Compound, Compound Filter, Boolean, Cut, Fuse, Common, Connect, Embed, Cutout, Boolean fragments, Slice apart, Slice, XOR
- Measure: Measure Linear, Measure Angular, Measure Refresh, Clear All, Toggle All, Toggle 3D, Toggle Delta
- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, Docker, AppImage, Ubuntu Snap
- Basics: About FreeCAD, Interface, Mouse navigation, Selection methods, Object name, Preferences, Workbenches, Document structure, Properties, Help FreeCAD, Donate
- Help: Tutorials, Video tutorials
- Workbenches: Std Base, Arch, Assembly, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Start, Surface, TechDraw, Test Framework, Web
- Hubs: User hub, Power users hub, Developer hub