3D view: Difference between revisions

From FreeCAD Documentation
(Removed a reference to V0.19.)
mNo edit summary
(One intermediate revision by the same user not shown)
Line 20: Line 20:
{{Caption|The [[3D view]] is a component of the FreeCAD [[interface]]. By default it shows a small widget with coordinate axes, and the navigation cube also with coordinate axes; the grid can be displayed and configured by loading the [[Draft Workbench|Draft Workbench]].}}
{{Caption|The [[3D view]] is a component of the FreeCAD [[interface]]. By default it shows a small widget with coordinate axes, and the navigation cube also with coordinate axes; the grid can be displayed and configured by loading the [[Draft Workbench|Draft Workbench]].}}


== Actions == <!--T:6-->
== Context menu ==


The options in the context menu of the 3D view depend on the selected object(s) and the currently active workbench. To display this menu optionally select one or more objects and then right-click in the 3D view.
<!--T:17-->
Since the [[tree view|tree view]] lists most objects that are visible in the 3D view, many of the actions are the same to those that can be executed from the [[tree view|tree view]].

<!--T:7-->
When the default [[Start Workbench|Start Workbench]] is active, right clicking on the 3D view shows only one command:
* {{MenuCommand|[[Mouse_navigation|Navigation styles]]}}: different button styles to use with a 3-button mouse or laptop trackpad.

<!--T:8-->
However, once a [[Workbenches|Workbench]] is loaded, there are additional commands:
* {{MenuCommand|Link actions}}: [[Std LinkMake|Make Link]].
** {{MenuCommand|Make Link group}}: [[Std_LinkMakeGroup|Simple group]], [[Std_LinkMakeGroup|Group with links]], [[Std_LinkMakeGroup|Group with transform links]].
* {{MenuCommand|[[Std_ViewFitAll|Fit all]]}}: pans and zooms the view to fit all objects in the document on the screen.
* {{MenuCommand|[[Std_ViewFitSelection|Fit selection]]}}: pans and zooms the view to tightly fit the currently selected object on the screen.
* {{MenuCommand|[[Std_DrawStyle|Draw style]]}}: as is, flat lines, shaded, wireframe, points, hidden line, no shading.
* {{MenuCommand|[[Std_View_Menu|Standard views]]}}: [[Std_ViewIsometric|isometric]], [[Std_ViewFront|front]], [[Std_ViewTop|top]], [[Std_ViewRight|right]], [[Std_ViewRear|rear]], [[Std_ViewBottom|bottom]], [[Std_ViewLeft|left]], [[Std_ViewRotateLeft|rotate left]], [[Std_ViewRotateRight|rotate right]].
* {{MenuCommand|Measure}}: [[View_Measure_Toggle_All|toggle measurement]], [[View_Measure_Clear_All|clear measurement]].
* {{MenuCommand|Document window}}: [[Std_ViewDockUndockFullscreen|docked]], [[Std_ViewDockUndockFullscreen|undocked]], and [[Std_ViewDockUndockFullscreen|fullscreen]].

<!--T:9-->
Additionally, depending on the workbench and object that is active, other contextual commands may become available.

<!--T:18-->
For example, with the [[Part Workbench|Part Workbench]] and one object selected:
* {{MenuCommand|[[Std_SetAppearance|Appearance]]}}: launches the dialog to change color and sizes of lines and vertices, and color of faces.
* {{MenuCommand|[[Std_ToggleVisibility|Toggle visibility]]}}: makes the object visible or invisible in the 3D view.
* {{MenuCommand|[[Std_ToggleSelectability|Toggle selectability]]}}: makes the object no longer selectable in the 3D view; use again this command to cancel its effect. It sets the object's {{incode|Selectable}} attribute to {{TRUE}} or {{FALSE}}. Change the property by toggling {{PropertyView|Selectable}} in the [[property editor|property editor]].
* {{MenuCommand|[[Std_TreeSelection|Go to selection]]}}: expand the [[tree view|tree view]] to show the selected object in the hierarchy.
* {{MenuCommand|[[Std_RandomColor|Random color]]}}: assigns a random color to the object. It sets the object's {{incode|ShapeColor}} attribute to a tuple {{incode|(r,g,b)}} with tree random floats between 0 and 1. Change the property by modifying {{PropertyView|Shape Color}} in the [[property editor|property editor]].
* {{MenuCommand|[[Std_Delete|Delete]]}}: removes the object from the document, and from the 3D view, by calling the document's {{incode|removeObject()}} method.

<!--T:10-->
Another example, with the [[Draft Workbench|Draft Workbench]] and one object selected, it shows the same commands as with the [[Part Workbench|Part Workbench]], but also:
* {{MenuCommand|Draft}}: object creation and modification commands from the [[Draft Workbench|Draft Workbench]].
* {{MenuCommand|Utilities}}: additional contextual commands provided by the [[Draft Workbench|Draft Workbench]].


== Details == <!--T:11-->
== Details == <!--T:11-->
Line 63: Line 30:


<!--T:13-->
<!--T:13-->
It is possible to interact directly with the 3D view scenegraph from the [[Python console|Python console]] by using the Python library Pivy.
It is possible to interact directly with the 3D view scenegraph from the [[Python_console|Python console]] by using the Python library Pivy.


<!--T:14-->
<!--T:14-->
Line 71: Line 38:
* [[Third_Party_Libraries|Third party libraries]] used by FreeCAD.
* [[Third_Party_Libraries|Third party libraries]] used by FreeCAD.
* [https://grey.colorado.edu/coin3d/index.html Coin3D] C++ documentation.
* [https://grey.colorado.edu/coin3d/index.html Coin3D] C++ documentation.



</translate>
</translate>

Revision as of 19:18, 22 June 2024

Introduction

The 3D view of FreeCAD is an instance of a Coin3D scenegraph that forms the most important window in the interface. Coin3D is a library that implements the OpenInventor 2.1 scene description standard.

Certain properties of the view, like background color, mouse navigation style, and zooming steps, can be configured in the preferences editor.

The 3D view is a component of the FreeCAD interface. By default it shows a small widget with coordinate axes, and the navigation cube also with coordinate axes; the grid can be displayed and configured by loading the Draft Workbench.

Context menu

The options in the context menu of the 3D view depend on the selected object(s) and the currently active workbench. To display this menu optionally select one or more objects and then right-click in the 3D view.

Details

FreeCAD uses the Quarter library to use Coin3D in a Qt environment.

It is possible to interact directly with the 3D view scenegraph from the Python console by using the Python library Pivy.

For more information see the power user documentation: