Part::Part2DObject is derived from a
Part::Feature, but is specialized for 2D geometry, given that its shape will lie on a plane. This plane is defined by its DataPlacement property (position, normal, and rotation). However, the plane can also be defined by supporting geometrical elements, such as the plane created by three arbitrary vertices, or a face of a solid body.
Part::Part2DObject is defined in the Part Workbench but can be used as the base class for scripted objects in all workbenches that produce 2D geometrical shapes. For example, it is the base object for sketches (
Sketcher::SketchObject) in the Sketcher Workbench, and for most objects created in the Draft Workbench.
Workbenches can add more properties to this basic element to produce an object with complex behavior.
See Property for all property types that scripted objects can have.
- DataMap Mode: "Deactivated" by default. This property determines a plane which the object will use as reference for 2D geometry. Clicking on the ellipsis (three dots), to the right of the entry field opens the Part Attachment task panel that allows selecting the supporting plane by picking different elements in the 3D view. The different modes are: Deactivated, Translate origin, Object's XY, Object's XZ, Object's YZ, Plane face, Tangent to surface, Normal to edge, Frenet NB, Frenet TN, Frenet TB, Concentric, Revolution section, Plane by 3 points, Normal to 3 points, Folding, Inertia 2-3, Align O-N-X, Align O-N-Y, Align O-X-Y, Align O-X-N, Align O-Y-N, Align O-Y-X. See Part Attachment for more information on all mapping modes.
- ViewGrid Size: a float that determines the size of the spacing of the local grid lines in the 3D view.
- ViewGrid Snap: if the grid can be used to snap points.
- ViewGrid Style: Dashed or Light; the style of the grid lines.
- ViewShow Grid: if a grid local to the object will be displayed in the 3D view. This grid is independent of the Draft grid.
- ViewTight Grid: if the local grid will be localized around the origin of the shape, otherwise it will extend itself more.
See Part Feature for the general information.
A Part Part2DObject is created with the
addObject() method of the document.
obj = App.ActiveDocument.addObject("Part::Part2DObject", "Name") obj.Label = "Custom label"