FreeCAD Logo FreeCAD 1.0
  • English Afrikaans Arabic Belarusian Catalan Czech German Greek Spanish Spanish Basque Finnish Filipino French Galician Croatian Hungarian Indonesian Italian Japanese Kabyle Korean Lithuanian Dutch Norwegian Bokmal Polish Portuguese Portuguese Romanian Russian Slovak Slovenian Serbian Swedish Turkish Ukrainian Valencian Vietnamese Chinese Chinese
  • Features
  • Download
  • Blog
  • Documentation
    Documentation index Getting started Users documentation The FreeCAD manual Workbenches documentation Python coding documentation C++ coding documentation Tutorials Frequently asked questions Privacy policy About FreeCAD
  • Contribute
    How to help Sponsor Report a bug Make a pull request Jobs and funding Contribution guidelines Developers handbook Translations
  • Community
    Code of conduct Forum The FPA GitHub GitLab Codeberg Mastodon Matrix IRC IRC via Webchat Gitter Discord Reddit Twitter Facebook LinkedIn Calendar
  • ♥ Donate

Donate

$
SEPA Information
Please set up your SEPA bank transfer to:
Beneficiary: The FreeCAD project association
IBAN: BE04 0019 2896 4531
BIC/SWIFT: GEBABEBBXXX
Bank agency: BNP Paribas Fortis
Address: Rue de la Station 64, 1360 Perwez, Belgium

While Stripe doesn't support monthly donations, you can still become a sponsor! Simply make a one-time donation equivalent to 12 months of support, and you'll gain access to the corresponding sponsoring tier. It's an easy and flexible way to contribute.

If you are not sure or not able to commit to a regular donation, but still want to help the project, you can do a one-time donation, of any amount.

Choose freely the amount you wish to donate one time only.

You can support FreeCAD by sponsoring it as an individual or organization through various platforms. Sponsorship provides a steady income for developers, allowing the FPA to plan ahead and enabling greater investment in FreeCAD. To encourage sponsorship, we offer different tiers, and unless you choose to remain anonymous, your name or company logo will be featured on our website accordingly.

from 1 USD / 1 EUR per month. You will not have your name displayed here, but you will have helped the project a lot anyway. Together, normal sponsors maintain the project on its feet as much as the bigger sponsors.

from 25 USD / 25 EUR per month. Your name or company name is displayed on this page.

from 100 USD / 100 EUR per month. Your name or company name is displayed on this page, with a link to your website, and a one-line description text.

from 200 USD / 200 EUR per month. Your name or company name and logo displayed on this page, with a link to your website and a custom description text. Companies that have helped FreeCAD early on also appear under Gold sponsors.

Instead of donating each month, you might find it more comfortable to make a one-time donation that, when divided by twelve, would give you right to enter a sponsoring tier. Don't hesitate to do so!

Choose freely the amount you wish to donate each month.

Please inform your forum name or twitter handle as a notein your transfer, or reach to us, so we can give you proper credits!


GuiCommand: Name: Draft Shape2DView MenuLocation: Modification , Shape 2D view Workbenches: Draft_Workbench SeeAlso: TechDraw_ProjectShape

Draft Shape2DView

Description

The Draft Shape2DView command creates 2D projections from selected objects, usually 3D solids or Arch SectionPlanes. The projections are placed in the 3D view.

Draft Shape2DView projections can be displayed on a TechDraw Workbench page using the TechDraw DraftView command. Alternatively the TechDraw Workbench offer its own projection commands. But these create projections that are only displayed on the drawing page and not in the 3D view.


Projection of solid shapes onto the XY plane

Usage

  1. Optionally rotate the 3D view. The camera direction in the 3D view determines the projection vector. For example, a top view will project onto the XY plane. The projection vector is ignored for projections created from Arch SectionPlanes.
  2. Optionally select one or more objects.
  3. There are several ways to invoke the command:
    • Press the Shape 2D view button.
    • Select the Modification → Shape 2D view option from the menu.
  4. If you have not yet selected an object: select an object in the 3D view.
  5. The projected objects are created on the XY plane.

How to produce plans and sections with different linewidths

Drawings with different linewidths for viewed and cut lines can easily be produced by using two shape2Dview objects from a same Arch SectionPlane. One of the shape2Dview objects has its projection mode set to Solid, which renders the viewed lines, and another set to Cut lines or Cut faces to render the cut lines. The two shape2Dviews are then placed at the same location, one on top of the other.

