Draft Arc 3Points: Difference between revisions

From FreeCAD Documentation
No edit summary
No edit summary
(19 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Page_in_progress}}
<languages/>
<languages/>
<translate>
<translate>
Line 5: Line 6:
{{Docnav
{{Docnav
|[[Draft_Arc|Arc]]
|[[Draft_Arc|Arc]]
|[[Draft_Ellipse|Ellipse]]
|[[Draft_Circle|Circle]]
|[[Draft_Module|Draft]]
|[[Draft_Module|Draft]]
|IconL=Draft_Circle.svg
|IconL=Draft_Arc.svg
|IconR=Draft_Ellipse.svg
|IconR=Draft_Circle.svg
|IconC=Workbench_Draft.svg
|IconC=Workbench_Draft.svg
}}
}}


<!--Shortcut not in menu but does work: FreeCAD 0.19.24219-->
<!--T:2-->
<!--T:2-->
{{GuiCommand
{{GuiCommand
|Name=Draft Arc 3Points
|Name=Draft Arc 3Points
|MenuLocation=Draft → Arc 3 points
|MenuLocation=Drafting → Arc tools → Arc by 3 points
|Workbenches=[[Draft_Module|Draft]], [[Arch_Module|Arch]]
|Workbenches=[[Draft_Module|Draft]], [[Arch_Module|Arch]]
|Shortcut={{KEY|A}} {{KEY|T}}
|Shortcut={{KEY|A}} {{KEY|T}}
|Version=0.19
|Version=0.19
|SeeAlso=[[Draft_Arc|Draft Arc]], [[Draft_Circle|Draft Circle]], [[Draft_Ellipse|Draft Ellipse]]
|SeeAlso=[[Draft_Arc|Draft Arc]], [[Draft_Circle|Draft Circle]]
}}
}}


Line 25: Line 27:


<!--T:4-->
<!--T:4-->
The {{Button|[[Image:Draft_Arc_3Points.svg|16px]] [[Draft_Arc 3Points|Arc 3Points]]}} tool creates a circular arc in the current [[Draft_SelectPlane|work plane]] by entering three points that lie on the circumference; the center and radius are determined from these three points. It uses the [[Draft_Linestyle|Draft Linestyle]] set on the [[Draft_Tray|Draft Tray]].
The [[Image:Draft_Arc_3Points.svg|24px]] [[Draft_Arc_3Points|Draft Arc 3Points]] command creates a circular arc in the current [[Draft_SelectPlane|working plane]] by entering three points that lie on its circumference. The center and radius are determined from these three points. It uses the [[Draft_Linestyle|Draft Linestyle]] set on the [[Draft_Tray|Draft Tray]].

<!--T:17-->
Use the [[Draft Arc|Draft Arc]] tool to create a circular arc by specifying the center, the radius, and the start and end angles. To draw an elliptical arc use [[Draft Ellipse|Draft Ellipse]]. You can also approximate a circular arc by using the [[Draft_BSpline|Draft BSpline]], [[Draft_BezCurve|Draft BezCurve]], and [[Draft_CubicBezCurve|Draft CubicBezCurve]] tools.


</translate>
</translate>
[[Image:Draft_Arc_3Points_example.png|400px]]
[[Image:Draft_Arc_3Points_example.png|400px]]
<translate>
<translate>

<!--T:5-->
<!--T:5-->
{{Caption|Arc defined by three points lying on a circumference}}
{{Caption|Arc defined by three points lying on its circumference}}


==Usage== <!--T:6-->
==Usage== <!--T:6-->


<!--T:7-->
<!--T:7-->
# There are several ways to invoke the command:
# Press the {{Button|[[Image:Draft Arc 3Points.svg|16px]] [[Draft Arc 3Points|Draft Arc 3Points]]}} button, or press {{KEY|A}} then {{KEY|T}} keys.
# Click a first point on the 3D view, or type a [[Draft_Coordinates|coordinate]] and press the {{Button|[[Image:Draft_AddPoint.svg|16px]] [[Draft_AddPoint|add point]]}} button.
#* Press the {{Button|[[Image:Draft_Arc_3Points.svg|16px]] [[Draft_Arc_3Points|Draft Arc 3Points]]}} button.
#* Select the {{MenuCommand|Drafting → Arc tools → [[Image:Draft_Arc_3Points.svg|16px]] Arc by 3 points}} option from the menu.
# Click a second point on the 3D view, or type a [[Draft_Coordinates|coordinate]] and press the {{Button|[[Image:Draft_AddPoint.svg|16px]] [[Draft_AddPoint|add point]]}} button.
#* Use the keyboard shortcut: {{KEY|A}} then {{KEY|T}}.
# Click a third point in the 3D view, or type a [[Draft_Coordinates|coordinate]] and press the {{Button|[[Image:Draft_AddPoint.svg|16px]] [[Draft_AddPoint|add point]]}} button.
# Click the first point in the [[3D_view|3D view]], or type [[Draft_Coordinates|coordinates]] and press the {{Button|[[Image:Draft_AddPoint.svg|16px]] Enter point}} button in the related Line task panel.
# The arc will be created after the third point is given.
# Click the second point in the [[3D_view|3D view]], or type [[Draft_Coordinates|coordinates]] and press the {{Button|[[Image:Draft_AddPoint.svg|16px]] Enter point}} button in the related Line task panel.
# Click the third point in the [[3D_view|3D view]], or type [[Draft_Coordinates|coordinates]] and press the {{Button|[[Image:Draft_AddPoint.svg|16px]] Enter point}} button in the related Line task panel.


