Draft Fillet: Difference between revisions

From FreeCAD Documentation
(This tool is disabled because the author didn't like the implementation. In the future, this tool may break, and a new tool may replace it. Therefore, to prevent breaking models, we decided to hide it. To enable it look into the file "draftutils/init_tools.py" and uncomment the Draft_Fillet line. However, understand that in the future the Fillet object may break.)
(Button text.)
 
(58 intermediate revisions by 7 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
<translate>
<translate>
{{VeryImportantMessage|This tool is disabled because the author didn't like the implementation. In the future, this tool may break, and a new tool may replace it. Therefore, to prevent breaking models, we decided to hide it. To enable it look into the file "draftutils/init_tools.py" and uncomment the Draft_Fillet line. However, understand that in the future the Fillet object may break.}}


<!--T:1-->
<!--T:1-->
{{Docnav
{{Docnav|[[Draft_Wire|Wire]]|[[Draft_Circle|Circle]]|[[Draft_Module|Draft]]|IconL=Draft_Wire.svg|IconC=Workbench_Draft.svg|IconR=Draft_Circle.svg}}
|[[Draft_Wire|Wire]]
|[[Draft_Arc|Arc]]
|[[Draft_Workbench|Draft]]
|IconL=Draft_Wire.svg
|IconR=Draft_Arc.svg
|IconC=Workbench_Draft.svg
}}


<!--T:2-->
<!--T:2-->
{{GuiCommand
{{GuiCommand
|Name=Draft Fillet
|Name=Draft Fillet
|MenuLocation=Draft → Fillet
|MenuLocation=Drafting → Fillet
|Workbenches=[[Draft Module|Draft]]
|Workbenches=[[Draft_Workbench|Draft]], [[Arch_Workbench|Arch]]
|Shortcut={{KEY|F}} {{KEY|I}}
|SeeAlso=[[Draft Line|Draft Line]], [[Draft Wire|Draft Wire]]
|Version=0.19
|Version=0.19
|SeeAlso=[[Draft_Line|Draft Line]], [[Draft_Wire|Draft Wire]]
}}
}}


Line 18: Line 25:


<!--T:4-->
<!--T:4-->
The [[Draft Fillet|Draft Fillet]] tool creates a fillet, a rounded corner, between to simple [[Draft Line|Draft Lines]]. Alternatively, it can create a chamfer, a straight edge, between those two lines.
The [[Image:Draft_Fillet.svg|24px]] '''Draft Fillet''' command creates a fillet, a rounded corner, or a chamfer, a straight edge, between two [[Draft_Line|Draft Lines]].


</translate>
</translate>
Line 29: Line 36:


<!--T:7-->
<!--T:7-->
# Select two [[Draft Line|Draft Lines]] already placed on the document, and which meet at one point.
# Select two [[Draft_Line|Draft Lines]] that meet in a single point.
# There are several ways to invoke the command:
# Press the {{Button|[[Image:Draft Fillet.svg|16px]] [[Draft Fillet|Draft Fillet]]}} button.
#* Press the {{Button|[[Image:Draft_Fillet.svg|16px]] [[Draft_Fillet|Fillet]]}} button.
# Choose the radius of fillet, and then hit {{Button|Enter}}.
#* Select the {{MenuCommand|Drafting → [[Image:Draft_Fillet.svg|16px]] Fillet}} option from the menu.

#* Use the keyboard shortcut: {{KEY|F}} then {{KEY|I}}.
<!--T:8-->
# Enter the {{MenuCommand|Fillet radius}}. If the {{MenuCommand|Create chamfer}} option is selected this will be the size of the chamfer (the length of the straight edge). Note that the command will not succeed if the radius or the chamfer size is too large for the selected lines.
Notes:
# Optionally check the {{MenuCommand|Delete original objects}} option.
* If the radius is too large that the produced arc would not be tangent to one of the lines, the operation will not succeed.
# Optionally check the {{MenuCommand|Create chamfer}} option.
* Only single lines are supported at the moment; [[Draft Wire|Draft Wires]], that is, lines with multiple points, may not produce the desired result.
# If you have selected one of the two previous options: Click in the {{MenuCommand|Fillet radius}} input box.

# Press {{KEY|Enter}}.
===Alternative creation of fillets and chamfers=== <!--T:9-->

<!--T:10-->
A [[Draft Wire|Draft Wire]] that has at least three points can also create a fillet or a chamfer.

<!--T:11-->
# Select two [[Draft Line|Draft Lines]] already placed on the document, and which meet at one point.
# Press the {{Button|[[Image:Draft Wire.svg|16px]] [[Draft Fillet|Draft Wire]]}} button. This will fuse the two lines into a single Wire object.
# In the [[property editor|property editor]], enter the desired numerical value for {{PropertyData|Fillet Radius}} or {{PropertyData|Chamfer Size}}.

<!--T:12-->
This method works also when joining two different polylines.


==Options== <!--T:13-->
==Options== <!--T:13-->


<!--T:14-->
<!--T:14-->
* Press {{KEY|Esc}} or the {{Button|Close}} button to abort the command.
* Check the "Delete original objects" checkbox if you want to delete the two original lines, and leave only the new fillet object.

* Check the "Create chamfer" checkbox if you want to create a straight edge, instead of a rounded edge, between the two lines.
== Notes == <!--T:30-->
* Press {{KEY|Esc}} or the {{Button|Close}} button to abort the current command.

<!--T:8-->
* A Draft Fillet cannot be edited nor is it linked to the lines that were used to create it.
* Only Draft Lines, that is [[Draft_Wire|Draft Wires]] with only two points, are supported at the moment.
* A [[Draft Wire|Draft Wire]] that has at least three points can be filleted or chamfered by changing its {{PropertyData|Fillet Radius}} or {{PropertyData|Chamfer Size}} respectively. Since [[Draft_Line|Draft Lines]] and [[Draft_Wire|Draft Wires]], can be joined with the [[Draft_Wire|Draft Wire]] command, the [[Draft_Join|Draft Join]] command or the [[Draft_Upgrade|Draft Upgrade]] command, this provides an alternative method for creating fillets and chamfers.


==Properties== <!--T:15-->
==Properties== <!--T:15-->


<!--T:16-->
<!--T:31-->
See also: [[Property_editor|Property editor]].
A Fillet object shares most properties from a [[Draft Wire|Draft Wire]], however, only some of these properties are applicable to the Fillet.

<!--T:32-->
A Draft Fillet object is derived from a [[Part_Part2DObject|Part Part2DObject]] and inherits all its properties. It also has the following additional properties:


===Data=== <!--T:17-->
===Data=== <!--T:17-->

<!--T:33-->
{{TitleProperty|Draft}}


<!--T:18-->
<!--T:18-->
* {{PropertyData|Start}}: (read-only) specifies the start point.
* {{PropertyData|End|VectorDistance}}: (read-only) specifies the end point of the fillet.
* {{PropertyData|End}}: (read-only) specifies the end point.
* {{PropertyData|Fillet Radius|Length}}: (read-only) radius with which the fillet was created.
* {{PropertyData|Length}}: (read-only) specifies the length of the entire segment.
* {{PropertyData|Length|Length}}: (read-only) specifies the total length of the fillet.
* {{PropertyData|Fillet Radius}}: (read-only) radius with which the fillet was created.
* {{PropertyData|Start|VectorDistance}}: (read-only) specifies the start point of the fillet.


===View=== <!--T:19-->
===View=== <!--T:19-->

<!--T:34-->
{{TitleProperty|Draft}}


<!--T:20-->
<!--T:20-->
* {{PropertyView|End Arrow}}: if it is {{TRUE}} it will display a symbol at the last point of the line, so it can be used as an annotation line.
* {{PropertyView|Arrow Size|Length}}: specifies the size of the symbol displayed at the end of the fillet.
* {{PropertyView|Arrow Size}}: specifies the size of the symbol displayed at the end of the line.
* {{PropertyView|Arrow Type|Enumeration}}: specifies the type of symbol displayed at the end of the fillet, which can be {{value|Dot}}, {{value|Circle}}, {{value|Arrow}}, {{value|Tick}} or {{value|Tick-2}}.
* {{PropertyView|Arrow Type}}: specifies the type of symbol displayed at the end of the line, which can be "Dot", "Circle", "Arrow", "Tick", or "Tick-2".
* {{PropertyView|End Arrow|Bool}}: specifies whether to show a symbol at the end of the fillet, so it can be used as an annotation line.
* {{PropertyView|Pattern|Enumeration}}: not used.
* {{PropertyView|Pattern Size|Float}}: not used.


==Scripting== <!--T:21-->
==Scripting== <!--T:21-->



<!--T:28-->
<!--T:28-->
{{Emphasis|See also:}} [[Draft API|Draft API]] and [[FreeCAD Scripting Basics|FreeCAD Scripting Basics]].
See also: [https://freecad.github.io/SourceDoc/ Autogenerated API documentation] and [[FreeCAD Scripting Basics|FreeCAD Scripting Basics]].


<!--T:22-->
<!--T:22-->
To create a Draft Fillet use the {{incode|make_fillet}} method of the Draft module:
The Fillet tool can be used in [[macros|macros]] and from the [[Python|Python]] console by using the following function:

</translate>
</translate>
{{Code|code=
{{Code|code=
Fillet = makeFillet([line1, line2], radius=100, chamfer=False, delete=False)
fillet = make_fillet([line1, line2], radius=100, chamfer=False, delete=False)
}}
}}
<translate>
<translate>
Line 99: Line 111:
<!--T:24-->
<!--T:24-->
Example:
Example:

</translate>
</translate>
{{Code|code=
{{Code|code=
import FreeCAD as App
import FreeCAD as App
import Draft
import Draft

import DraftFillet
doc = App.newDocument()


p1 = App.Vector(0, 0, 0)
p1 = App.Vector(0, 0, 0)
Line 109: Line 123:
p3 = App.Vector(2000, 0, 0)
p3 = App.Vector(2000, 0, 0)


Line1 = Draft.makeLine(p1, p2)
line1 = Draft.make_line(p1, p2)
Line2 = Draft.makeLine(p2, p3)
line2 = Draft.make_line(p2, p3)
App.ActiveDocument.recompute()


doc.recompute()
Fillet = DraftFillet.makeFillet([Line1, Line2], radius=500)

fillet = Draft.make_fillet([line1, line2], radius=500)

doc.recompute()
}}
}}
<translate>
<translate>



<!--T:25-->
<!--T:25-->
{{Docnav
{{Docnav|[[Draft_Wire|Wire]]|[[Draft_Circle|Circle]]|[[Draft_Module|Draft]]|IconL=Draft_Wire.svg|IconC=Workbench_Draft.svg|IconR=Draft_Circle.svg}}
|[[Draft_Wire|Wire]]
|[[Draft_Arc|Arc]]
|[[Draft_Workbench|Draft]]
|IconL=Draft_Wire.svg
|IconR=Draft_Arc.svg
|IconC=Workbench_Draft.svg
}}


</translate>
</translate>
{{Draft Tools navi{{#translation:}}}}
{{Draft Tools navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{clear}}

Latest revision as of 17:00, 3 December 2023

Draft Fillet

Menu location
Drafting → Fillet
Workbenches
Draft, Arch
Default shortcut
F I
Introduced in version
0.19
See also
Draft Line, Draft Wire

Description

The Draft Fillet command creates a fillet, a rounded corner, or a chamfer, a straight edge, between two Draft Lines.

Several fillets and chamfers created between two lines

Usage

  1. Select two Draft Lines that meet in a single point.
  2. There are several ways to invoke the command:
    • Press the Fillet button.
    • Select the Drafting → Fillet option from the menu.
    • Use the keyboard shortcut: F then I.
  3. Enter the Fillet radius. If the Create chamfer option is selected this will be the size of the chamfer (the length of the straight edge). Note that the command will not succeed if the radius or the chamfer size is too large for the selected lines.
  4. Optionally check the Delete original objects option.
  5. Optionally check the Create chamfer option.
  6. If you have selected one of the two previous options: Click in the Fillet radius input box.
  7. Press Enter.

Options

  • Press Esc or the Close button to abort the command.

Notes

  • A Draft Fillet cannot be edited nor is it linked to the lines that were used to create it.
  • Only Draft Lines, that is Draft Wires with only two points, are supported at the moment.
  • A Draft Wire that has at least three points can be filleted or chamfered by changing its DataFillet Radius or DataChamfer Size respectively. Since Draft Lines and Draft Wires, can be joined with the Draft Wire command, the Draft Join command or the Draft Upgrade command, this provides an alternative method for creating fillets and chamfers.

Properties

See also: Property editor.

A Draft Fillet object is derived from a Part Part2DObject and inherits all its properties. It also has the following additional properties:

Data

Draft

  • DataEnd (VectorDistance): (read-only) specifies the end point of the fillet.
  • DataFillet Radius (Length): (read-only) radius with which the fillet was created.
  • DataLength (Length): (read-only) specifies the total length of the fillet.
  • DataStart (VectorDistance): (read-only) specifies the start point of the fillet.

View

Draft

  • ViewArrow Size (Length): specifies the size of the symbol displayed at the end of the fillet.
  • ViewArrow Type (Enumeration): specifies the type of symbol displayed at the end of the fillet, which can be Dot, Circle, Arrow, Tick or Tick-2.
  • ViewEnd Arrow (Bool): specifies whether to show a symbol at the end of the fillet, so it can be used as an annotation line.
  • ViewPattern (Enumeration): not used.
  • ViewPattern Size (Float): not used.

Scripting

See also: Autogenerated API documentation and FreeCAD Scripting Basics.

To create a Draft Fillet use the make_fillet method of the Draft module:

fillet = make_fillet([line1, line2], radius=100, chamfer=False, delete=False)
  • Creates a Fillet object between lines line1 and line2, using radius for the curvature.
  • If chamfer is True it will create a straight edge with the length of radius, instead of a rounded edge.
  • If delete is True it will delete the given line1 and line2, and leave only the new object.

Example:

import FreeCAD as App
import Draft

doc = App.newDocument()

p1 = App.Vector(0, 0, 0)
p2 = App.Vector(1000, 1000, 0)
p3 = App.Vector(2000, 0, 0)

line1 = Draft.make_line(p1, p2)
line2 = Draft.make_line(p2, p3)

doc.recompute()

fillet = Draft.make_fillet([line1, line2], radius=500)

doc.recompute()