Preferences Editor

From FreeCAD Documentation
Revision as of 13:36, 15 May 2022 by Roy 043 (talk | contribs)
Jump to navigation Jump to search
Other languages:
Bahasa Indonesia • ‎Deutsch • ‎English • ‎Türkçe • ‎español • ‎français • ‎hrvatski • ‎italiano • ‎polski • ‎português • ‎português do Brasil • ‎română • ‎svenska • ‎čeština • ‎български • ‎русский • ‎українська • ‎中文 • ‎中文(中国大陆)‎ • ‎中文(台灣)‎ • ‎日本語 • ‎한국어

Introduction

To start the Preferences editor select the Edit → Preferences... option from the menu. On the Mac OS the Preferences... option appears in the FreeCAD menu instead (this is the default place for preferences on the Mac).

FreeCAD uses a workbench concept, where each workbench is responsible for specific tasks and functions. A workbench can have its own preferences. These will only appear in the Preferences editor if the workbench has been loaded in the current FreeCAD session. See Workbenches below for more information.

If no workbench is loaded, five sections appear in the Preferences editor: General, Display, Workbenches, Addon Manager and Import-Export. Any workbenches that have been loaded, and have their own preferences, will appear below these.

Please note that pressing the Reset button in the lower left corner of the Preferences dialog will reset all FreeCAD preferences to their default values.

Some advanced preferences can only be changed in the Parameter editor. The Fine-tuning page lists some of them.

General

This preferences section has 9 tabs: General, Document, Selection, Cache, Editor, Python console, Output window, Macro, and Units.

General

On the General tab you can specify the following:

Name Description
Change language Specifies the language of the FreeCAD user interface.
Number format introduced in version 0.20 Specifies the number format. The options are:
  • Operating system: The decimal separator defined by the operating system is used.
  • Selected language: The decimal separator of the selected FreeCAD interface language is used.
  • C/POSIX: A point is used as the decimal separator.
Substitute decimal separator introduced in version 0.20 If checked, the numerical keypad decimal separator will be substituted with the separator defined by the Number format setting (restart required).
Preference packs introduced in version 0.20 Lists the available preference packs and also allows you to save new packs.
Size of recent file list Specifies how many files should be listed in the recent files list.
Enable tiled background If checked, the background of FreeCAD's main window will by default consist of tiles of this image: Background.png

This option only has an effect if no Style sheet is selected.

The image can be changed by adding the folders Gui/Images in the folder:

%APPDATA%/FreeCAD (on Windows),

$HOME/.FreeCAD (on Linux) or

$HOME/Library/Preferences/FreeCAD (on MacOS).

Place a file named background.png in the Images folder, and uncheck/check this option to see the changed file.

Enable cursor blinking If checked the text cursor in the Python console and the Macro editor will blink.
Style sheet Specifies a style sheet. Style sheets define how the user interface of FreeCAD looks. For technical details about style sheets see themes.
Size of toolbar icons Specifies the size of the toolbar icons. The options are:
  • Small (16px)
  • Medium (24px)
  • Large (32px)
  • Extra large (48px)
Tree view mode Defines how the tree view is shown in the user interface (restart required). The options are:
  • Combo View: Combines the tree view and the property view into one panel.
  • TreeView and PropertyView: Splits the tree view and the property view into separate panels.
  • Both: Shows all three panels.
Auto load module after start up The workbench that will be activated when FreeCAD is started.
Enable splash screen at start up If checked, a splash screen is shown when starting FreeCAD.

The splash screen image can be changed by placing a file named splash_image.png in the Images folder already mentioned under Enable tiled background.

Preferences General Tab General.png

Document

On the Document tab you can specify the following:

Name Description
Create new document at start up If checked, FreeCAD will create a new document when started.
Document save compression level Specifies the compression level for FCStd files. FCStd files are ZIP-compressed files. Therefore you can rename their suffix .FCStd to .zip and open them with a ZIP archive program.
Using Undo/Redo on documents If checked, all changes in documents are stored so that they can be undone/redone.
Maximum Undo/Redo steps Specifies how many Undo/Redo steps should be recorded.
Allow aborting recomputation If checked, recomputations can be aborted by pressing Esc. This may slightly increase the recomputation time.
Run AutoRecovery at startup If there is a recovery file available FreeCAD will automatically run a file recovery when it is started. This way files can be restored if a crash occurred.
Save AutoRecovery information every Specifies how often a recovery file is written.
Save thumbnail into project file when saving document If checked, a thumbnail will be stored when the document is saved. The thumbnail will for example be shown in the list of recent files in the Start Workbench. It is possible to select a Size between 128×128 and 512×512 pixels for the thumbnail. Common sizes are powers of two: 128, 256, 512.
Add the program logo to the generated thumbnail If checked, the FreeCAD program logo Freecad.svg will be added to the thumbnail.
Maximum number of backup files to keep when resaving document If checked, backup files will be kept when saving the document. You can specify the number of backup files to keep. Backup files are previously saved versions of the document. The first backup file will have the file suffix .FCStd1, the second .FCStd2 and so on.
Use date and FCBak extension If checked, backup files will get the extension .FCbak and their file names get a date suffix according to the specified Date format. For a description of the date format see this site.

