|Part → Create a copy → Refine Shape|
|Introduced in version|
|Part SimpleCopy, Part TransformedCopy, Part ElementCopy, OpenSCAD RefineShapeFeature|
The Part RefineShape produces a non-parametric copy with a refined shape, that is, with certain edges and faces cleaned up.
After certain boolean operations, like Part Fuse, some lines from the previous shapes may remain visible. This tool produces a copy of that boolean result, and cleans up those seams.
Alternatively, to produce other non-parametric copies use Simple Copy, Transformed Copy, and Element Copy
Original boolean result with 11 faces (left), and refined shape copy with 7 faces (right).
- Select an object that you wish to clean and copy.
- Go to the menu Part → Create a copy → Refine shape.
- A cleaned, independent copy of the original object is created; the original object is hidden.
As of version 0.19 and above the result defaults to a parametric (linked) copy.
This behavior can be changed in the Parameter editor:
- Go to the subgroup:
falseto get the old behavior (independent copy).
See other parameters in Fine-tuning.
- This function can be used as the last step in the modelling work to clean up shapes in a traditional constructive solid geometry workflow.
- This function may help to clean up the model before applying another feature, such as a Fillet.
- This clean up may stop 3D printers from printing unwanted edges once the solid model is exported to a mesh format.
- This function can also be used after converting a mesh to a shape (ShapeFromMesh) to clean up the residual edges on flat faces.
- Some interesting information about what is happening with placement and how to access by Python can be found in this forum post.
- The refinement algorithm only works on shells. Therefore it iterates over the shells of the input shape and then for each shell it creates a new shell with joined faces wherever possible. This means that if your input shape is only a face, wire, edge or vertex then the algorithm does nothing.
- Unlike the OpenSCAD RefineShapeFeature command, Part RefineShape won't update when the preceding shapes are changed.
The Python command for refining a shape is the following:
- 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, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Path, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Start, Surface, TechDraw, Test Framework, Web
- Hubs: User hub, Power users hub, Developer hub