From FreeCAD Documentation
Jump to navigation Jump to search
This page is a translated version of the page Property editor and the translation is 6% complete.
Outdated translations are marked like this.
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 • ‎български • ‎русский • ‎українська • ‎中文(中国大陆)‎ • ‎한국어


属性编辑器是FreeCAD最重要的工具之一,也是FreeCAD使用的主要元素。 属性编辑器允许管理文档中对象的属性。

The property editor appears when the Model tab of the combo view is active in the interface; it allows managing the publicly exposed properties of the objects in the document.



FreeCAD Property editor empty.png

Empty property editor, when no object is selected.



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.


Some of the most commonly used property types are:



View and Data properties


视图View : 关于对象“视觉”显示方面上的各种属性。
数据Data : 关于对象“物理”参数的各种属性。

For this reason, Data properties are considered to be more "real", as they truly define the geometry of a shape. On the other hand, View properties are less important because they only affect the superficial appearance of the geometry. For example, a circle of 10 mm radius is different from a circle of 5 mm radius; the color of the circle (view property) doesn't affect its shape, but the radius does (data property). In many instances in this documentation, the word "property" is understood to refer to a "Data property" and not to a "View property".

Basic properties

See also: Object name

The most basic scripted object won't show any Data property in the property editor, except for its Label attribute. The Label is a user editable string that identifies the object in the tree view. On the other hand, the Name attribute of an object is assigned at the moment of its creation and cannot be changed; this attribute is read-only, and is not displayed in the property editor either.

A basic parametric object is created as follow

obj = App.ActiveDocument.addObject("App::FeaturePython", "App__FeaturePython")
obj.Label = "Plain_object"

FreeCAD Property editor View basic.png FreeCAD Property editor Data basic.png

View and Data tabs of the property editor, for a basic "App::FeaturePython" scripted object.

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

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


introduced in version 0.19

Right clicking in an empty space of the view, or with a property selected, shows only one command:

  • Show all: if active, in addition to the standard properties that appear already, it shows all the hidden Data and View properties in their respective tabs.
    • Data: "Proxy", "Label2", "Expression Engine", and "Visibility".
    • View: "Proxy".

When the Show all option is active, and one property is selected, more actions are available with a second right click:

  • Show all: deactivates the Show all command, hiding the additional Data and View properties.
  • Add Property: adds a dynamic property to the object; this works with both C++ defined objects, and Python scripted objects.
  • Expression...: brings up the formula editor, which allows using expressions in the property value.
  • Hidden: if active, sets the property as hidden, meaning that it will only be displayed in the property editor if Show all 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 to be read-only; it won't be editable in the property editor any more until this switch is turned off. The Expression... menu entry is no longer available. Note: It may be still possible to change the property via a dialog that updates the property.
  • 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, it becomes touched, and ready for recompute.
  • EvalOnRestore: if active, it is evaluated when the document is restored.



In this section we show some common properties that are visible for a PartDesign Body, and one PartDesign Feature. The specific properties of an object can found in the specific documentation page of that object.


Most of these properties are inherited from the Part Feature basic object.

FreeCAD Property editor View.png


  • 视图包围盒(Bounding Box) : 指示是否显示对象的最小外接立方体值可为False, 或True (默认值为False)。
  • 视图控制点(Control Point) : 指示是否显示特征控制点。值可为False, 或True (默认值为False)。
  • 视图偏差(Deviation) : 设置3D视图中模型多边形表示法(polygonal representation)的精准度(曲面细分)。较小的数值 = 更高的渲染质量。此值按对象大小的百分比来计算(以mm表示的偏差 = (w+h+d)/3*valueInPercent/100, 其中w,h,d分别为包围盒的维度)。
  • 视图显示模式(Display Mode) :对象的显示模式,平直线(Flat lines), 着色(Shaded), 线框(Wireframe), 点(Points) Vue DisplayModePartDesign fr 00.png。 (默认值, 平直线)。
  • 视图光照(Lighting) : 光照单侧(One side), 两侧(Two side) Vue Lighting fr 00.png. (默认值,两侧)。
  • 视图线段颜色(Line Color) : 指定线段(边)的颜色(默认值, 25, 25, 25)。
  • 视图线段宽度(Line Width) : 指定线段(边)的粗细(默认值, 2)。
  • 视图点的颜色(Point Color) : 指定点(端点)的颜色(默认值, 25, 25, 25)。
  • 视图点的大小(Point Size) : 指定点的大小(默认值, 2)。
  • 视图可选择性(Selectable) : 对象是否可以被选中。值为False或True (默认值, True)。
  • 视图几何形状的颜色(Shape Color) : 指定带有颜色的几何形状(默认值, 204, 204, 204)。
  • 视图透明度(Transparency) : 设置对象的透明度,取值范围为0 to 100 (默认值, 0)。
  • 视图可见性(Visibility) : 确定对象的可见性(如同SPACE键的效果)。取值为False或True (默认值, True)。


In this case we observe the properties of the PartDesign Revolution feature.

FreeCAD Property editor Data.png


数据标签(Label) : 此标签是为目标对象(特征)指定的名称,此名可按需更改。

Part Design

  • 数据Refine: whether to refine the fusion done with other objects.


  • 数据Base: the point in space that specifies where the revolution takes place. It cannot be modified directly, only when editing the feature.
  • 数据Axis: the axis around which the revolution will be performed. It cannot be modified directly, only when editing the feature.
  • 数据Angle: the angle that specifies how much of the base element is rotated. By default it is 360 deg, but it can be any fraction of that.

Sketch Based

数据位置(Position) : 本属性指定了与目标对象所有维度有关的基点。此属性取3个参数,通过工具中的x、y、z输入框来传递对应数值。为一个以上的输入框设置同一值,将导致零件在对应坐标轴上按设置的数值移动相应数量的单位。


See also: FreeCAD Scripting Basics.

See scripted objects for the full information on adding properties to objects defined through Python.

Most properties that are visible in the property editor can be accessed from the Python console. These properties are just attributes of the class that defines the selected object. For example, if the property editor shows the 数据Group property, this means that the object has the Group attribute.


These attributes (properties) are added with the addProperty method of the base object. At least it is necessary to specify the type of property, and its name.

obj.addProperty("App::PropertyFloat", "Custom")

Properties follow the CapitalCamelCase or PascalCase convention, meaning that each word starts with a capital letter, and there are no underscores. When the property editor displays such names, it leaves a space between each capital letter, making it easier to read.

obj.addProperty("App::PropertyDistance", "CustomCamelProperty")
obj.CustomCamelProperty = 1000

FreeCAD Property editor Custom.png

Property editor showing the Data properties of a PartDesign Body, with two additional properties, "Custom" and "Custom Camel Property".

In similar way the View properties are added, not to the base object, but to its ViewObject. Then, it follows that properties like 视图Angular Deflection, 视图Bounding Box, 视图Display Mode, 视图Display Mode Body, 视图Line Color, and others, can be examined and changed from the Python console.


All public properties of the object, and of its view provider, are contained in the corresponding PropertiesList attribute.