Part JoinCutout
Appearance
|
|
| Menu location |
|---|
| Part → Join → Cutout Shape |
| Workbenches |
| Part |
| Default shortcut |
| None |
| Introduced in version |
| 0.16 |
| See also |
| Part JoinConnect, Part JoinEmbed, Part Boolean, Part Thickness |
Description[edit | edit source]
The Part JoinCutout tool creates a cutout in a walled object (e.g. a pipe) to fit another walled object.
Usage[edit | edit source]
- Select the base object first, then the object to define the cutout. The order of selection is important. It is enough to select one sub-shape of each object (e.g. faces).
- There are several ways to invoke the tool:
- Press the
Cutout Shape button.
- Select the Part → Join →
Cutout Shape option from the menu.
- Press the
- A Part JoinFeature object is created, with Mode set to 'Cutout'. Original objects are hidden, and the result of cutting is shown in the 3D View.
Properties[edit | edit source]
Base
- DataBase: Reference to base object (the one to make the cutout in). The object should be a single solid.
- DataRefine: Sets whether to apply Refine operation or not, to the final shape. The default value is determined by a 'Automatically refine model after boolean operation' checkbox in Part/Part Design Preferences.
- DataTolerance: "fuzziness" value. This is an extra tolerance to apply when searching for intersections, in addition to tolerances stored in the input shapes.
- DataTool: Reference to tool object (the object that is to fit into the cutout). The object can be a single solid, or a valid compound of solids.
Example[edit | edit source]
- Create a pipe by applying thickness to a cylinder:

- Create another, smaller diameter pipe, and place it so that it pierces the wall of the first pipe:

- Select the first pipe, then the second pipe (order of selection is important), and click the 'Cutout Shape' option from the Join tools dropdown toolbar button.

Algorithm[edit | edit source]
The algorithms behind Join tools are quite simple, and understanding them is important to use the tools correctly.
1. Base object is boolean-cut with Tool object. The resulting shape is a set (compound) of non-intersecting solids (typically, two).
2. The resulting compound is filtered: only the largest solid is kept.
3. If Refine property is true, the resulting shape is refined.
Notes[edit | edit source]
- If after step 1, the object remains in one piece, the result of Cutout will be equivalent to boolean cut of Base with Tool.
- Now, the tool will produce unexpected result, if a compound is supplied as Base. This may be changed in the future.
- Because the largest piece is determined by comparing volumes of pieces, the tool can only work with solids. This may be changed in the future.
Scripting[edit | edit source]
The Join tools can by used in macros and from the Python Console by using the following function:
JoinFeatures.makePartJoinFeature(name = 'Cutout', mode = 'Cutout')
- Creates an empty Cutout feature (or other Join feature, depending on mode passed). The properties Base and Tool must be assigned explicitly, afterwards.
- Returns the newly created object.
Example:
import JoinFeatures
j = JoinFeatures.makePartJoinFeature(name = 'Cutout', mode = 'Cutout' )
j.Base = FreeCADGui.Selection.getSelection()[0]
j.Tool = FreeCADGui.Selection.getSelection()[1]
The tool itself is implemented in Python, see /Mod/Part/JoinFeatures.py (Github link) under where FreeCAD is installed.
- Creation and modification: New Sketch, Extrude, Revolve, Mirror, Scale, Fillet, Chamfer, Face From Wires, Ruled Surface, Loft, Sweep, Section, Cross-Sections, 3D Offset, 2D Offset, Thickness, Project on Surface, Appearance per Face
- Boolean: Compound, Explode Compound, Compound Filter, Boolean Operation, Cut, Union, Intersection, Connect Shapes, Embed Shapes, Cutout Shape, Boolean Fragments, Slice Apart, Slice to Compound, Boolean XOR, Check Geometry, Defeaturing
- Other tools: Box Selection, Shape From Mesh, Points From Shape, Convert to Solid, Reverse Shapes, Simple Copy, Transformed Copy, Shape Element Copy, Refine Shape, Set Tolerance, Persistent Section Cut, Attachment
- Preferences: Preferences, Fine tuning
- 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, Assembly, BIM, CAM, Draft, FEM, Inspection, Material, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Surface, TechDraw, Test Framework
- Hubs: User hub, Power users hub, Developer hub