In FreeCAD the word "Shape" is normally used to refer to a Part TopoShape (
Part::TopoShape class), a type of object that gives an element its 3D geometrical and parametric representation (cube, pyramid, sphere, cylinder, fusion, etc.).
Essentially all objects that are displayed in the 3D view have a TopoShape, with the exception of "Meshes", which have a MeshObject (
See Part TopoShape for more information about this type of object.
Left: parametric shape defined by properties. Right: mesh, defined by vertices and triangular surfaces.
Shapes are normally created by internal functions of the Part Workbench, and are ultimately defined by the OpenCASCADE Technology kernel (OCCT).
Once a Shape is created, it can be used and modified by all workbenches by creating scripted objects around that Shape.
Essentially, every object derived from a Part Feature (
Part::Feature class) is expected to hold and manipulate a Shape.
In informal usage, a "Shape" may be any geometrical figure that is visible in the 3D view, and thus its concept may be confused with that of "Body" or "Part".
However, when more precision is required, the distinction must be made.
- A "Body" is an object derived from a Part Feature (
Part::Feature class), created with the PartDesign Workbench.
- A "Shape" is an internal object, embedded within the "Body".
- A "Part" is used to group several "Bodies" to form an assembly. A "Part" has a collection of "Shapes", but doesn't have a "Shape" of its own.
- Modifying objects: Boolean, Union, Common, Cut, Join features, Connect, Embed, Cutout
- Splitting tools: Boolean fragments, Slice a part, Slice, XOR, Part Defeaturing
- Compound: Make compound, Explode Compound, Compound Filter; Extrude, Fillet, Revolve, Section, Cross sections, Chamfer, Mirror, Ruled Surface, Sweep, Loft
- Offset tools: 3D Offset, 2D Offset, Thickness, Projection on surface
- Other tools: Import CAD, Export CAD, Shape from Mesh, Convert to solid, Reverse shapes, Create simple copy, Create transformed copy, Create shape element copy, Refine shape, Check geometry, Measure, Attachment
- Installation: Linux/Unix, Windows, Mac, Docker, AppImage; Getting started
- Basics: About FreeCAD, Workbenches, Preferences, Document structure, Interface Customization, Properties, Mouse Model; Tutorials, Video tutorials
- Workbenches: Std Base; Arch, Draft, FEM, Image, Inspection, Mesh, OpenSCAD, Part, PartDesign, Path, Plot, Points, Raytracing, Reverse Engineering, Robot, Ship, Sketcher, Spreadsheet, Start, Surface workbench, TechDraw, Test Framework, Web
- Scripting: Introduction to Python, FreeCAD scripting tutorial, FreeCAD Scripting Basics, How to install macros, Gui Command, Units Modules: Builtin modules, Workbench creation, Installing more workbenches Meshes: Mesh Scripting, Mesh Module Parts: The Part Module, Topological data scripting, PythonOCC, Mesh to Part Coin scenegraph: The Coin/Inventor scenegraph, Pivy Qt interface: PySide, Using the FreeCAD GUI, Dialog creation Parametric objects: Scripted objects Other: Code snippets, Line drawing function, Embedding FreeCAD, FreeCAD vector math library, Power users hub, Python, Macros, FreeCAD Scripting Basics, Topological data scripting