Part RegularPolygon

From FreeCAD Documentation
Revision as of 10:31, 3 March 2022 by FuzzyBot (talk | contribs) (Updating to match new version of source page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎italiano • ‎polski • ‎português do Brasil • ‎română • ‎čeština • ‎русский
Arrow-left.svg Previous: Part Line.svg Line
Next: Builder Part Builder.svg Arrow-right.svg

Part RegularPolygon.svg Part RegularPolygon

Menu location
Part → Create primitives → Regular polygon
Part, OpenSCAD
Default shortcut
Introduced in version
See also
Part Primitives


A Part RegularPolygon.svg Part RegularPolygon is a parametric shape that can be created with the Part Primitives.svg Part Primitives command. In the coordinate system defined by its DataPlacement property, the polygon lies on the XY plane with its center at the origin and one of its vertices on the X axis.

Part RegularPolygon Example.png


See Part Primitives.


Part RegularPolygon from the scripting example

A Part RegularPolygon object created with the scripting example below is shown here.


See also: Property editor.

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



The object has the same attachment properties as a Part Part2DObject.

Regular Polygon

  • DataPolygon (IntegerConstraint): The number of sides of the polygon. The default is 6.
  • DataCircumradius (Length): The radius of the circle that circumscribes the polygon, the distance from the center of the polygon to one of its vertices. The default is 2mm.


See also: Autogenerated API documentation, Part scripting and FreeCAD Scripting Basics.

A Part RegularPolygon can be created with the addObject() method of the document:

poly = FreeCAD.ActiveDocument.addObject("Part::RegularPolygon", "myPolygon")
  • Where "myPolygon" is the name for the object.
  • The function returns the newly created object.


import FreeCAD as App

doc = App.activeDocument()

poly = doc.addObject("Part::RegularPolygon", "myPolygon")
poly.Polygon = 5
poly.Circumradius = 8
poly.Placement = App.Placement(App.Vector(1, 2, 3), App.Rotation(60, 30, 15))


Arrow-left.svg Previous: Part Line.svg Line
Next: Builder Part Builder.svg Arrow-right.svg