With the default settings a backup file will for example get this name TD-Cube.20200315-215654.FCBak (original filename is TD-Cube.FCStd).

Allow duplicate object labels in one document If checked, objects can have the same label.
Disable partial loading of external linked objects If partial loading of external linked objects is enabled, only the referenced objects and their dependencies will be loaded when the linked document is auto opened together with the main document. Such a partially loaded document cannot be edited. Double click the document icon in the tree view to reload it in full. A more detailed explanation of this feature can be found on the Assembly3 documentation page.
Author name All created documents will get the specified author name. Keep the author field blank if you do not want to include this information. If the option Set on save is checked, the field Last modified by will be set to the specified author when saving the file. This field can be viewed using the File → Project information menu option.
Company All created documents will get the specified company name.
Default license Specifies the license for new documents. For predefined licenses the License URL will automatically be set accordingly. Select Other for a custom license.
License URL Specifies an URL describing the license selected in Default license.

Preferences General Tab Document.png

Selection

On the Selection tab (introduced in version 0.19) you can specify the following:

Name Description
Auto switch to the 3D view containing the selected item Enables the Tree view SyncView mode.
Auto expand tree item when the corresponding object is selected in 3D view Enables the Tree view SyncSelection mode.
Preselect the object in 3D view when mouse over the tree item Enables the Tree view PreSelection mode.
Record selection in tree view in order to go back/forward using navigation button Enables the Tree view RecordSelection mode.
Add checkboxes for selection in document tree Each Tree view item will get a checkbox. This is for example useful for selecting multiple items on a touchscreen.

Preferences General Tab Selection.png

Cache

These preferences are related to the cache directory where FreeCAD stores temporary files.

On the Cache tab (introduced in version 0.20) you can specify the following:

Name Description
Location Specifies the path of the cache directory.
Check periodically at program start Controls the frequency with which the directory size is checked. The options are:
  • Always
  • Daily
  • Weekly
  • Monthly
  • Yearly
  • Never
Cache size limit Specifies the maximum size of the directory. You will be notified if a check is performed and the size exceeds this value. The options are:
  • 100 MB
  • 300 MB
  • 500 MB
  • 1 GB
  • 2 GB
  • 3 GB
Current cache size Shows the current size of the directory, if available. Press the Check now... button to update the value.

Preferences General Tab Cache.png

Editor

These preferences control the behavior of the Macro editor. This editor can be opened using the Macro → Macros... → Edit or Create menu option.

The color and font settings are also used by the Python console.

On the Editor tab you can specify the following:

Name Description
Enable line numbers If checked, the code lines will be numbered.
Enable block cursor If checked, the cursor will have a block shape.
Tab size Specifies the tabulator raster (how many spaces). If it is for example set to 6, pressing Tab will jump to character 7 or 13 or 19 etc., depending on the current cursor position. This setting is only used if Keep tabs is selected.
Indent size Specifies how many spaces will be inserted when pressing Tab. This setting is only used if Insert spaces is selected.
Keep tabs If selected, pressing Tab will insert a tabulator with the raster defined by Tab size.
Insert spaces If selected, pressing Tab will insert the amount of spaces defined by Indent size.
Display Items Specifies the code type the color and font settings will be applied to. The result can be checked in the Preview field.
Family Specifies the font family that should be used for the selected code type.
Size Specifies the font size that should be used for the selected code type.
Color Specifies the color that should be used for the selected code type.

Preferences General Tab Editor.png

Python console

These preferences control the behavior of the Python console. This console can be opened using the View → Panels → Python console menu option.

Note that the color and font settings for the console are defined on the Editor tab.

On the Python console tab (introduced in version 0.20) you can specify the following:

