Property editor

From FreeCAD Documentation

Introduction

The Property editor appears in the lower section of the Model panel (if the Combo view is active) or as a stand-alone panel called Property view.

Generally, the Property editor is intended to deal with one object at a time. The values shown in the Property editor belong to the selected object. Despite this, some properties like colors can be set for multiple selected objects. If no element is selected the Property editor is empty.

Not all properties can be modified, some are read-only.

The Data properties of a Part Box

Property types

A property is a piece of information like a number or a text string that is attached to a FreeCAD document or an object in the document. Many property types are available. Some of the most common types are:

App::PropertyAngle
App::PropertyBool
App::PropertyDistance
App::PropertyFloat
App::PropertyInteger
App::PropertyLength
App::PropertyPlacement
App::PropertyString
App::PropertyVector

View and Data properties

The Property editor has two tabs giving access to two classes of properties:

  • Data properties, related to the "physical" parameters of the object. The Data properties define the essential characteristics of the object. They exist at all times, even when FreeCAD is used in console mode, or as a library. This means that if you load a document in console mode, you can edit the radius of a circle or the length of a line, even if you cannot see the result on the screen.
  • View properties, related to the "visual" appearance of the object. The View properties are tied to the ViewObject of the object, and are only accessible when the graphical user interface (GUI) is loaded. They are not accessible when using FreeCAD in console mode, or as a headless library.

Basic properties

Different objects may have different properties. However, many objects have the same properties because they are derived from the same internal class.

Most geometrical objects that can be created and displayed in the 3D view are derived from a Part::Feature. See Part Feature for the basic properties these objects have.

For 2D geometry, most objects are derived from a Part::Part2DObject (itself derived from a Part::Feature) which is the base of Sketches, and most Draft objects. See Part Part2DObject for the basic properties these objects have.

Context menu

To display the context menu of the Property editor right-click the background of the editor, or right-click a property.

Right-clicking the background shows three options:

  • Add property: adds a dynamic property to the object.
  • Show hidden: if active, hidden Data and View properties are shown in the editor.
  • Auto expand: if active, all nodes in the editor are expanded when an object is selected.

When right-clicking a property the following additional options are available:

  • Rename property group: renames the property group of selected properties. Only available for dynamic properties. Dynamic properties are those added by the user, as well as those added through Python code.
  • Remove property: removes selected properties. Only available for dynamic properties.
  • Expression...: brings up the Expression editor, which allows using expressions in the property value.
  • Status:
  • Hidden: if active, sets the property as hidden, meaning that it will only be displayed in the Property editor if Show hidden is active.
  • Output: if active, sets the property as output.
  • NoRecompute: if active, sets the property as not recomputed when the document is recomputed. This is useful when a property should be kept unaffected by other updates.
  • ReadOnly: if active, sets the property as read-only. The property won't be editable in the Property editor and the Expression... option no longer available. It may however still be possible to change the property via a dialog.
  • Transient: if active, sets the property as transient. The value of a transient property is not saved to file. When opening a file, it is instantiated with its default value.
  • Touched: if active, the object becomes touched, and ready for recompute.
  • EvalOnRestore: if active, the property is evaluated when the document is restored.
  • CopyOnChange: if active, the property is copied when changed in a Link. The Link's DataLink Copy on Change property must be set to Tracking or Enabled for this to work. This is related to Variant Links.

Scripting

See FeaturePython Custom Properties.

Preferences

See Combo view.