Properties

See also: Property editor.

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

Data

{{TitleProperty|Draft}}

  • Auto Update|Bool: specifies if the projection should be automatically recomputed if the Base object changes. Selecting {{False}} can be useful if there are many Draft Shape2DViews in a document or if they are complex. If set to {{False}} the Std Refresh command must be used to update the projection.

  • Base|Link: specifies the object to be projected.

  • Clip|Bool: if this is True, the contents are clipped to the borders of the section plane, if applicable. This overrides the base object\'s Clip property.

  • Face Numbers|IntegerList: specifies the indices of the faces to be projected. Only works if Projection Mode is {{Value|Individual Faces}}.

  • Fuse Arch|Bool: specifies if BIM objects of the same type and material are fused or not.

  • Hidden Lines|Bool: specifies if hidden lines are shown or not.

  • In Place|Bool: only works if the selected object is an Arch SectionPlane, and Projection Mode is {{Value|Cutlines}} or {{Value|Cutfaces}}, specifies if the projection will appear co-planar with the section plane.

  • Projection|Vector: specifies the direction of the projection. Ignored if Base is an Arch SectionPlane.

  • Projection Mode|Enumeration: specifies the projection mode. The following modes are available:

  • {{Value|Solid}}

    : projects the entire selected object.

-   
    {{Value|Individual Faces}}

    : only projects the faces in the **Face Numbers** list.

-   
    {{Value|Cutlines}}

    : only works if the selected object is an [Arch SectionPlane](wiki-test2.php?gitpage=Arch_SectionPlane), projects only the edges cut by the section plane.

-   
    {{Value|Cutfaces}}

    : only works if the selected object is an [Arch SectionPlane](wiki-test2.php?gitpage=Arch_SectionPlane), projects the areas cut through solids by the section plane as faces.

-   
    {{Value|Solid faces}}

    : projects the entire selected object by cutting faces one by one. Can be used if the {{Value|Solid}} mode gives wrong results.
  • Segment Length|Float: specifies the size in millimeters of linear segments if Tessellation is True.

  • Tessellation|Bool: specifies if tessellation should be performed. Tessellation means that curves are replaced by sequences of line segments. This can be computationally intensive if the Segment Length is too short.

  • Visible Only|Bool: specifies if the projection should only be recomputed if it is visible.

  • Exclusion Points|Vector list: A list of exclusion points. Any edge passing through any of those points will not be drawn.

  • Exclusion Names|String list: A list of object names. Any viewed or cut child object with a name in that list will not be drawn. (v0.21)

View

{{TitleProperty|Draft}}

  • Pattern|Enumeration: not used.

  • Pattern Size|Float: not used.

Scripting

See also: Autogenerated API documentation and FreeCAD Scripting Basics.

To create a 2D projection use the make_shape2dview method ((v0.19) ) of the Draft module. This method replaces the deprecated makeShape2DView method.

shape2dview = make_shape2dview(baseobj, projectionVector=None, facenumbers=[])
  • baseobjis the object to be projected.

  • projectionVectoris the projection vector. If not supplied the Z axis is used.

  • facenumbersis a list of face numbers (0-based). If supplied only these faces are considered.

  • shape2dviewis returned with the created 2D projection.

Change the ProjectionMode property of the created object if required. It can be: "Solid", "Individual Faces", "Cutlines", "Cutfaces" or "Solid faces".

Example:

import FreeCAD as App
import Draft

doc = App.newDocument()

box = doc.addObject("Part::Box", "Box")
box.Length = 2300
box.Width = 500
box.Height = 1000

shape1 = Draft.make_shape2dview(box)

shape2 = Draft.make_shape2dview(box, App.Vector(1, -1, 1))

shape3 = Draft.make_shape2dview(box, App.Vector(-1, 1, 1), [0, 5])
shape3.ProjectionMode = "Individual Faces"

doc.recompute()

⏵ documentation index > Draft > Draft Shape2DView

This page is retrieved from https://github.com/FreeCAD/FreeCAD-documentation/blob/main/wiki/Draft_Shape2DView.md

Get in touch!
Forum GitHub Mastodon Matrix IRC Gitter.im Discord Reddit Twitter Facebook LinkedIn

© The FreeCAD Team. Homepage image credits (top to bottom): ppemawm, r-frank, epileftric, regis, rider_mortagnais, bejant.

This project is supported by: , KiCad Services Corp. and other sponsors

GitHubImprove this page on GitHub