Name Description
Enable word wrap If checked, words will be wrapped if they exceed the available horizontal space in the console.
Enable block cursor If checked, the cursor will have a block shape.
Save history If checked, Python history is saved across sessions.

Preferences General Tab Python console.png

Output window

Theses preferences control the behavior of the Report view. This panel can be opened using the View → Panels → Report view menu option.

On the Output window tab you can specify the following:

Name Description
Record normal messages If checked, normal messages will be recorded. They will be displayed in the Report view with the color set in Normal messages.
Record log messages If checked, log messages will be recorded. They will be displayed in the Report view with the color set in Log messages.
Record warnings If checked, warnings will be recorded. They will be displayed in the Report view with the color set in Warnings.
Record error messages If checked, error messages will be recorded. They will be displayed in the Report view with the color set in Errors.
Show report view on error If checked, the Report view will be shown automatically when an error is recorded.
Show report view on warning If checked, the Report view will be shown automatically when a warning is recorded.
Show report view on normal message If checked, the Report view will be shown automatically when a normal message is recorded.
Show report view on log message If checked, the Report view will be shown automatically when a log message is recorded.
Include a timecode for each entry If checked, each message and warning will receive a timecode.
Normal messages Specifies the font color for normal messages.
Log messages Specifies the font color for log messages.
Warnings Specifies the font color for warning messages.
Errors Specifies the font color for error messages.
Redirect internal Python output to report view If checked, internal Python output will be redirected from the Python console to the Report view.
Redirect internal Python errors to report view If checked, internal Python error messages will be redirected from the Python console to the Report view.

Preferences General Tab Output window.png

Macro

On the Macro tab you can specify the following:

Name Description
Run macros in local environment If checked, variables defined by macros are created as local variables, otherwise as global Python variables.
Macro path Specifies the path for macro files.
Record GUI commands If checked, recorded macros will also contain user interface commands.
Record as comment If checked, recorded macros will also contain user interface commands, but as comments. This is useful if you don't want to execute these commands when running the macro, but do want to see what has been done while recording.
Show script commands in python console If checked, the commands executed by macro scripts are shown in the Python console. This console can be opened using the View → Panels → Python console menu option.
Size of recent macro list Controls the number of recent macros to display in the menu.
Shortcut count Controls the number of recent macros that get dynamically assigned shortcuts.
Keyboard Modifiers Controls which keyboard modifiers are used for the shortcuts, example Ctrl+Shift+ creates shortcuts in the form of Ctrl+Shift+1, Ctrl+Shift+2, etc.

Preferences General Tab Macro.png

Units

On the Units tab you can specify the following:

Name Description
Unit system Specifies the unit system to be used for all parts of FreeCAD.
Number of decimals The number of decimals that should be shown for numbers and dimensions.
Minimum fractional inch Minimum fractional inch that should be displayed. This setting is only available if the unit system Building US (ft-in/sqft/cuft) is used.

Preferences General Tab Units.png

Display

This preferences section has three standard tabs: 3D View, Navigation and Colors. A fourth tab, Mesh view, is added if the Mesh Workbench has been loaded.

3D View

On the 3D View tab you can specify the following:

Name Description
Show coordinate system in the corner If checked, the main coordinate system will be shown in the lower right corner of the 3D view.

The Relative size introduced in version 0.20 defines the size of the representation as a percentage of the view size (the minimum of its height and width).

Show axis cross by default introduced in version 0.19 If checked, the axis cross will be shown by default in the 3D view.
Show counter of frames per second If checked, the time needed for the last operation and the resulting frame rate will be shown in the lower left corner of the 3D view.
Remember active workbench by tab introduced in version 0.19 If checked, the application will remember the active workbench for each tab in the Main view area independently. When switching to a tab this workbench will be restored automatically.
Use software OpenGL introduced in version 0.19 If checked, OpenGL will use the CPU instead of the GPU. This option is useful for troubleshooting graphics card and driver problems. Changing this option requires a restart of the application.
Use OpenGL VBO (Vertex Buffer Object) If checked, Vertex Buffer Objects (VBO) will be used. A VBO is an OpenGL feature that provides methods for uploading vertex data (position, normal vector, color, etc.) to the graphics card. VBOs offer substantial performance gains because the data resides in the graphics memory rather than the system memory and so it can be rendered directly by the GPU. For more background info see this webpage.
Render Cache introduced in version 0.19 "Render Cache" or "Render Acceleration" is explained in more detail in FreeCAD_assembly3 render-caching. The options are:
  • Auto (default), let Coin3D decide where to cache.
  • Distributed, manually turn on cache for all view provider root nodes.
  • Centralized, manually turn off cache in all nodes of all view providers, and only cache at the scene graph root node. This offers the fastest rendering speed, but slower response to any scene changes.
