|Part Design → Apply a dress-up feature → Fillet|
|Introduced in version|
The PartDesign Fillet tool creates fillets (rounds) on the selected edges of an object. It adds a Fillet object to the document with its corresponding representation in the Tree view.
Add a fillet
- Optionally activate the Body to fillet.
- There are several ways to select edges to fillet:
- Select one or more edges of the Body individually.
- Select one or more faces of the Body to select all their edges.
- Select a feature (usually the last feature) of the Body to select all its edges. introduced in version 0.20
- For a chain of tangentially connected edges only a single edge needs to be selected, the fillet will propagate along the chain.
- There are several ways to invoke the tool:
- If there is no active Body, and there are two or more Bodies in the document, the Active Body Required dialog will open and prompt you to activate one. If there is a single Body it will be activated automatically.
- The Fillet parameters task panel opens. See Options for more information.
- Press the button to finish.
Edit a fillet
- Do one of the following:
- The Fillet parameters task panel opens.See Options for more information.
- Press the button to finish.
- To add edges do one of the following:
- To remove edges do one of the following:
- Press the 3D view. Selected elements are highlighted in purple. button to start deselecting edges and/or faces in the
- Select one or more elements in the list and press the key, or right-click the list and select Remove from the context menu.
- Set the Radius of the fillet.
- Check the Use all edges checkbox to select all edges of the previous feature. This deactivates the selection list and the related buttons. introduced in version 0.20
- PartDesign Fillet should not be confused with Part Fillet. Unless you know what you are doing, Part Fillet should not be used on a PartDesign Body. See Part and PartDesign.
- Fillets cannot completely consume the adjacent faces.
See also: Property editor.
A PartDesign Fillet object is derived from a Part Feature object and inherits all its properties. It also has the following additional properties:
- DataBase (
LinkSub): Link to the selected edges and faces of the parent feature. Can be a link to only the parent feature if DataUse All Edges is
- DataSupport Transform (
truethe filleted shape of the additive/subtractive parent feature will be used when the fillet object is included in a pattern, else only the shape of the fillet itself will be used. The default is
- Data (hidden)Add Sub Shape (
- Data (hidden)Base Feature (
Link): Link to the parent feature.
- Data (hidden)_ Body (
LinkHidden): Link to the parent body.
- DataRadius (
QuantityConstraint): The fillet radius. The default is
- DataUse All Edges (
trueall edges of the feature are filleted, and the edges specified by DataBase are ignored. The default is
- DataRefine (
trueredundant edges are removed from the result of the operation. The default value is determined by the Automatically refine model after sketch-based operation preference. See PartDesign Preferences.
Fillets, chamfers, and other features that operate on solid bodies depend on the underlying OpenCASCADE Technology (OCCT) kernel that FreeCAD uses. The OCCT kernel occasionally has difficulty handling coincident sharp edges, where two faces meet. If this is the case FreeCAD may crash without an explanation.
If run from the terminal, FreeCAD may output a log like this after a crash:
#1 0x7fff63d660ba in BRep_Tool::Curve(TopoDS_Edge const&, TopLoc_Location&, double&, double&) from /usr/lib/x86_64-linux-gnu/libTKBRep.so.7+0x2a #2 0x7fff63d69546 in BRep_Tool::Curve(TopoDS_Edge const&, double&, double&) from /usr/lib/x86_64-linux-gnu/libTKBRep.so.7+0x46 #3 0x7fff71f4fef5 in ChFi3d_Builder::PerformIntersectionAtEnd(int) from /usr/lib/x86_64-linux-gnu/libTKFillet.so.7+0x3b05 #4 0x7fff71f58307 in ChFi3d_Builder::PerformOneCorner(int, bool) from /usr/lib/x86_64-linux-gnu/libTKFillet.so.7+0x1097 #5 0x7fff71ef6218 in ChFi3d_Builder::PerformFilletOnVertex(int) from /usr/lib/x86_64-linux-gnu/libTKFillet.so.7+0x4e8 #6 0x7fff71ef71d1 in ChFi3d_Builder::Compute() from /usr/lib/x86_64-linux-gnu/libTKFillet.so.7+0xe31 #7 0x7fff720ad7c3 in BRepFilletAPI_MakeChamfer::Build() from /usr/lib/x86_64-linux-gnu/libTKFillet.so.7+0x33 #8 0x7fff723be48e in PartDesign::Chamfer::execute() from /usr/lib/freecad-daily/lib/_PartDesign.so+0x60e ...
This output references functions from OCCT libraries. If this type of crash occurs, the problem may need to be reported and solved in OCCT rather than in FreeCAD.
See the forum threads for more information:
Edge numbers are not completely stable, therefore it is advisable that you finish the main design work of your solid body before applying features like fillets and chamfers, otherwise edges could change names and filleted edges would likely become invalid. When the DataUse All Edges property (introduced in version 0.20) is
true there is some protection from this. Because in such cases all the edges of the base object are used and there is no dependence on individual edge names.
Read more in topological naming problem.