==Options== <!--T:8-->
==Options== <!--T:8-->
Line 51: Line 51:
* Press {{KEY|X}}, {{KEY|Y}} or {{KEY|Z}} after one point to constrain the following point on the given axis.
* Press {{KEY|X}}, {{KEY|Y}} or {{KEY|Z}} after one point to constrain the following point on the given axis.
* To enter coordinates manually, simply enter the numbers, then press {{KEY|Enter}} between each X, Y and Z component.
* To enter coordinates manually, simply enter the numbers, then press {{KEY|Enter}} between each X, Y and Z component.
** You can press the {{Button|[[Image:Draft_AddPoint.svg|16px]] [[Draft_AddPoint|add point]]}} button when you have entered the desired values to insert the point.
** You can press the {{Button|[[Image:Draft_AddPoint.svg|16px]] Enter point}} button when you have entered the desired values to insert the point.
* Press {{KEY|R}} or click the checkbox to toggle ''relative'' mode. If relative mode is on, the coordinates of the following point are relative to the previous one; if not, they are absolute, taken from the origin {{incode|(0, 0, 0)}}.
* Press {{KEY|R}} or click the checkbox to toggle ''relative'' mode. If relative mode is on, the coordinates of the following point are relative to the previous one; if not, they are absolute, taken from the origin {{incode|(0, 0, 0)}}.
* Hold {{KEY|Shift}} while drawing to [[Draft_Constrain|constrain]] your next point horizontally or vertically in relation to the previous one.
* Hold {{KEY|Shift}} while drawing to [[Draft_Constrain|constrain]] your next point horizontally or vertically in relation to the previous one.
* Press {{KEY|Esc}} or the {{Button|Close}} button to abort the current command.
* Press {{KEY|Esc}} or the {{Button|Close}} button to abort the command.

==Notes==

* A Draft Arc can be edited with the [[Draft_Edit|Draft Edit]] command.


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


