Drawing Workbench/pt-br: Difference between revisions
(Updating to match new version of source page) |
(Updating to match new version of source page) |
||
(35 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
<languages/> |
|||
The Drawing module allows you to put your 3D work on paper. That is, to put views of your models in a 2D window and to insert that window in a drawing, for example a sheet with a border, a title and your logo and finally print that sheet. The Drawing module is currently under construction and more or less a technology preview! |
|||
<div class="mw-translate-fuzzy"> |
|||
== GUI Tools == |
|||
{{Docnav |
|||
|[[Draft Workbench/pt-br|Bancada de trabalho Draft]] |
|||
|[[FEM Workbench/pt-br|Bancada de trabalho FEM]] |
|||
|IconL=Workbench_Draft.svg |
|||
|IconC=Online Help Toc.svg |
|||
|IconR=Workbench_FEM.svg |
|||
}} |
|||
</div> |
|||
{{VeryImportantMessage|The '''Drawing Workbench''' is no longer included after version 0.20.<br> |
|||
{{Drawing Tools}} |
|||
The [[TechDraw_Workbench|TechDraw Workbench]] is its more advanced replacement.}} |
|||
[[Image:Workbench_Drawing.svg|thumb|128px|Ícone da bancada de trabalho Drawing ]] |
|||
<span id="Introduction"></span> |
|||
'''Note''' |
|||
== Introdução == |
|||
The [[Draft Module|Draft Module]] has its own [[Draft_Drawing|Draft Drawing]] tool to place Draft objects on paper. It has a couple of extra capabilities over the standard Drawing tools, and supports specific objects like [[Draft Dimension|Draft dimensions]]. |
|||
O módulo Drawing permite que você coloque seu trabalho em 3D no papel. Ou seja, colocar vistas de seus modelos em uma janela 2D e inserir essa janela em um desenho, por exemplo, uma folha com uma borda, um título e seu logotipo e finalmente imprimir essa folha. |
|||
{{TOCright}} |
|||
[[Image:Drawing_extraction.png|800px]] |
|||
[[Image:Drawing_extraction.png|600px]] |
|||
<span id="Tools"></span> |
|||
In the picture you see the main concepts of the Drawing module. The document contains a shape object (Schenkel) which we want to extract to a drawing. Therefore a "Page" is created. A page gets instantiated through a template, in this case the "A3_Landscape" template. The template is an SVG document which can hold your usual page frame, your logo or comply to your presentation standards. |
|||
== Ferramentas == |
|||
Estas são ferramentas para criar, configurar e exportar folhas de desenho 2D |
|||
In this page we can insert one or more views. Each view has a position on the page (Properties X,Y), a scale factor (Property scale) and additional properties. Every time the page or the view or the referenced object changes the page gets regenerated and the page display updated. |
|||
* [[Image:Drawing_New.png|32px]] [[Drawing_Open_SVG/pt-br|Abrir um gráfico vetorial escalável]]: Abre uma folha de desenho previamente salva como um arquivo SVG |
|||
== Scripting == |
|||
* [[Image:Drawing_Landscape_A3.png|32px]] [[Drawing_Landscape_A3/pt-br|Nova folha de desenho A3 orientação paisagem]]: Cria uma folha de desenho a partir do modelo padrão A3 do FreeCAD. |
|||
At the moment the end user(GUI) workflow is very limited, so the scripting API is more interesting. Here follow examples on how to use the scripting API of the drawing module. |
|||
* [[Image:Drawing_View.png|32px]] [[Drawing_View/pt-br|Inserir uma vista]]: Insere uma visão do objeto selecionado na folha de desenho ativo |
|||
Here a script that can easily fill the [[Macro_CartoucheFC]] leaf FreeCAD A3_Landscape. |
|||
* [[Image:Drawing_Annotation.png|32px]] [[Drawing_Annotation|Anotação]]: Acrescenta uma anotação à folha de desenho atual |
|||
=== Simple example === |
|||
* [[Image:Drawing_Clip.png|32px]] [[Drawing_Clip/pt-br|Corte]]: Acrescenta um grupo de recortes à folha de desenho atual |
|||
First of all you need the Part and the Drawing module: |
|||
{{Code|code= |
|||
import FreeCAD, Part, Drawing |
|||
}} |
|||
Create a small sample part |
|||
{{Code|code= |
|||
Part.show(Part.makeBox(100,100,100).cut(Part.makeCylinder(80,100)).cut(Part.makeBox(90,40,100)).cut(Part.makeBox(20,85,100))) |
|||
}} |
|||
Direct projection. The G0 means hard edge, the G1 is tangent continuous. |
|||
{{Code|code= |
|||
Shape = App.ActiveDocument.Shape.Shape |
|||
[visibleG0,visibleG1,hiddenG0,hiddenG1] = Drawing.project(Shape) |
|||
print "visible edges:", len(visibleG0.Edges) |
|||
print "hidden edges:", len(hiddenG0.Edges) |
|||
}} |
|||
Everything was projected on the Z-plane: |
|||
{{Code|code= |
|||
print "Bnd Box shape: X=",Shape.BoundBox.XLength," Y=",Shape.BoundBox.YLength," Z=",Shape.BoundBox.ZLength |
|||
print "Bnd Box project: X=",visibleG0.BoundBox.XLength," Y=",visibleG0.BoundBox.YLength," Z=",visibleG0.BoundBox.ZLength |
|||
}} |
|||
Different projection vector |
|||
{{Code|code= |
|||
[visibleG0,visibleG1,hiddenG0,hiddenG1] = Drawing.project(Shape,App.Vector(1,1,1)) |
|||
}} |
|||
Project to SVG |
|||
{{Code|code= |
|||
resultSVG = Drawing.projectToSVG(Shape,App.Vector(1,1,1)) |
|||
print resultSVG |
|||
}} |
|||
=== The parametric way === |
|||
* [[Image:Drawing_Openbrowser.png|32px]] [[Drawing_Openbrowser|Open Browser]]: Opens a preview of the current sheet in the browser |
|||
Create the body |
|||
{{Code|code= |
|||
import FreeCAD |
|||
import Part |
|||
import Drawing |
|||
* [[Image:Drawing_Orthoviews.png|32px]] [[Drawing_Orthoviews|Ortho Views]]: Automatically creates orthographic views of an object on the current drawing sheet |
|||
# Create three boxes and a cylinder |
|||
App.ActiveDocument.addObject("Part::Box","Box") |
|||
App.ActiveDocument.Box.Length=100.00 |
|||
App.ActiveDocument.Box.Width=100.00 |
|||
App.ActiveDocument.Box.Height=100.00 |
|||
* [[Image:Drawing_Symbol.png|32px]] [[Drawing_Symbol|Symbol]]: Adds the contents of a SVG file as a symbol on the current drawing sheet |
|||
App.ActiveDocument.addObject("Part::Box","Box1") |
|||
App.ActiveDocument.Box1.Length=90.00 |
|||
App.ActiveDocument.Box1.Width=40.00 |
|||
App.ActiveDocument.Box1.Height=100.00 |
|||
* [[Image:Drawing_DraftView.png|32px]] [[Draft_Drawing|Draft View]]: Inserts a special Draft view of the selected object in the current drawing sheet |
|||
App.ActiveDocument.addObject("Part::Box","Box2") |
|||
App.ActiveDocument.Box2.Length=20.00 |
|||
App.ActiveDocument.Box2.Width=85.00 |
|||
App.ActiveDocument.Box2.Height=100.00 |
|||
* [[Image:Drawing_SpreadsheetView.png|32px]] [[Drawing_SpreadsheetView|Spreadsheet View]]: Inserts a view of a selected spreadsheet in the current drawing sheet |
|||
App.ActiveDocument.addObject("Part::Cylinder","Cylinder") |
|||
App.ActiveDocument.Cylinder.Radius=80.00 |
|||
App.ActiveDocument.Cylinder.Height=100.00 |
|||
App.ActiveDocument.Cylinder.Angle=360.00 |
|||
# Fuse two boxes and the cylinder |
|||
App.ActiveDocument.addObject("Part::Fuse","Fusion") |
|||
App.ActiveDocument.Fusion.Base = App.ActiveDocument.Cylinder |
|||
App.ActiveDocument.Fusion.Tool = App.ActiveDocument.Box1 |
|||
* [[Image:Drawing_Save.png|32px]] [[Drawing_Save|Save sheet]]: Saves the current sheet as a SVG file |
|||
App.ActiveDocument.addObject("Part::Fuse","Fusion1") |
|||
App.ActiveDocument.Fusion1.Base = App.ActiveDocument.Box2 |
|||
App.ActiveDocument.Fusion1.Tool = App.ActiveDocument.Fusion |
|||
# Cut the fused shapes from the first box |
|||
App.ActiveDocument.addObject("Part::Cut","Shape") |
|||
App.ActiveDocument.Shape.Base = App.ActiveDocument.Box |
|||
App.ActiveDocument.Shape.Tool = App.ActiveDocument.Fusion1 |
|||
# Hide all the intermediate shapes |
|||
Gui.ActiveDocument.Box.Visibility=False |
|||
Gui.ActiveDocument.Box1.Visibility=False |
|||
Gui.ActiveDocument.Box2.Visibility=False |
|||
Gui.ActiveDocument.Cylinder.Visibility=False |
|||
Gui.ActiveDocument.Fusion.Visibility=False |
|||
Gui.ActiveDocument.Fusion1.Visibility=False |
|||
}} |
|||
Insert a Page object and assign a template |
|||
{{Code|code= |
|||
App.ActiveDocument.addObject('Drawing::FeaturePage','Page') |
|||
App.ActiveDocument.Page.Template = App.getResourceDir()+'Mod/Drawing/Templates/A3_Landscape.svg' |
|||
}} |
|||
Create a view on the "Shape" object, define the position and scale and assign it to a Page |
|||
{{Code|code= |
|||
App.ActiveDocument.addObject('Drawing::FeatureViewPart','View') |
|||
App.ActiveDocument.View.Source = App.ActiveDocument.Shape |
|||
App.ActiveDocument.View.Direction = (0.0,0.0,1.0) |
|||
App.ActiveDocument.View.X = 10.0 |
|||
App.ActiveDocument.View.Y = 10.0 |
|||
App.ActiveDocument.Page.addObject(App.ActiveDocument.View) |
|||
}} |
|||
Create a second view on the same object but this time the view will be rotated by 90 degrees. |
|||
{{Code|code= |
|||
App.ActiveDocument.addObject('Drawing::FeatureViewPart','ViewRot') |
|||
App.ActiveDocument.ViewRot.Source = App.ActiveDocument.Shape |
|||
App.ActiveDocument.ViewRot.Direction = (0.0,0.0,1.0) |
|||
App.ActiveDocument.ViewRot.X = 290.0 |
|||
App.ActiveDocument.ViewRot.Y = 30.0 |
|||
App.ActiveDocument.ViewRot.Scale = 1.0 |
|||
App.ActiveDocument.ViewRot.Rotation = 90.0 |
|||
App.ActiveDocument.Page.addObject(App.ActiveDocument.ViewRot) |
|||
}} |
|||
Create a third view on the same object but with an isometric view direction. The hidden lines are activated too. |
|||
{{Code|code= |
|||
App.ActiveDocument.addObject('Drawing::FeatureViewPart','ViewIso') |
|||
App.ActiveDocument.ViewIso.Source = App.ActiveDocument.Shape |
|||
App.ActiveDocument.ViewIso.Direction = (1.0,1.0,1.0) |
|||
App.ActiveDocument.ViewIso.X = 335.0 |
|||
App.ActiveDocument.ViewIso.Y = 140.0 |
|||
App.ActiveDocument.ViewIso.ShowHiddenLines = True |
|||
App.ActiveDocument.Page.addObject(App.ActiveDocument.ViewIso) |
|||
}} |
|||
Change something and update. The update process changes the view and the page. |
|||
{{Code|code= |
|||
App.ActiveDocument.View.X = 30.0 |
|||
App.ActiveDocument.View.Y = 30.0 |
|||
App.ActiveDocument.View.Scale = 1.5 |
|||
App.ActiveDocument.recompute() |
|||
}} |
|||
=== Accessing the bits and pieces === |
|||
* [[Drawing_ProjectShape|Project Shape]]: Creates a projection of the selected object (Source) in the 3D view. |
|||
Get the SVG fragment of a single view |
|||
{{Code|code= |
|||
ViewSVG = App.ActiveDocument.View.ViewResult |
|||
print ViewSVG |
|||
}} |
|||
Get the whole result page (it's a file in the document's temporary directory, only read permission) |
|||
{{Code|code= |
|||
print "Resulting SVG document: ",App.ActiveDocument.Page.PageResult |
|||
file = open(App.ActiveDocument.Page.PageResult,"r") |
|||
print "Result page is ",len(file.readlines())," lines long" |
|||
}} |
|||
Important: free the file! |
|||
{{Code|code= |
|||
del file |
|||
}} |
|||
Insert a view with your own content: |
|||
{{Code|code= |
|||
App.ActiveDocument.addObject('Drawing::FeatureView','ViewSelf') |
|||
App.ActiveDocument.ViewSelf.ViewResult = """<g id="ViewSelf" |
|||
stroke="rgb(0, 0, 0)" |
|||
stroke-width="0.35" |
|||
stroke-linecap="butt" |
|||
stroke-linejoin="miter" |
|||
transform="translate(30,30)" |
|||
fill="#00cc00" |
|||
> |
|||
* {{Emphasis|Note:}} the [[Draft Drawing|Draft Drawing]] tool is used with [[Draft Workbench|Draft objects]]. It has some additional capabilities over the Drawing tools, and supports specific objects like [[Draft Dimension|Draft dimensions]]. |
|||
<ellipse cx="40" cy="40" rx="30" ry="15"/> |
|||
</g>""" |
|||
App.ActiveDocument.Page.addObject(App.ActiveDocument.ViewSelf) |
|||
App.ActiveDocument.recompute() |
|||
== Workflow == |
|||
del ViewSVG |
|||
The document contains a 3D shape object (leg) from which we want to produce a drawing. Therefore a "Page" is created. A page it's instantiated from a template, for example, the "A3_Landscape" template. The template is an [[SVG|SVG]] document which can hold a page frame, a logo, and other elements. |
|||
}} |
|||
That leads to the following result: |
|||
Nesta página, podemos inserir uma ou mais vistas. Cada vista tem uma posição na página, um fator de escala e propriedades adicionais. Cada vez que a página ou a vista ou o objeto referenciado muda, a página é regenerada e a exibição da página é atualizada. |
|||
[[Image:DrawingScriptResult.jpg|800px]] |
|||
== Scripting == |
|||
=== General Dimensioning and Tolerancing === |
|||
No momento, o fluxo de trabalho da interface gráfica do usuário é muito limitado, por isso a API de scripting é mais interessante. |
|||
Drawing dimensions an tolerances are still under development but you can get some basic functionality with a bit of work. |
|||
See the [[Drawing API example]] page for a description of the functions used to create drawing pages and views. |
|||
First you need to get the gdtsvg python module from here (WARNING: This could be broken at any time!): |
|||
<span id="Templates"></span> |
|||
https://github.com/jcc242/FreeCAD |
|||
== Modelos == |
|||
FreeCAD comes bundled with a set of default templates, but you can find more on the [[Drawing templates]] page. |
|||
To get a feature control frame, try out the following: |
|||
{{Code|code= |
|||
import gdtsvg as g # Import the module, I like to give it an easy handle |
|||
ourFrame = g.ControlFrame("0","0", g.Perpendicularity(), ".5", g.Diameter(), g.ModifyingSymbols("M"), "A", |
|||
g.ModifyingSymbols("F"), "B", g.ModifyingSymbols("L"), "C", g.ModifyingSymbols("I")) |
|||
}} |
|||
Here is a good breakdown of the contents of a feature control frame: http://www.cadblog.net/adding-geometric-tolerances.htm |
|||
== Extending the Drawing Module == |
|||
The parameters to pass to control frame are: |
|||
#X-coordinate in SVG-coordinate system (type string) |
|||
#Y-coordinate in SVG-coordinate system (type string) |
|||
#The desired geometric characteristic symbol (tuple, svg string as first, width of symbol as second, height of symbol as third) |
|||
#The tolerance (type string) |
|||
#(optional) The diameter symbol (tuple, svg string as first, width of symbol as second, height of symbol as third) |
|||
#(optional) The condition modifying material (tuple, svg string as first, width of symbol as second, height of symbol as third) |
|||
#(optional) The first datum (type string) |
|||
#(optional) The first datum's modifying condition (tuple, svg string as first, width of symbol as second, height of symbol as third) |
|||
#(optional) The second datum (type string) |
|||
#(optional) The second datum's modifying condition (tuple, svg string as first, width of symbol as second, height of symbol as third) |
|||
#(optional) The third datum (type string) |
|||
#(optional) The third datum's material condition (tuple, svg string as first, width of symbol as second, height of symbol as third) |
|||
Some notes on the programming side of the drawing module will be added to the [[Drawing Documentation]] page. This is to help quickly understand how the drawing module works, enabling programmers to rapidly start programming for it. |
|||
The ControlFrame function returns a type containing (svg string, overall width of control frame, overall height of control frame)''' |
|||
== Tutorials == |
|||
To get a dimension, try out the following: |
|||
* [[Drawing_tutorial|Drawing tutorial]] |
|||
{{Code|code= |
|||
* [[Drawing_Template_HowTo|Drawing Template HowTo]] |
|||
import gdtsvg |
|||
ourDimension = linearDimension(point1, point2, textpoint, dimensiontext, linestyle=getStyle("visible"), |
|||
arrowstyle=getStyle("filled"), textstyle=getStyle("text") |
|||
}} |
|||
Inputs for linear dimension are: |
|||
#point1, an (x,y) tuple with svg-coordinates, this is one of the points you would like to dimension between |
|||
#point2, an (x,y) tuple with svg-coordinates, this is the second point you would like to dimension between |
|||
#textpoint, an (x,y) tuple of svg-coordinates, this is where the text of your dimension will be |
|||
#dimensiontext, a string containing the text you want the dimension to say |
|||
#linestyle, a string containing svg (i.e. css) styles, using the getStyle function to retrieve a preset string, for styling the how the lines look |
|||
#arrowstyle, a string containing svg (i.e. css) styles, using the getStyle function to retrieve a preset string, for styling how the arrows look |
|||
#textstyle, a string containing svg (i.e. css) styles, using the getStyle function to retrieve a preset string, for styling how the text looks |
|||
== Macros == |
|||
With those two, you can proceed as above for displaying them on the drawing page. This module is very buggy and can be broken at any given moment, bug reports are welcome on the github page for now, or contact jcc242 on the forums if you post a bug somewhere else. |
|||
* {{MacroLink|Icon=Macro_Automatic_drawing.png|Macro_Automatic_drawing|Macro Automatic drawing}}: Allows the user to get the view of his object in a drawing with 4 different position (front,top,iso,right). Needs some modification to be perfectly effective. |
|||
== Templates == |
|||
* {{MacroLink|Icon=Macro_CartoucheFC.png|Macro_CartoucheFC|Macro CartoucheFC}}: This GUI macro to fill simply all fields of the cartridge of the plan implementation worksheet FreeCAD, the format of the date and the symbol of the projection mode adapt to the EU region or US selected. |
|||
FreeCAD comes bundled with a set of default templates, but you can find more on the [[Drawing templates]] page. |
|||
* {{MacroLink|Icon=Macro_CartoucheFC_2.png|Macro_CartoucheFC_2|Macro CartoucheFC 2}}: This GUI macro to fill simply all fields of the cartridge '''model 2''' of the plan implementation worksheet FreeCAD. |
|||
== Extending the Drawing Module == |
|||
* {{MacroLink|Icon=Macro_CartoucheFC_Full.png|Macro_CartoucheFC_Full|Macro CartoucheFC Full}}: This GUI macro to fill simply all fields of the cartridge [[Misc_templates_Full|Misc templates Full]] of the plan implementation worksheet FreeCAD, the format of the date and the symbol of the projection mode adapt to the EU region or US selected. |
|||
Some notes on the programming side of the drawing module will be added to the [[Drawing Documentation]] page. This is to help quickly understand how the drawing module works, enabling programmers to rapidly start programming for it. |
|||
* {{MacroLink|Icon=Macro_Corner_shapes_wizard.png|Macro_Corner_shapes_wizard/update|Macro Corner shapes wizard/update}}: Pops up a dialog asking for the dimensions of your corner piece, then creates the object in the document and creates a page view with top, front and lateral views of the piece. |
|||
== Tutorials == |
|||
* [[Drawing_tutorial|Drawing tutorial]] |
|||
== External links == |
|||
* [https://www.youtube.com/watch?v=1Hm5Zyjmjac Intro to mechanical drawing on Youtube - by Normal Universe] |
|||
{{docnav/pt-br|Part Module/pt-br|Raytracing Module/pt-br}} |
|||
[[Category:User_Documentation/pt-br]] |
|||
<div class="mw-translate-fuzzy"> |
|||
<languages/> |
|||
{{Docnav |
|||
|[[Draft Workbench/pt-br|Bancada de trabalho Draft]] |
|||
|[[FEM Workbench/pt-br|Bancada de trabalho FEM]] |
|||
|IconL=Workbench_Draft.svg |
|||
|IconC=Online Help Toc.svg |
|||
|IconR=Workbench_FEM.svg |
|||
}} |
|||
</div> |
|||
{{Drawing Tools navi{{#translation:}}}} |
|||
{{Userdocnavi{{#translation:}}}} |
|||
[[Category:Obsolete Workbenches{{#translation:}}]] |
Latest revision as of 08:47, 8 July 2023
The TechDraw Workbench is its more advanced replacement.
Introdução
O módulo Drawing permite que você coloque seu trabalho em 3D no papel. Ou seja, colocar vistas de seus modelos em uma janela 2D e inserir essa janela em um desenho, por exemplo, uma folha com uma borda, um título e seu logotipo e finalmente imprimir essa folha.
Ferramentas
Estas são ferramentas para criar, configurar e exportar folhas de desenho 2D
- Abrir um gráfico vetorial escalável: Abre uma folha de desenho previamente salva como um arquivo SVG
- Nova folha de desenho A3 orientação paisagem: Cria uma folha de desenho a partir do modelo padrão A3 do FreeCAD.
- Inserir uma vista: Insere uma visão do objeto selecionado na folha de desenho ativo
- Anotação: Acrescenta uma anotação à folha de desenho atual
- Corte: Acrescenta um grupo de recortes à folha de desenho atual
- Open Browser: Opens a preview of the current sheet in the browser
- Ortho Views: Automatically creates orthographic views of an object on the current drawing sheet
- Symbol: Adds the contents of a SVG file as a symbol on the current drawing sheet
- Draft View: Inserts a special Draft view of the selected object in the current drawing sheet
- Spreadsheet View: Inserts a view of a selected spreadsheet in the current drawing sheet
- Save sheet: Saves the current sheet as a SVG file
- Project Shape: Creates a projection of the selected object (Source) in the 3D view.
- Note: the Draft Drawing tool is used with Draft objects. It has some additional capabilities over the Drawing tools, and supports specific objects like Draft dimensions.
Workflow
The document contains a 3D shape object (leg) from which we want to produce a drawing. Therefore a "Page" is created. A page it's instantiated from a template, for example, the "A3_Landscape" template. The template is an SVG document which can hold a page frame, a logo, and other elements.
Nesta página, podemos inserir uma ou mais vistas. Cada vista tem uma posição na página, um fator de escala e propriedades adicionais. Cada vez que a página ou a vista ou o objeto referenciado muda, a página é regenerada e a exibição da página é atualizada.
Scripting
No momento, o fluxo de trabalho da interface gráfica do usuário é muito limitado, por isso a API de scripting é mais interessante.
See the Drawing API example page for a description of the functions used to create drawing pages and views.
Modelos
FreeCAD comes bundled with a set of default templates, but you can find more on the Drawing templates page.
Extending the Drawing Module
Some notes on the programming side of the drawing module will be added to the Drawing Documentation page. This is to help quickly understand how the drawing module works, enabling programmers to rapidly start programming for it.
Tutorials
Macros
- Macro Automatic drawing: Allows the user to get the view of his object in a drawing with 4 different position (front,top,iso,right). Needs some modification to be perfectly effective.
- Macro CartoucheFC: This GUI macro to fill simply all fields of the cartridge of the plan implementation worksheet FreeCAD, the format of the date and the symbol of the projection mode adapt to the EU region or US selected.
- Macro CartoucheFC 2: This GUI macro to fill simply all fields of the cartridge model 2 of the plan implementation worksheet FreeCAD.
- Macro CartoucheFC Full: This GUI macro to fill simply all fields of the cartridge Misc templates Full of the plan implementation worksheet FreeCAD, the format of the date and the symbol of the projection mode adapt to the EU region or US selected.
- Macro Corner shapes wizard/update: Pops up a dialog asking for the dimensions of your corner piece, then creates the object in the document and creates a page view with top, front and lateral views of the piece.
External links
- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, Docker, AppImage, Ubuntu Snap
- Basics: About FreeCAD, Interface, Mouse navigation, Selection methods, Object name, Preferences, Workbenches, Document structure, Properties, Help FreeCAD, Donate
- Help: Tutorials, Video tutorials
- Workbenches: Std Base, Arch, Assembly, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Surface, TechDraw, Test Framework
- Hubs: User hub, Power users hub, Developer hub