Draft Shape2DView

From FreeCAD Documentation
Jump to navigation Jump to search
This page is a translated version of the page Draft Shape2DView and the translation is 14% complete.
Outdated translations are marked like this.
Other languages:
Deutsch • ‎English • ‎Türkçe • ‎español • ‎français • ‎italiano • ‎română • ‎svenska • ‎čeština • ‎русский

Draft Shape2DView.svg Draft Shape2DView

Draft -> Shape 2D View
Draft, Arch
Standard genväg
Introducerad i version
Se även


The Draft Shape2DView.svg Draft Shape2DView tool produces a 2D projection from a selected 3D solid object such as those created with the Workbench Part.svg Part, Workbench PartDesign.svgPartDesign, and Workbench Arch.svg Arch Workbenches.

The resulting projection is a Draft object and is placed in the 3D view. This object can be displayed on a Workbench TechDraw.svg TechDraw Workbench page, using the TechDraw NewDraft tool. Alternatively, TechDraw has its own tools to create projected views, the TechDraw View.svg TechDraw View and TechDraw NewProjGroup.svg TechDraw NewProjGroup tools; however, these tools are meant for preparing technical drawings, so they create the views only in the drawing page, and not in the 3D view.

Draft Shape2DView example.jpg

Projection of solid shapes into the XY plane


  1. Rotate the view so it reflects the direction of the desired projection. For example, a top view will project the object on the XY plane.
  2. Select a 3D object.
  3. Press the Draft Shape2DView.svg Draft Shape2DView button. If no object is selected, you will be invited to select one.

The projected object will be created below the selected object, lying on the XY plane. It's position can be changed by changing its properties. The projection direction can also be changed after creation with the property editor.

Note: If the selected object is an Arch SectionPlane.svg Arch SectionPlane, the projection will use the contents and direction of that Section plane; in this case, the "Projection" property will be ignored.


There are no options for this tool. Either it works with the selected object or not.


  • DataProjection: specifies the direction of the projection as a vector. For example, (0,0,1) is a projection looking through the Z axis, which would be projected on the XY plane; (1,0,0) is a projection looking through the X axis, which would be projected on the YZ plane; (0,1,0) is a projection looking through the Y axis, which would be projected on the XZ plane. The values can also be negative, in which case the direction of projection is inverted.
  • DataProjection Mode: it can be "Solid", "Individual Faces", "Cutlines", and "Cutfaces".
    • The default projection is "Solid", which projects the entire selected shape.
    • If only some faces of the base object are selected, the "Individual Faces" mode will project only those faces.
    • If the selected object is an Arch SectionPlane, the "Cutlines" mode will project only the edges being cut by the section plane.
    • If the selected object is an Arch SectionPlane, the "Cutfaces" mode will display the cut areas of solids as faces.
  • DataIn Place: if it is true, together with "Cutlines" or "Cutfaces" modes, the resulting projection will appear co-planar with the Arch SectionPlane. introduced in version 0.17
  • DataHiddenLines: if it is true it will show the hidden lines of the projection.
  • DataTessellation: if it is true it will perform tessellation of ellipses and splines, that is, it will represent curves with very fine line segments.
Note: this may be computationally intensive if DataSegment Length is very small.
  • DataSegment Length: specifies the size in millimeters of linear segments if DataTessellation is true.
Note: set a larger value first, and then change it to a smaller value to get better resolution.
  • DataVisible Only: if it is true the projection will be recomputed only if it is visible.


The Draft Shape2DView tool can be used in macros and from the Python console by using the following function:

Shape2DView = makeShape2DView(baseobj, projectionVector=None, facenumbers=[])
  • Creates Shape2DView as a projection of the given baseobj.
    • If facenumbers is given, it is a list of face numbers to be considered for the projection.
  • If a projectionVector is given, it is used; otherwise the default projection is along the Z axis.

The ProjectionMode attribute needs to be overwritten with the desired mode, which can be "Solid", "Individual Faces", "Cutlines", or "Cutfaces".


import FreeCAD, Draft

Box = FreeCAD.ActiveDocument.addObject("Part::Box", "Box")
Box.Length = 2300
Box.Width = 800
Box.Height = 1000

Shape1 = Draft.makeShape2DView(Box)

Shape2 = Draft.makeShape2DView(Box, FreeCAD.Vector(1, -1, 1))

Shape3 = Draft.makeShape2DView(Box, FreeCAD.Vector(-1, 1, 1), [4,5])
Shape3.ProjectionMode = "Individual Faces"