<!--T:10-->
<!--T:10-->
A Draft Arc is in fact a [[Draft_Circle|Draft Circle]] with a {{PropertyData|First Angle}} that is not the same as its {{PropertyData|Last Angle}} and has the same [[Draft_Circle#Properties|properties]].
An Arc object shares all properties from a [[Draft Circle|Draft Circle]], but some properties only make sense for the circle. See [[Draft Arc|Draft Arc]] for more information.


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


<!--T:19-->
<!--T:19-->
{{Emphasis|See also:}} [[Draft API|Draft API]] and [[FreeCAD Scripting Basics|FreeCAD Scripting Basics]].
See also: [https://www.freecadweb.org/api Autogenerated API documentation] and [[FreeCAD Scripting Basics|FreeCAD Scripting Basics]].


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


</translate>
</translate>
Line 79: Line 83:
* If a {{incode|placement}} is given, the center of the circular arc will be moved to this place. See [[Placement|Placement]] for more information.
* If a {{incode|placement}} is given, the center of the circular arc will be moved to this place. See [[Placement|Placement]] for more information.
* If {{incode|face}} is {{incode|True}}, the arc will make a face, that is, it will appear filled.
* If {{incode|face}} is {{incode|True}}, the arc will make a face, that is, it will appear filled.
* If {{incode|support}} is given, it is a {{incode|LinkSubList}}, that is, a list indicating an object, and a subelement of that object. This is used so that the object appears referenced to this support.
* If {{incode|support}} is given, it is a {{incode|LinkSubList}}, that is, a list indicating an object and a subelement of that object. This is used so that the object appears referenced to this support.
:For example, <code>support=[(obj, ("Face1"))]</code>
: For example: <code>support=[(obj, ("Face1"))]</code>.
* If {{incode|map_mode}} is given, it is a string defining a type of mapping, for example, <code>map_mode='FlatFace'</code>, <code>map_mode='ThreePointsPlane'</code>, etc. See [[Part_Attachment|Part Attachment]] for more information.
* If {{incode|map_mode}} is given, it is a string defining a type of mapping, for example: <code>map_mode='FlatFace'</code>, <code>map_mode='ThreePointsPlane'</code>, etc. See [[Part_Attachment|Part Attachment]] for more information.
* If {{incode|primitive}} is {{incode|True}}, the arc created will be a simple [[Part_Feature|Part Feature]], not a complex Draft object.
* If {{incode|primitive}} is {{incode|True}}, the arc created will be a simple [[Part_Feature|Part Feature]], not a complex Draft object.


Line 90: Line 94:
{{Code|code=
{{Code|code=
import FreeCAD as App
import FreeCAD as App
import Draft
import draftobjects.arc_3points as arc3


doc = App.newDocument()
doc = App.newDocument()

points = [App.Vector(0, 0, 0),
points = [App.Vector(0, 0, 0),
App.Vector(5, 10, 0),
App.Vector(5, 10, 0),
App.Vector(10, 0, 0)]
App.Vector(10, 0, 0)]


arc = arc3.make_arc_3points(points)
arc = Draft.make_arc_3points(points)


doc.recompute()
doc.recompute()
Line 103: Line 108:
<translate>
<translate>


<!--T:23-->
{{Emphasis|Note:}} internally this function still uses {{incode|Draft.makeCircle}}, so the object created is the same as the one created by [[Draft_Circle|Circle]] and [[Draft_Arc|Arc]].


<!--T:14-->
<!--T:14-->
{{Docnav
{{Docnav
|[[Draft_Arc|Arc]]
|[[Draft_Arc|Arc]]
|[[Draft_Ellipse|Ellipse]]
|[[Draft_Circle|Circle]]
|[[Draft_Module|Draft]]
|[[Draft_Module|Draft]]
|IconL=Draft_Circle.svg
|IconL=Draft_Arc.svg
|IconR=Draft_Ellipse.svg
|IconR=Draft_Circle.svg
|IconC=Workbench_Draft.svg
|IconC=Workbench_Draft.svg
}}
}}
Line 119: Line 122:
{{Draft Tools navi{{#translation:}}}}
{{Draft Tools navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{clear}}

Revision as of 09:17, 30 March 2021

This documentation is a work in progress. Please don't mark it as translatable since it will change in the next hours and days.

Draft Arc 3Points

Menu location
Drafting → Arc tools → Arc by 3 points
Workbenches
Draft, Arch
Default shortcut
A T
Introduced in version
0.19
See also
Draft Arc, Draft Circle

Description

The Draft Arc 3Points command creates a circular arc in the current working plane by entering three points that lie on its circumference. The center and radius are determined from these three points. It uses the Draft Linestyle set on the Draft Tray.

Arc defined by three points lying on its circumference

Usage

  1. There are several ways to invoke the command:
    • Press the Draft Arc 3Points button.
    • Select the Drafting → Arc tools → Arc by 3 points option from the menu.
    • Use the keyboard shortcut: A then T.
  2. Click the first point in the 3D view, or type coordinates and press the Enter point button in the related Line task panel.
  3. Click the second point in the 3D view, or type coordinates and press the Enter point button in the related Line task panel.
  4. Click the third point in the 3D view, or type coordinates and press the Enter point button in the related Line task panel.

Options

  • Press X, Y or Z after one point to constrain the following point on the given axis.
  • To enter coordinates manually, simply enter the numbers, then press Enter between each X, Y and Z component.
    • You can press the Enter point button when you have entered the desired values to insert the point.
  • Press R or click the checkbox to toggle relative mode. If relative mode is on, the coordinates of the following point are relative to the previous one; if not, they are absolute, taken from the origin (0, 0, 0).
  • Hold Shift while drawing to constrain your next point horizontally or vertically in relation to the previous one.
  • Press Esc or the Close button to abort the command.

Notes

  • A Draft Arc can be edited with the Draft Edit command.

Properties

A Draft Arc is in fact a Draft Circle with a DataFirst Angle that is not the same as its DataLast Angle and has the same properties.

Scripting

See also: Autogenerated API documentation and FreeCAD Scripting Basics.

To create a Draft Arc by 3 points use the make_arc_3points method of the Draft module:

arc = make_arc_3points(points, placement=None, face=False, support=None, map_mode="Deactivated", primitive=False)
  • Creates an arc object from the given points list.
  • If a placement is given, the center of the circular arc will be moved to this place. See Placement for more information.
  • If face is True, the arc will make a face, that is, it will appear filled.
  • If support is given, it is a LinkSubList, that is, a list indicating an object and a subelement of that object. This is used so that the object appears referenced to this support.
For example: support=[(obj, ("Face1"))].
  • If map_mode is given, it is a string defining a type of mapping, for example: map_mode='FlatFace', map_mode='ThreePointsPlane', etc. See Part Attachment for more information.
  • If primitive is True, the arc created will be a simple Part Feature, not a complex Draft object.

Example:

import FreeCAD as App
import Draft

doc = App.newDocument()

points = [App.Vector(0, 0, 0),
          App.Vector(5, 10, 0),
          App.Vector(10, 0, 0)]

arc = Draft.make_arc_3points(points)

doc.recompute()