Draft Polygon: Difference between revisions

From FreeCAD Documentation
m (Added {{KEY}} shortcut to {{GuiCommand}})
mNo edit summary
 
(46 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
<translate>
<translate>

<!--T:18-->
<!--T:18-->
{{Docnav
{{Docnav|[[Draft_Ellipse|Ellipse]]|[[Draft_Rectangle|Rectangle]]|[[Draft_Module|Draft]]|IconL=Draft_Ellipse.svg |IconC=Workbench_Draft.svg|IconR=Draft_Rectangle.svg }}
|[[Draft_Rectangle|Rectangle]]
|[[Draft_BSpline|BSpline]]
|[[Draft_Workbench|Draft]]
|IconL=Draft_Rectangle.svg
|IconR=Draft_BSpline.svg
|IconC=Workbench_Draft.svg
}}


<!--T:1-->
<!--T:1-->
{{GuiCommand
{{GuiCommand
|Name=Draft Polygon
|Name=Draft Polygon
|MenuLocation=Draft → Polygon
|MenuLocation=Drafting → Polygon
|Workbenches=[[Draft Module|Draft]], [[Arch Module|Arch]]
|Workbenches=[[Draft_Workbench|Draft]], [[Arch_Workbench|Arch]]
|Shortcut={{KEY|P}} {{KEY|G}}
|Shortcut={{KEY|P}} {{KEY|G}}
|SeeAlso=[[Draft Circle]]
|Version=0.7
|Version=0.7
}}
}}


==Description== <!--T:2-->
==Description== <!--T:21-->

The Polygon tool creates a regular polygon inscribed in a circumference by picking two points, the center and the radius. It uses the [[Draft Linestyle]] set on the [[Draft Tray]].
<!--T:2-->
The [[Image:Draft_Polygon.svg|24px]] '''Draft Polygon''' command creates a regular polygon on the current [[Draft_SelectPlane|working plane]] from a center and a radius. The radius can be defined by picking a point.

<!--T:12-->
A Draft Polygon can be switched from inscribed to circumscribed by changing its {{PropertyData|Draw Mode}} property. The corners of a Draft Polygon can be filleted (rounded) or chamfered by changing its {{PropertyData|Fillet Radius}} or {{PropertyData|Chamfer Size}} respectively.


</translate>
</translate>
Line 21: Line 33:
<translate>
<translate>
<!--T:3-->
<!--T:3-->
{{Caption|Regular polygon defined by the center point and the radius}}
{{Caption|Regular polygon defined by two points, center and radius}}


==Usage== <!--T:4-->
==Usage== <!--T:22-->

# Press the {{Button|[[Image:Draft Polygon.png|16px]] [[Draft Polygon]]}} button, or press {{KEY|P}} then {{KEY|G}} keys.
<!--T:23-->
# Adjust the desired number of sides in the options dialog.
See also: [[Draft_Tray|Draft Tray]], [[Draft_Snap|Draft Snap]] and [[Draft_Constrain|Draft Constrain]].
# 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.

# Click another point on the 3D view, or type a radius value to define the polygon radius.
<!--T:4-->
# There are several ways to invoke the command:
#* Press the {{Button|[[Image:Draft_Polygon.svg|16px]] [[Draft_Polygon|Polygon]]}} button.
#* Select the {{MenuCommand|Drafting → [[Image:Draft_Polygon.svg|16px]] Polygon}} option from the menu.
#* Use the keyboard shortcut: {{KEY|P}} then {{KEY|G}}.
# The {{MenuCommand|Polygon}} task panel opens. See [[#Options|Options]] for more information.
# Adjust the desired number of {{MenuCommand|Sides}}.
# Pick the first point, the center of the polygon, in the [[3D_view|3D view]], or type coordinates and press the {{Button|[[Image:Draft_AddPoint.svg|16px]] Enter point}} button.
# Pick the second point in the [[3D_view|3D view]], or enter a {{MenuCommand|Radius}}.

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

<!--T:25-->
The single character keyboard shortcuts available in the task panel can be changed. See [[Draft_Preferences|Draft Preferences]]. The shortcuts mentioned here are the default shortcuts (for version 0.22).

<!--T:5-->
* To manually enter the coordinates for the center enter the X, Y and Z component, and press {{KEY|Enter}} after each. Or you can press the {{Button|[[Image:Draft_AddPoint.svg|16px]] Enter point}} button when you have the desired values. It is advisable to move the pointer out of the [[3D_view|3D view]] before entering coordinates.
* Press {{KEY|G}} or click the {{MenuCommand|Global}} checkbox to toggle global mode. If global mode is on, coordinates are relative to the global coordinate system, else they are relative to the [[Draft_SelectPlane|working plane]] coordinate system. {{Version|0.20}}
* Press {{KEY|F}} or click the {{MenuCommand|Filled}} checkbox to toggle filled mode. If filled mode is on, the created polygon will have {{PropertyData|Make Face}} set to {{TRUE}} and will have a filled face.
* Press {{KEY|N}} or click the {{MenuCommand|Continue}} checkbox to toggle continue mode. If continue mode is on, the command will restart after finishing, allowing you to continue creating polygons.
* Press {{KEY|S}} to switch [[Draft_Snap|Draft snapping]] on or off.
* Press {{KEY|Esc}} or the {{Button|Close}} button to abort the command.

==Notes== <!--T:26-->


<!--T:11-->
<!--T:11-->
* A Draft Polygon can be edited with the [[Draft_Edit|Draft Edit]] command.
The polygon can be edited by double clicking on the element in the tree view, or by pressing the {{Button|[[Image:Draft Edit.svg|16px]] [[Draft Edit]]}} button. Then you can move the center and radius points to a new position.


<!--T:12-->
==Preferences== <!--T:34-->
The polygon is created inscribed in a circle of the specified radius; it can be switched to circumscribed after creation by changing its draw mode property.


<!--T:13-->
<!--T:35-->
See also: [[Preferences_Editor|Preferences Editor]] and [[Draft_Preferences|Draft Preferences]].
The number of sides of the polygon can also be changed after creation by changing its faces number property.


==Options== <!--T:5-->
<!--T:36-->
* If the {{MenuCommand|Edit → Preferences... → Draft → General → Create Part primitives if possible}} option is checked, the command will create a [[Part_RegularPolygon|Part RegularPolygon]] instead of a Draft Polygon.
* 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 the desired values to insert the point.
* Press {{KEY|T}} or click the checkbox to toggle ''continue'' mode. If continue mode is on, the Polygon tool will restart after you finish it, allowing you to draw another one without pressing the tool button again.
* Press {{KEY|L}} or click the checkbox to toggle ''filled'' mode. If filled mode is on, the polygon will create a filled face ({{PropertyData|Make Face}} {{TRUE}}); if not, the polygon will not make a face ({{PropertyData|Make Face}} {{FALSE}}).
* Hold {{KEY|Ctrl}} while drawing to force [[Draft_Snap|snapping]] your point to the nearest snap location, independently of the distance.
* Hold {{KEY|Shift}} while drawing to [[Draft_Constrain|constrain]] your second point horizontally or vertically in relation to the first one.
* Press {{KEY|Esc}} or the {{Button|Close}} button to abort the current command.


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


===Data=== <!--T:14-->
<!--T:27-->
See also: [[Property_editor|Property editor]].
* {{PropertyData|Radius}}: specifies the radius of the circle that defines the polygon.
* {{PropertyData|Draw Mode}}: specifies if the polygon is inscribed in a circle, or circumscribed around a circle.
* {{PropertyData|Faces Number}}: specifies the number of sides of the polygon.
* {{PropertyData|Chamfer Size}}: specifies the size of the chamfers (straight segments) created on the corners of the polygon.
* {{PropertyData|Fillet Radius}}: specifies the radius of the fillets (arc segments) created on the corners of the polygon.
* {{PropertyData|Make Face}}: specifies if the shape makes a face or not. If it is {{TRUE}} a face is created, otherwise only the perimeter is considered part of the object.


===View=== <!--T:15-->
<!--T:28-->
A Draft Polygon object is derived from a [[Part_Part2DObject|Part Part2DObject]] and inherits all its properties. It also has the following additional properties:
* {{PropertyView|Pattern}}: specifies a [[Draft Pattern]] with which to fill the face of the polygon. This property only works if {{PropertyData|Make Face}} is {{TRUE}}, and if {{PropertyView|Display Mode}} is "Flat Lines".
* {{PropertyView|Pattern Size}}: specifies the size of the [[Draft Pattern]].


==Scripting== <!--T:7-->
===Data=== <!--T:29-->

{{Emphasis|See also:}} [[Draft API]] and [[FreeCAD Scripting Basics]].
<!--T:30-->
{{TitleProperty|Draft}}

<!--T:14-->
* {{PropertyData|Area|Area}}: (read-only) specifies the area of the face of the polygon. The value will be {{value|0.0}} if {{PropertyData|Make Face}} if {{FALSE}}.
* {{PropertyData|Chamfer Size|Length}}: specifies the length of the chamfers at the corners of the polygon.
* {{PropertyData|Draw Mode|Enumeration}}: specifies if the polygon is {{value|inscribed}} in a circle or {{value|circumscribed}} around a circle.
* {{PropertyData|Faces Number|Integer}}: specifies the number of sides of the polygon.
* {{PropertyData|Fillet Radius|Length}}: specifies the radius of the fillets at the corners of the polygon.
* {{PropertyData|Make Face|Bool}}: specifies if the polygon makes a face or not. If it is {{TRUE}} a face is created, otherwise only the perimeter is considered part of the object.
* {{PropertyData|Radius|Length}}: specifies the radius of the circle that defines the polygon.

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

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

<!--T:15-->
* {{PropertyView|Pattern|Enumeration}}: specifies the [[Draft_Pattern|Draft Pattern]] with which to fill the face of the polygon. This property only works if {{PropertyData|Make Face}} is {{TRUE}} and if {{PropertyView|Display Mode}} is {{value|Flat Lines}}.
* {{PropertyView|Pattern Size|Float}}: specifies the size of the [[Draft_Pattern|Draft Pattern]].

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

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


<!--T:16-->
<!--T:16-->
To create a Draft Polygon use the {{incode|make_polygon}} method ({{Version|0.19}}) of the Draft module. This method replaces the deprecated {{incode|makePolygon}} method.
The Polygon tool can be used in [[macros]] and from the [[Python]] console by using the following function:


</translate>
</translate>
{{Code|code=
{{Code|code=
Polygon = makePolygon(nfaces, radius=1, inscribed=True, placement=None, face=None, support=None)
polygon = make_polygon(nfaces, radius=1, inscribed=True, placement=None, face=None, support=None)
}}
}}
<translate>
<translate>
<!--T:8-->
<!--T:8-->
* Creates a {{incode|Polygon}} object with the given number of faces ({{incode|nfaces}}), and based on a circle of {{incode|radius}} in millimeters.
* Creates a {{incode|polygon}} object with the given number of faces ({{incode|nfaces}}), and based on a circle of {{incode|radius}} in millimeters.
* If {{incode|inscribed}} is {{incode|True}}, the polygon is inscribed in the circle, otherwise it will be circumscribed.
* If {{incode|inscribed}} is {{incode|True}}, the polygon is inscribed in the circle, otherwise it will be circumscribed.
** One of the vertices of the polygon will lie on the X axis if no other placement is given.
* If {{incode|placement}} is {{incode|None}} the polygon is created at the origin and one of its vertices will lie on the X axis.
* If a {{incode|placement}} is given, it is used; otherwise the shape is created at the origin.
* If {{incode|face}} is {{incode|True}}, the polygon will make a face, that is, it will appear filled.
* If {{incode|face}} is {{incode|True}}, the shape will make a face, that is, it will appear filled.


<!--T:9-->
<!--T:9-->
Line 82: Line 130:
</translate>
</translate>
{{Code|code=
{{Code|code=
import FreeCAD, Draft
import FreeCAD as App
import Draft


doc = App.newDocument()
Polygon1 = Draft.makePolygon(4, radius=500)
Polygon2 = Draft.makePolygon(5, radius=750)


polygon1 = Draft.make_polygon(4, radius=500)
ZAxis = FreeCAD.Vector(0, 0, 1)
polygon2 = Draft.make_polygon(5, radius=750)
p3 = FreeCAD.Vector(1000, 1000, 0)
place3 = FreeCAD.Placement(p3, FreeCAD.Rotation(ZAxis, 90))


zaxis = App.Vector(0, 0, 1)
Polygon3 = Draft.makePolygon(6, radius=1450, placement=place3)
p3 = App.Vector(1000, 1000, 0)
place3 = App.Placement(p3, App.Rotation(zaxis, 90))

Polygon3 = Draft.make_polygon(6, radius=1450, placement=place3)

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


<!--T:17-->
{{Docnav|[[Draft_Ellipse|Ellipse]]|[[Draft_Rectangle|Rectangle]]|[[Draft_Module|Draft]]|IconL=Draft_Ellipse.svg |IconC=Workbench_Draft.svg|IconR=Draft_Rectangle.svg }}


<!--T:19-->
<!--T:17-->
{{Docnav
{{Draft Tools navi}}
|[[Draft_Rectangle|Rectangle]]
|[[Draft_BSpline|BSpline]]
|[[Draft_Workbench|Draft]]
|IconL=Draft_Rectangle.svg
|IconR=Draft_BSpline.svg
|IconC=Workbench_Draft.svg
}}


<!--T:20-->
{{Userdocnavi}}
</translate>
</translate>
{{Draft Tools navi{{#translation:}}}}
{{clear}}
{{Userdocnavi{{#translation:}}}}

Latest revision as of 10:06, 30 January 2024

Draft Polygon

Menu location
Drafting → Polygon
Workbenches
Draft, Arch
Default shortcut
P G
Introduced in version
0.7
See also
None

Description

The Draft Polygon command creates a regular polygon on the current working plane from a center and a radius. The radius can be defined by picking a point.

A Draft Polygon can be switched from inscribed to circumscribed by changing its DataDraw Mode property. The corners of a Draft Polygon can be filleted (rounded) or chamfered by changing its DataFillet Radius or DataChamfer Size respectively.

Regular polygon defined by two points, center and radius

Usage

See also: Draft Tray, Draft Snap and Draft Constrain.

  1. There are several ways to invoke the command:
    • Press the Polygon button.
    • Select the Drafting → Polygon option from the menu.
    • Use the keyboard shortcut: P then G.
  2. The Polygon task panel opens. See Options for more information.
  3. Adjust the desired number of Sides.
  4. Pick the first point, the center of the polygon, in the 3D view, or type coordinates and press the Enter point button.
  5. Pick the second point in the 3D view, or enter a Radius.

Options

The single character keyboard shortcuts available in the task panel can be changed. See Draft Preferences. The shortcuts mentioned here are the default shortcuts (for version 0.22).

  • To manually enter the coordinates for the center enter the X, Y and Z component, and press Enter after each. Or you can press the Enter point button when you have the desired values. It is advisable to move the pointer out of the 3D view before entering coordinates.
  • Press G or click the Global checkbox to toggle global mode. If global mode is on, coordinates are relative to the global coordinate system, else they are relative to the working plane coordinate system. introduced in version 0.20
  • Press F or click the Filled checkbox to toggle filled mode. If filled mode is on, the created polygon will have DataMake Face set to true and will have a filled face.
  • Press N or click the Continue checkbox to toggle continue mode. If continue mode is on, the command will restart after finishing, allowing you to continue creating polygons.
  • Press S to switch Draft snapping on or off.
  • Press Esc or the Close button to abort the command.

Notes

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

Preferences

See also: Preferences Editor and Draft Preferences.

  • If the Edit → Preferences... → Draft → General → Create Part primitives if possible option is checked, the command will create a Part RegularPolygon instead of a Draft Polygon.

Properties

See also: Property editor.

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

Data

Draft

  • DataArea (Area): (read-only) specifies the area of the face of the polygon. The value will be 0.0 if DataMake Face if false.
  • DataChamfer Size (Length): specifies the length of the chamfers at the corners of the polygon.
  • DataDraw Mode (Enumeration): specifies if the polygon is inscribed in a circle or circumscribed around a circle.
  • DataFaces Number (Integer): specifies the number of sides of the polygon.
  • DataFillet Radius (Length): specifies the radius of the fillets at the corners of the polygon.
  • DataMake Face (Bool): specifies if the polygon makes a face or not. If it is true a face is created, otherwise only the perimeter is considered part of the object.
  • DataRadius (Length): specifies the radius of the circle that defines the polygon.

View

Draft

  • ViewPattern (Enumeration): specifies the Draft Pattern with which to fill the face of the polygon. This property only works if DataMake Face is true and if ViewDisplay Mode is Flat Lines.
  • ViewPattern Size (Float): specifies the size of the Draft Pattern.

Scripting

See also: Autogenerated API documentation and FreeCAD Scripting Basics.

To create a Draft Polygon use the make_polygon method (introduced in version 0.19) of the Draft module. This method replaces the deprecated makePolygon method.

polygon = make_polygon(nfaces, radius=1, inscribed=True, placement=None, face=None, support=None)
  • Creates a polygon object with the given number of faces (nfaces), and based on a circle of radius in millimeters.
  • If inscribed is True, the polygon is inscribed in the circle, otherwise it will be circumscribed.
  • If placement is None the polygon is created at the origin and one of its vertices will lie on the X axis.
  • If face is True, the polygon will make a face, that is, it will appear filled.

Example:

import FreeCAD as App
import Draft

doc = App.newDocument()

polygon1 = Draft.make_polygon(4, radius=500)
polygon2 = Draft.make_polygon(5, radius=750)

zaxis = App.Vector(0, 0, 1)
p3 = App.Vector(1000, 1000, 0)
place3 = App.Placement(p3, App.Rotation(zaxis, 90))

Polygon3 = Draft.make_polygon(6, radius=1450, placement=place3)

doc.recompute()