|
Menu location |
---|
TechDraw → TechDraw Views → Insert Projection Group |
Workbenches |
TechDraw |
Default shortcut |
None |
Introduced in version |
- |
See also |
TechDraw View |
The TechDraw ProjectionGroup tool creates a multiview projection of one or more 3D objects, using the traditional first- or third-angle projection. The isometric views of the 4 front corners can also be included.
introduced in version 1.0: The TechDraw View tool can also create a Projection Group. It is advisable to use that tool instead.
Three orthogonal views and one isometric view of a solid object
See TechDraw View, but to invoke the tool select the TechDraw → TechDraw Views → Insert Projection Group option from the menu.
See also: Property editor.
A Projection Group, formally a TechDraw::DrawProjGroup
object, has the properties that are common to all View types. It also has the following additional properties:
Base
LinkList
): Links to the drawable objects to be depicted.XLinkList
): Links to the drawable objects in an external file.Link
): The central view in the group. Normally the Front view.Enumeration
): First Angle
or Third Angle
.Collection
LinkList
): Links to the views in this ProjectionGroup.Distribute
Bool
): If true
, space out individual views automatically. Use false
to position manually.Length
): Horizontal space between views when automatically positioned. Note that Scale and the size of other views in the group also influence the spacing.Length
): Vertical space between views when automatically positioned.The ProjectionGroup as a whole inherits X, Y, ScaleType, Scale and Rotation from the basic View.
Individual Views within the group inherit all part view properties, but the ProjectionGroup object controls the scale of all its member Views.
The RotationVector property of individual Views within the group is deprecated as of v0.19. Use XDirection instead.
Note that the central box displays the current projection direction of the primary view. It cannot be used to change the direction.
See also: Autogenerated API documentation and FreeCAD Scripting Basics.
A Projection Group can be created with macros and from the Python console by using the following functions:
import FreeCAD as App
doc = App.ActiveDocument
cyl = doc.addObject("Part::Cylinder", "Cylinder")
doc.recompute()
page = doc.addObject("TechDraw::DrawPage", "Page")
template = doc.addObject("TechDraw::DrawSVGTemplate", "Template")
template.Template = App.getResourceDir() + "Mod/TechDraw/Templates/A4_LandscapeTD.svg"
page.Template = template
# Toggle the visibility of the page to ensure its width and height are updated (hack):
page.Visibility = False
page.Visibility = True
group = doc.addObject("TechDraw::DrawProjGroup", "ProjGroup")
page.addView(group)
group.Source = [cyl]
group.ProjectionType = "Third Angle"
front_view = group.addProjection("Front") # First projection will become the Anchor.
group.Anchor.Direction = (0, 1, 0)
group.Anchor.RotationVector = (1, 0, 0)
left_view = group.addProjection("Left")
top_view = group.addProjection("Top")
group.X = page.PageWidth / 2
group.Y = page.PageHeight / 2
doc.recompute()
Note: The Projection Group should always be added to the Page, page.addView(group)
, before adding projections to the Group. This allows the Projection Group to use default parameter values derived from the parent page.