Draft Polygon

From FreeCAD Documentation
Jump to navigation Jump to search
This page contains changes which are not marked for translation.
Under construction icon-blue.svg
This documentation is work in progress. Please don't mark it as translatable since it will change the next hours and days.
Other languages:
Deutsch • ‎English • ‎Türkçe • ‎español • ‎français • ‎italiano • ‎română • ‎svenska • ‎čeština • ‎русский
Arrow-left.svg Previous: Draft Rectangle.svg Rectangle
Next: BSpline Draft BSpline.svg Arrow-right.svg

Draft Polygon.svg Draft Polygon

Menu location
Drafting → Polygon
Draft, Arch
Default shortcut
Introduced in version
See also


The Draft Polygon.svg Draft Polygon command creates a regular polygon inscribed in a circle. It uses the Draft Linestyle set on the Draft Tray.

A Draft Polygon can be switched from inscribed to circumscribed by changing its DataDraw Mode property.

Draft polygon example.jpg

Regular polygon defined by the center point and the radius


  1. There are several ways to invoke the command:
    • Press the Draft Polygon.svg Draft Polygon button.
    • Select the Drafting → Draft Polygon.svg Polygon option from the menu.
    • Use the keyboard shortcut: P then G.
  2. Adjust the desired number of Sides in the options dialog.
  3. Click the first point in the 3D view, or type coordinates and press the Draft AddPoint.svg Enter point button.
  4. Click another point in the 3D view, or type a Radius value to define the polygon radius.


  • To enter coordinates manually, simply enter the numbers, then press Enter between each X, Y and Z component. You can press the Draft AddPoint.svg Enter point button when you have the desired values to insert the point.
  • Press T or click the checkbox to toggle continue mode. If continue mode is on, the Polygon command will restart after you finish it, allowing you to draw another one without pressing the command button again.
  • Press L or click the checkbox to toggle filled mode. If filled mode is on, the polygon will create a filled face (DataMake Face true); if not, the polygon will not make a face (DataMake Face false).
  • Hold Ctrl while drawing to force snapping your point to the nearest snap location, independently of the distance.
  • Hold Shift while drawing to constrain your second point horizontally or vertically in relation to the first one.
  • Press Esc or the Close button to abort the current command.


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


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:



  • 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.



  • 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.


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 shape is created at the origin and one of its vertices will lie on the X axis.
  • If face is True, the shape will make a face, that is, it will appear filled.


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)


Arrow-left.svg Previous: Draft Rectangle.svg Rectangle
Next: BSpline Draft BSpline.svg Arrow-right.svg