|
|
| Menu location |
|---|
| Part → Primitive → Prism |
| Workbenches |
| Part |
| Default shortcut |
| None |
| Introduced in version |
| 0.14 |
| See also |
| Part Primitives |
A Part Prism is a parametric solid that can be created with the
Part Primitives command. It is the result of extruding a regular polygon along a straight path. In the coordinate system defined by its DataPlacement property, the bottom face of the prism lies on the XY-plane with its center at the origin and one of its vertices on the X-axis.
See Part Primitives.

A Part Prism object created with the scripting example below is shown here.
See also: Property View.
A Part Prism object is derived from a Part Feature object and inherits all its properties. It also has the following additional properties:
Attachment
The object has the same attachment properties as a Part Part2DObject.
Prism
IntegerConstraint): The number of sides of the polygon. The default is 6.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.Length): The height of the prism. The default is 10mm.Angle): The angle between the extrusion direction of the prism and its positive Z-axis, measured around its Y-axis. The angle is positive towards its positive X-axis. Valid range: 0° <= value < 90°. The default is 0°.Angle): The angle between the extrusion direction of the prism and its positive Z-axis, measured around its X-axis. The angle is positive towards its positive Y-axis. Valid range: 0° <= value < 90°. The default is 0°.See also: Autogenerated API documentation, Part scripting and FreeCAD Scripting Basics.
A Part Prism can be created with the addObject() method of the document:
prism = FreeCAD.ActiveDocument.addObject("Part::Prism", "myPrism")
"myPrism" is the name for the object.Example:
import FreeCAD as App
doc = App.activeDocument()
prism = doc.addObject("Part::Prism", "myPrism")
prism.Polygon = 5
prism.Circumradius = 10
prism.Height = 50
prism.FirstAngle = 22.5
prism.SecondAngle = 45
prism.Placement = App.Placement(App.Vector(1, 2, 3), App.Rotation(60, 75, 30))
doc.recompute()