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!

ExportPageDXF
BrokenView
TechDraw

TechDraw View

Menu location
TechDraw → TechDraw Views → New View
Workbenches
TechDraw
Default shortcut
None
Introduced in version
-
See also
TechDraw ProjectionGroup, TechDraw SpreadsheetView, TechDraw ArchView, TechDraw Symbol, TechDraw Image

Description

The TechDraw View tool adds a representation of one or more objects to a Drawing page. introduced in 1.0: It can create a Projection Group Item (a single view), a Projection Group, a Spreadsheet View, an Arch View, a Symbol or an Image View.

In 0.21 and below the tool can only create a Part View, which is very similar to a Projection Group Item.

View of a solid box with hidden lines

Usage Projection Group Item and Projection Group

  1. Optionally rotate the 3D View. The camera direction in the 3D View can be used to set the projection direction of the primary view.
  2. Select one or more objects with a DataShape property in the 3D View or Tree View. You can also select Std Parts or Std Groups that contain such objects. When selecting in the 3D View the first selected face can be used to set the projection direction of the primary view. Do not select objects by picking a face in the 3D View if you want to use the current camera direction.
  3. If there are multiple drawing pages in the document: optionally add the desired page to the selection by selecting it in the Tree View.
  4. There are several ways to invoke the tool:
    • Press the New View button.
    • Select the TechDraw → TechDraw Views → New View option from the menu.
  5. If there are multiple drawing pages in the document, and if no page is displayed in the Main View Area and you have not yet selected a page, the Page Chooser dialog box opens:
    1. Select the desired page.
    2. Press the OK button.
  6. The New View task panel opens. introduced in 1.0
  7. Optionally adjust the parameters:
    • Scale: select Page, Automatic or Custom. If the last option is selected: enter the scale numerator and denominator.
    • Direction: use the available buttons to adjust the projection direction and rotation of the primary view:
      • The [#.## #.## #.##] button in the center shows the current projection direction. The initial value depends on the Use 3D camera direction preference. Press the button to adjust the view direction and rotation manually.
      • Press the , , or button to rotate the projection direction 90° around the horizontal or vertical axis of the view.
      • Press the or button to rotate the view 90° around the projection direction.
      • Press the button to set projection direction of the primary view to the standard front view.
      • Press the button to set it to the first selected face, if available, or else to the current camera direction.
    • Secondary Projections: optionally create secondary projections in addition to the primary view. At least one secondary projection has to be specified for all controls in this section to be displayed.
  8. After changing some parameters pressing the Apply button can be required to update the view(s).
  9. Press the OK button.
  10. A Projection Group Item or, if there are one or more secondary projections, a Projection Group is inserted.

New View task panel

Usage other view types

introduced in 1.0

  1. Optionally select a spreadsheet in the Tree View or an Arch section plane in the 3D View or Tree View.
  2. Follow steps 3, 4 and 5 as explained above.
  3. If you have not selected a spreadsheet or an Arch section plane:
    1. A warning dialog box opens.
    2. Check the Do not show this message again checkbox to avoid this dialog box in the future.
    3. Press the OK button.
    4. A file browser opens.
    5. Select an SVG or image file.
  4. A Spreadsheet View, an Arch View, a Symbol or an Image View is inserted.
  5. In case of a Spreadsheet View: adjust the cell range of the view by changing its DataCell Start and DataCell End properties.
  6. In case of a Symbol or Image View: optionally change its DataScale property to adjust its size.

Properties Part View

See also: Property View.

A Part View, formally a TechDraw::DrawViewPart object, has the following properties:

Data

Base

  • DataX (Distance): The view's horizontal position on the page. (1)
  • DataY (Distance): The view's vertical position on the page. (1)
  • DataLock Position (Bool): Prevents Views from being dragged in the Gui when true. The View can still be moved by changing X,Y properties. (1)
  • DataRotation (Angle): Counterclockwise rotation of the View on the page in degrees. (1)
  • DataScale Type (Enumeration): The scale type. Options: (1)
    • Page: Use the Page's scale setting.
    • Automatic: Fit the view to the page.
    • Custom: Use the scale defined by DataScale.
  • DataScale (FloatConstant): The view will be rendered on the page in Scale:1 ratio to the Source. (1)
  • DataCaption (String): Optional short text caption. (1)

Cosmetics

  • Data (Hidden)Cosmetic Vertexes (TechDraw::PropertyCosmeticVertexList)
  • Data (Hidden)Cosmetic Edges (TechDraw::PropertyCosmeticEdgeList)
  • Data (Hidden)Center Lines (TechDraw::PropertyCenterLineList)
  • Data (Hidden)Geom Formats (TechDraw::PropertyGeomFormatList)

HLR Parameters

  • DataCoarse View (Bool): If true, TechDraw will use a polygon approximation to calculate drawing geometry. If false, TechDraw will use a precision algorithm. CoarseView can be much faster for complex models. The quality of the drawing is reduced, since every curve is approximated as a series of short line segments. Vertices are not displayed in CoarseView since each short segment would result in two new Vertices and the display becomes cluttered. Linear Dimensions can be added to a CoarseView, but are unlikely to be useful.
  • DataSmooth Visible (Bool): Visible Smooth lines on/off.
  • DataSeam Visible (Bool): Visible Seam lines on/off.
  • DataIso Visible (Bool): Visible Isometric(u,v) lines on/off.
  • DataHard Hidden (Bool): Hidden lines on/off.
  • DataSmooth Hidden (Bool): Hidden Smooth lines on/off.
  • DataSeam Hidden (Bool): Hidden Seam lines on/off.
  • DataIso Hidden (Bool): Hidden Isometric(u,v) lines on/off.
  • DataIso Count (Integer): Number of Isometric(u,v) lines to draw on each face.
  • DataScrub Count (Integer): The number of times FreeCAD should try to clean the HLR result. introduced in 0.21

Projection

  • DataSource (LinkList): Links to the drawable objects to be depicted.
  • DataXSource (XLinkList): Links to the drawable objects in an external file.
  • DataDirection (Vector): This vector controls the direction from which you are viewing the object. +X is right, -X is left, +Y is rear, -Y is front (looking into the screen), +Z is up and -Z is down. So a Front view is (0,-1,0) and an isometric view is (1,-1,1).
  • DataXDirection (Vector): This vector controls the rotation of the view around the Direction.
  • DataPerspective (Bool): true for perspective projection, false for orthogonal projection.
  • DataFocus (Distance): Distance from camera to projection plane for perspective projections. Needs to be adjusted to fit the object. Too far and the perspective is lost, too close and the object is distorted.

View

Base

  • ViewKeep Label (Bool): Always show view label if true. (1)
  • ViewStack Order (Integer): Over or under lap relative to other views. (1) introduced in 0.21

Broken View

  • ViewBreak Line Style (Enumeration): Set break line style if applicable. introduced in 1.0
  • ViewBreak Line Type (Enumeration): Adjusts the type of break line depiction on broken views if applicable: None, ZigZag or Simple. introduced in 1.0

Decoration

  • ViewArc Center Marks (Bool): Circular arc center marks on/off.
  • ViewCenter Scale (Float): Circular arc center mark size adjustment, if enabled.
  • ViewHoriz Center Line (Bool): Show a horizontal centerline through the view.
  • ViewShow All Edges (Bool): Temporarily show invisible lines.
  • ViewVert Center Line (Bool): Show a vertical centerline through the view.

Faces

  • ViewFace Color (Color): Set color of faces. introduced in 1.0
  • ViewFace Transparency (Percent): Set transparency of faces. introduced in 1.0

Highlight

  • ViewHighlight Adjust (Float): Adjust the rotation of the Detail highlight if applicable.
  • ViewHighlight Line Color (Color): Set the highlight line color if applicable.
  • ViewHighlight Line Style (Enumeration): Set the highlight line style if applicable.

Lines

  • ViewExtra Width (Length): Not implemented yet.
  • ViewHidden Width (Length): The thickness of hidden lines, if enabled.
  • ViewIso Width (Length): The thickness of isometric(u,v) surface lines and Dimension lines.
  • ViewLine Width (Length): The thickness of visible lines. See Line Groups.

Section Line

  • ViewInclude Cut Line (Bool): Show/hide section cut line if applicable. introduced in 1.0
  • ViewSection Line Color (Color): Set the section line color if applicable.
  • ViewSection Line Marks (Bool): Show/hide marks at direction changes for Complex Section if applicable. introduced in 0.21
  • ViewSection Line Style (Enumeration): Set the section line style if applicable.
  • ViewShow Section Line (Bool): Show/hide the section line if applicable.

(1) these properties are common to all View types.

Properties Projection Group Item

See also: Property View.

A Projection Group Item, formally a TechDraw::DrawProjGroupItem object, is derived from a Part View, formally a TechDraw::DrawViewPart object, and inherits all its properties. It also has the following additional properties:

Data

Base

  • DataType (Enumeration): The view type (Front, Left, etc.).
  • DataRotation Vector (Vector): Deprecated use DataXDirection instead.

Properties Projection Group

See TechDraw ProjectionGroup.

Properties Spreadsheet View

See TechDraw SpreadsheetView.

Properties Arch View

See TechDraw ArchView.

Properties Symbol

See TechDraw Symbol.

Properties Image View

See TechDraw Image.

Scripting

See also: Autogenerated API documentation and FreeCAD Scripting Basics.

A Part View can be created with macros and from the Python Console by using the following functions:

import FreeCAD as App

doc = App.ActiveDocument
box = doc.addObject("Part::Box", "Box")

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

view = doc.addObject("TechDraw::DrawViewPart", "View")
page.addView(view)
view.Source = [box]
view.Direction = (0, 0, 1)

view.X = page.PageWidth / 2
view.Y = page.PageHeight / 2

doc.recompute()


ExportPageDXF
BrokenView
TechDraw

This page is retrieved from https://wiki.freecad.org/TechDraw_View

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