Anti-Aliasing Selection if and what kind of multisample anti-aliasing is used
Transparent objects introduced in version 0.19 Render type of transparent objects. The options are:
  • One pass (default), rendering is done in one pass. For non-solid objects like faces or meshes this can lead to artifacts. This image shows such an artifact (black triangle) and that the type Backface pass avoids this.
  • Backface pass, has only an effect for non-solid objects. They are then rendered in two passes: Back-facing polygons are rendered in the first pass and the front-facing in the second pass.
Marker size Selection of the size of vertices (points) in the Sketcher workbench. The clickable area of points can be additionally enlarged by increasing the Pick radius.
Pick radius (px) Sets the area for picking elements in the 3D view. Larger value makes it easier to pick things, but can make some small features impossible to select.
Eye to eye distance for stereo modes Specifies the eye-to-eye distance used for stereo projections. The specified value is a factor that will be multiplied with the bounding box size of the 3D object that is currently displayed.
Backlight color If checked, backlight is enabled with the defined color. Backlight is used for rendering back sides of faces. Usually, you don't see them in solids, unless you slice one with a clipping plane, or if the faces aren't oriented correctly. It is only active for objects whose Lighting property (on the View tab) is set to One side. If disabled, back sides of faces of objects in One side lighting mode will be black.

The related Intensity setting specifies the intensity of the backlight.

Camera type Selection of the camera projection type. The options are:

Preferences Display Tab 3D View.png

Navigation

On the Navigation tab you can specify the following:

Name Description
Navigation cube If checked, the Navigation cube will always be shown.

Steps by turn defines the number of steps required for a full rotation when using the Navigation cube rotation arrows.

Corner defines where the Navigation cube is displayed on the screen when creating or opening a document.

If Rotate to nearest is checked, the 3D view is rotated to the nearest most logical state when a cube face is clicked. When it is off, clicking to a cube face will and up always to the same position, no matter in what cube state you were when you clicked the face. introduced in version 0.20

Cube size defines the size of the cube. introduced in version 0.20

3D Navigation Selection of a navigation settings set. To see what each set defines, select it and then press the Mouse... button.
Orbit style Selection of the rotation orbit style. When viewing a part in the x-y plane and being in the rotation mode of the 3D navigation, the difference is: If Trackball is selected, moving the mouse horizontally will rotate the part around the y-axis, if Turntable is selected the part will be rotated around the z-axis.
Rotation mode Defines the rotation center. Select Window center, Drag at cursor, or Object center.
Default camera orientation Selection of the camera orientation for new documents. This setting is also used by the Std ViewHome command.
New document scale Affects the initial camera zoom level for new documents. The value you set is the diameter of a sphere that fits in 3D view. Default is 100 mm. It also sets the initial size of origin features (base planes in new PartDesign Bodies).
Enable animation If checked, rotations can be animated. If for example the 3D Navigation set CAD is used and the mouse is moved while the scroll wheel and the right mouse button are pressed, parts are rotated. If one keeps the mouse moving while releasing e.g. the right mouse button, the rotation will continue as animation. To end the animation left-click with the mouse.
Zoom at cursor If checked, zoom operations will be performed at the position of the mouse pointer. Otherwise zoom operations will be performed at the center of the current view. The Zoom step defines how much will be zoomed. A zoom step of 1 means a factor of 7.5 for every zoom step.
Invert zoom If checked, the direction of zoom operations will be inverted
Disable touchscreen tilt gesture If checked, the tilting gesture will be disabled for pinch-zooming (two-finger zooming). This only affects the 3D Navigation set Gesture.

Preferences Display Tab Navigation.png

Colors

On the Colors tab you can specify the following:

Name Description
Enable preselection highlighting If checked, preselection is turned on and the specified color will be used for it. Preselection means that for example edges in parts will be highlighted while hovering over them with the mouse to indicate they can be selected.
Enable selection highlighting If checked, selection highlighting is turned on and the specified color will be used for it
Simple color If selected, the background of the 3D view will have the selected color
Color gradient If selected, the background of the 3D view will have a vertical color gradient. The first color is the color at the top of the 3D view, the second the color at the bottom.
Middle color Is only enabled if Color gradient is selected. If checked, the color gradient will get the selected color as the middle color.
Object being edited Selection of the background color for objects in the tree view that are currently edited
Active container Selection of the background color for active containers in the tree view. For example an active PartDesign Body will get the selected background color.

