Skip to content

Commit

Permalink
Initial pages commit
Browse files Browse the repository at this point in the history
  • Loading branch information
yorikvanhavre committed Sep 3, 2021
1 parent bfd7a45 commit 86d38cd
Show file tree
Hide file tree
Showing 15,758 changed files with 2,005,749 additions and 0 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
15 changes: 15 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,20 @@ The general idea is to keep allowing users to use the wiki to edit and add conte
4. Better versioning and matching to FreeCAD versions
5. Better handling of translations

Further goals:

* Create a Help workbench with a md viewer
* [QTextDocument](https://doc.qt.io/qtforpython-5/PySide2/QtGui/QTextDocument.html#PySide2.QtGui.PySide2.QtGui.QTextDocument.setMarkdown) supports markdown (but might be problems with online images)
* Maybe better to use an HTML viewer and convert the markdown content?
* Allow the help workbench to access both online or offline (local files) versions
* Allow the help workbench to access any translated version
* Tie the FreeCAD help system to the Help workbench
* Tie the FreeCAD what's this system to the Help workbench
* Allow to export parts of the documentation to other formats (PDF, ePub,...)



Read on to the [Documentation home page](wiki/main_page.md)



Binary file added __pycache__/migrate.cpython-39.pyc
Binary file not shown.
29 changes: 29 additions & 0 deletions wiki/0.20_Development_Cycle.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
Development of FreeCAD 0.20 began following the tagging of [\| FreeCAD\'s 0.19 release version](https://github.com/FreeCAD/FreeCAD/releases/tag/0.19) on February 25, 2021.

### Minimum supported library versions {#minimum_supported_library_versions}

Development of 0.20 targets Ubuntu 18.04 LTS as the oldest [officially-supported](https://forum.freecadweb.org/viewtopic.php?p=483940#p483940) OS for compiling FreeCAD. Minimum supported infrastructure software versions are:

- GCC 7.4
- Clang 6.0
- CMake 3.10
- Python 3.6
- Qt 5.9
- OpenCASCADE 7.3

This version of FreeCAD is compiled requiring the C++17 standard, and all C++17 features are allowed with two exceptions:

- std::filesystem is not well-supported by GCC 7.4 \-- continue to use boost::filesystem instead
- std::regex is much slower than boost::regex in some important cases, so we will continue to include the Boost regex library

Developers are encouraged to review the [C++ Core Guidelines](https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines) for modern C++ coding advice. No strict coding convention has been selected for FreeCAD, though new C++ code often conforms to the [Qt coding conventions](https://wiki.qt.io/Coding_Conventions), and new Python typically conforms to [PEP 8](https://pep8.org/).

### Features Under Development {#features_under_development}

As volunteer-developed Open Source software it is impossible to guarantee that any particular feature will be implemented in a given time frame. Major features or modifications that developers are currently working on include:

- Developing solutions to the [Topological naming problem](Topological_naming_problem.md)
- Improving [Spreadsheet](Spreadsheet.md) usability and interoperability
- Improving [OpenSCAD](http://www.openscad.org/) interoperability via the [OpenSCAD Workbench](OpenSCAD_Workbench.md): implementing missing functions and improving CSG shell generation in special cases

[Category:Roadmap{{\#translation:}}](Category:Roadmap.md) [Category:Developer{{\#translation:}}](Category:Developer.md)
85 changes: 85 additions & 0 deletions wiki/3D_View.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@


## Introduction



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

Certain properties of the view, like background color, [mouse navigation](Mouse_navigation.md) style, and zooming steps, can be configured in the [preferences editor](Preferences_Editor.md).

<img alt="" src=images/FreeCAD_3D_view.png style="width:600px;">


*The [Draft Workbench](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.md).*

## Actions


**Note:**

link actions <small>(v0.19)</small> .

Since the [tree view](tree_view.md) 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.md).

When the default [Start Workbench](Start_Workbench.md) is active, right clicking on the 3D view shows only one command:

- {{MenuCommand|[Navigation styles](Mouse_navigation.md)}}: different button styles to use with a 3-button mouse or laptop trackpad.

However, once a [Workbench](Workbenches.md) is loaded, there are additional commands:

- {{MenuCommand|Link actions}}: [Make Link](Std_LinkMake.md).

-
{{MenuCommand|Make Link group}}
: [Simple group](Std_LinkMakeGroup.md), [Group with links](Std_LinkMakeGroup.md), [Group with transform links](Std_LinkMakeGroup.md).

- {{MenuCommand|[Fit all](Std_ViewFitAll.md)}}: pans and zooms the view to fit all objects in the document on the screen.

- {{MenuCommand|[Fit selection](Std_ViewFitSelection.md)}}: pans and zooms the view to tightly fit the currently selected object on the screen.

- {{MenuCommand|[Draw style](Std_DrawStyle.md)}}: as is, flat lines, shaded, wireframe, points, hidden line, no shading.

- {{MenuCommand|[Standard views](Std_View_Menu.md)}}: [isometric](Std_ViewIsometric.md), [front](Std_ViewFront.md), [top](Std_ViewTop.md), [right](Std_ViewRight.md), [rear](Std_ViewRear.md), [bottom](Std_ViewBottom.md), [left](Std_ViewLeft.md), [rotate left](Std_ViewRotateLeft.md), [rotate right](Std_ViewRotateRight.md).

- {{MenuCommand|Measure}}: [toggle measurement](View_Measure_Toggle_All.md), [clear measurement](View_Measure_Clear_All.md).

- {{MenuCommand|Document window}}: [docked](Std_ViewDockUndockFullscreen.md), [undocked](Std_ViewDockUndockFullscreen.md), and [fullscreen](Std_ViewDockUndockFullscreen.md).

Additionally, depending on the workbench and object that is active, other contextual commands may become available.

For example, with the [Part Workbench](Part_Workbench.md) and one object selected:

- {{MenuCommand|[Appearance](Std_SetAppearance.md)}}: launches the dialog to change color and sizes of lines and vertices, and color of faces.

- {{MenuCommand|[Toggle visibility](Std_ToggleVisibility.md)}}: makes the object visible or invisible in the 3D view.

- {{MenuCommand|[Toggle selectability](Std_ToggleSelectability.md)}}: makes the object no longer selectable in the 3D view; use again this command to cancel its effect. It sets the object\'s `Selectable` attribute to `True` or `False`. Change the property by toggling **Selectable** in the [property editor](property_editor.md).

- {{MenuCommand|[Go to selection](Std_TreeSelection.md)}}: expand the [tree view](tree_view.md) to show the selected object in the hierarchy.

- {{MenuCommand|[Random color](Std_RandomColor.md)}}: assigns a random color to the object. It sets the object\'s `ShapeColor` attribute to a tuple `(r,g,b)` with tree random floats between 0 and 1. Change the property by modifying **Shape Color** in the [property editor](property_editor.md).

- {{MenuCommand|[Delete](Std_Delete.md)}}: removes the object from the document, and from the 3D view, by calling the document\'s `removeObject()` method.

Another example, with the [Draft Workbench](Draft_Workbench.md) and one object selected, it shows the same commands as with the [Part Workbench](Part_Workbench.md), but also:

- {{MenuCommand|Draft}}: object creation and modification commands from the [Draft Workbench](Draft_Workbench.md).

- {{MenuCommand|Utilities}}: additional contextual commands provided by the [Draft Workbench](Draft_Workbench.md).

## 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](Python_console.md) by using the Python library Pivy.

For more information see the power user documentation:

- [Scenegraph](Scenegraph.md), description of Coin3D.
- [Pivy](Pivy.md), usage of Coin3D from the Python console.
- [Third party libraries](Third_Party_Libraries.md) used by FreeCAD.
- [Coin3D](https://grey.colorado.edu/coin3d/index.html) C++ documentation.

{{Interface navi}}
8 changes: 8 additions & 0 deletions wiki/3D_input_devices.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
FreeCAD supports some specialized input devices, such as 3D mice. These enables the user to rotate, translate and zoom objects in three dimensions.

## Supported hardware {#supported_hardware}

- 3Dconnexion [SpaceNavigator](http://www.3dconnexion.com/products/spacenavigator.html)
- Installation instructions: [3D connexion input devices](3Dconnexion_input_devices.md)

[category:Documentation{{\#translation:}}](category:Documentation.md)
85 changes: 85 additions & 0 deletions wiki/3D_view.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@


## Introduction



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

Certain properties of the view, like background color, [mouse navigation](Mouse_navigation.md) style, and zooming steps, can be configured in the [preferences editor](Preferences_Editor.md).

<img alt="" src=images/FreeCAD_3D_view.png style="width:600px;">


*The [Draft Workbench](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.md).*

## Actions


**Note:**

link actions <small>(v0.19)</small> .

Since the [tree view](tree_view.md) 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.md).

When the default [Start Workbench](Start_Workbench.md) is active, right clicking on the 3D view shows only one command:

- {{MenuCommand|[Navigation styles](Mouse_navigation.md)}}: different button styles to use with a 3-button mouse or laptop trackpad.

However, once a [Workbench](Workbenches.md) is loaded, there are additional commands:

- {{MenuCommand|Link actions}}: [Make Link](Std_LinkMake.md).

-
{{MenuCommand|Make Link group}}
: [Simple group](Std_LinkMakeGroup.md), [Group with links](Std_LinkMakeGroup.md), [Group with transform links](Std_LinkMakeGroup.md).

- {{MenuCommand|[Fit all](Std_ViewFitAll.md)}}: pans and zooms the view to fit all objects in the document on the screen.

- {{MenuCommand|[Fit selection](Std_ViewFitSelection.md)}}: pans and zooms the view to tightly fit the currently selected object on the screen.

- {{MenuCommand|[Draw style](Std_DrawStyle.md)}}: as is, flat lines, shaded, wireframe, points, hidden line, no shading.

- {{MenuCommand|[Standard views](Std_View_Menu.md)}}: [isometric](Std_ViewIsometric.md), [front](Std_ViewFront.md), [top](Std_ViewTop.md), [right](Std_ViewRight.md), [rear](Std_ViewRear.md), [bottom](Std_ViewBottom.md), [left](Std_ViewLeft.md), [rotate left](Std_ViewRotateLeft.md), [rotate right](Std_ViewRotateRight.md).

- {{MenuCommand|Measure}}: [toggle measurement](View_Measure_Toggle_All.md), [clear measurement](View_Measure_Clear_All.md).

- {{MenuCommand|Document window}}: [docked](Std_ViewDockUndockFullscreen.md), [undocked](Std_ViewDockUndockFullscreen.md), and [fullscreen](Std_ViewDockUndockFullscreen.md).

Additionally, depending on the workbench and object that is active, other contextual commands may become available.

For example, with the [Part Workbench](Part_Workbench.md) and one object selected:

- {{MenuCommand|[Appearance](Std_SetAppearance.md)}}: launches the dialog to change color and sizes of lines and vertices, and color of faces.

- {{MenuCommand|[Toggle visibility](Std_ToggleVisibility.md)}}: makes the object visible or invisible in the 3D view.

- {{MenuCommand|[Toggle selectability](Std_ToggleSelectability.md)}}: makes the object no longer selectable in the 3D view; use again this command to cancel its effect. It sets the object\'s `Selectable` attribute to `True` or `False`. Change the property by toggling **Selectable** in the [property editor](property_editor.md).

- {{MenuCommand|[Go to selection](Std_TreeSelection.md)}}: expand the [tree view](tree_view.md) to show the selected object in the hierarchy.

- {{MenuCommand|[Random color](Std_RandomColor.md)}}: assigns a random color to the object. It sets the object\'s `ShapeColor` attribute to a tuple `(r,g,b)` with tree random floats between 0 and 1. Change the property by modifying **Shape Color** in the [property editor](property_editor.md).

- {{MenuCommand|[Delete](Std_Delete.md)}}: removes the object from the document, and from the 3D view, by calling the document\'s `removeObject()` method.

Another example, with the [Draft Workbench](Draft_Workbench.md) and one object selected, it shows the same commands as with the [Part Workbench](Part_Workbench.md), but also:

- {{MenuCommand|Draft}}: object creation and modification commands from the [Draft Workbench](Draft_Workbench.md).

- {{MenuCommand|Utilities}}: additional contextual commands provided by the [Draft Workbench](Draft_Workbench.md).

## 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](Python_console.md) by using the Python library Pivy.

For more information see the power user documentation:

- [Scenegraph](Scenegraph.md), description of Coin3D.
- [Pivy](Pivy.md), usage of Coin3D from the Python console.
- [Third party libraries](Third_Party_Libraries.md) used by FreeCAD.
- [Coin3D](https://grey.colorado.edu/coin3d/index.html) C++ documentation.

{{Interface navi}}
Loading

0 comments on commit 86d38cd

Please sign in to comment.