Preferences Display Tab Colors.png

Mesh view

This tab is only available if the Mesh Workbench has been loaded.

On the Mesh view tab you can specify the following:

Name Description
Default mesh color Selection of the default shape color
Default line color Selection of the default line color
Mesh transparency Specifies the default mesh transparency
Line transparency Specifies the default line transparency
Two-side rendering If checked, the color of the interior side of faces will be the same as the exterior side. If not checked either the backlight color, if enabled, or black will be used instead.
Show bounding-box for highlighted or selected meshes If checked, a yellow bounding box will be displayed for highlighted or selected meshes
Define normal per vertex If checked, Phong shading is used, otherwise flat shading. Shading defines the appearance of surfaces. With flat shading the surface normals are not defined per vertex. This leads to an unrealistic appearance for curved surfaces. While Phong shading leads to a more realistic, smoother appearance.
Crease angle The crease angle is a threshold angle between two faces. It can only be set if the option Define normal per vertex is used.
If face angle ≥ crease angle, facet shading is used
If face angle < crease angle, smooth shading is used

Preferences Display Tab Mesh view.png

Workbenches

This preferences section has a single tab: Available Workbenches.

Available Workbenches

To preserve resources, FreeCAD does not automatically load all available workbenches. And only if a workbench has been loaded will its preferences, if any, appear in the Preferences editor.

In FreeCAD version 0.19 the tab has a different label: Unloaded Workbenches, and the tab displays a list of installed workbenches that have not yet been loaded. To load one or more workbenches select them in the list and then press the Load Selected button.

In FreeCAD version 0.20 the Available Workbenches tab displays a list of all installed workbenches. To load a workbench press its Load now button. If you check a workbench's Autoload checkbox it will autoload when FreeCAD starts up. Loading more workbenches will make the startup slower, but switching between workbenches that have already been loaded is faster.

If a newly loaded workbench has dedicated preference they will appear in a new section in the Preferences editor. Some workbenches add support for additional import and export formats. If there are any related preferences they will appear on one or more new tabs in the Import-Export section of the Preferences editor.

For a list of workbench related preferences see Workbench related preferences

Preferences Workbenches Tab Available Workbenches.png

Addon Manager

This preferences section has a single tab: Addon manager options.

Addon manager options

These preferences control the behavior of the Addon manager.

On the Addon manager options tab (introduced in version 0.20) you can specify the following:

Name Description
Automatically check for updates at start (requires GitPython) If checked, the Addon manager will check for updates when it is launched. GitPython and git must be installed for this to work.
Download Macro metadata (approximately 10MB) If checked, macro metadata is downloaded for display in the Addon manager's main addon listing. This data is cached locally.
Cache update frequency Controls the frequency with which the locally cached addon availability and metadata information is updated. The options are:
  • Manual (no automatic updates)
  • Daily
  • Weekly
Hide Addons marked Python 2 Only If checked, addons marked as "Python 2 Only" are not included in the listing. These addons are unlikely to work in the current FreeCAD version.
Hide Addons marked Obsolete If checked, addons marked as "Obsolete" are not included in the listing.
Hide Addons that require a newer version of FreeCAD If checked, addons that require a newer FreeCAD version are not included in the listing.
Custom repositories (one per line) Custom repositories can be specified here. They should include the name of the branch you intend to use (typically "master" or "main").
Proxy The Addon manager includes experimental support for proxies requiring authentication, set up as user-defined proxies.
Python executable (optional) The Addon manager attempts to determine the Python executable that should be used for the automatic pip-based installation of Python dependencies. To override this selection, the path to the executable can be set here.
Show option to change branches (requires GitPython) For developers and beta-testers, the Addon manager can provide an interface on the addon's details screen that allows switching which git branch is currently checked out. This is intended for advanced users only, as it is possible that a non-primary-branch version of the Addon may result in instability and compatibility issues. GitPython must be installed for this to work. Use with caution.

Preferences Addon Manager Tab Addon manager options.png

Import-Export

The Import-Export preferences affect how files are imported and exported. They are described on the Import Export Preferences page.

Workbench related preferences

Preferences for the built-in workbenches are linked below. Some workbenches have no preferences. These links are also listed in Category:Preferences.

Scripting

See also: FreeCAD Scripting Basics.

For a scripting example see Std DlgParameter.

Related