Difference between revisions of "Property"

From FreeCAD Documentation
Jump to: navigation, search
(Internally, the property name is prefixed with App::Property)
(Examples of how the properties look in scripted objects.)
Line 2: Line 2:
 
<translate>
 
<translate>
 
<!--T:1-->
 
<!--T:1-->
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 a document. Properties can be viewed and modified with the [[Property editor]].
+
A [[Property|property]] is a piece of information like a number or a text string that is attached to a FreeCAD document or an object in a document. Properties can be viewed and modified with the [[Property editor|Property editor]].
  
 
<!--T:4-->
 
<!--T:4-->
Properties play a very important part in FreeCAD, since it has been designed to work with parametric objects, which are objects defined only by their properties.
+
Properties play a very important part in FreeCAD. As objects in FreeCAD are said to be "parametric", this means that their behavior is defined by their properties, and how those properties are modified class methods.
  
 
<!--T:5-->
 
<!--T:5-->
Custom [[scripted objects]] in FreeCAD can have properties of the following types:
+
Custom [[scripted objects|scripted objects]] can use any of the property types defined in the base system:
 
 
 
</translate>
 
</translate>
 
{{Code|code=
 
{{Code|code=
Line 51: Line 50:
 
App::PropertyFloatList
 
App::PropertyFloatList
 
...
 
...
 +
}}
 +
<translate>
 +
 +
In code
 +
</translate>
 +
{{Code|code=
 +
obj = App.ActiveDocument.addObject("Part::Feature", "CustomObject")
 +
 +
obj.addProperty("App::PropertyFloat", "Velocity", "Parameter", "Body speed")
 +
obj.addProperty("App::PropertyBool", "VelocityEnabled", "Parameter", "Enable body speed")
 
}}
 
}}
 
<translate>
 
<translate>

Revision as of 23:26, 22 September 2019

Other languages:
čeština • ‎Deutsch • ‎English • ‎español • ‎français • ‎Bahasa Indonesia • ‎italiano • ‎日本語 • ‎polski • ‎português • ‎română • ‎русский • ‎svenska • ‎Türkçe • ‎中文 • ‎中文(中国大陆)‎

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 a document. Properties can be viewed and modified with the Property editor.

Properties play a very important part in FreeCAD. As objects in FreeCAD are said to be "parametric", this means that their behavior is defined by their properties, and how those properties are modified class methods.

Custom scripted objects can use any of the property types defined in the base system:

Boolean
Float
FloatList
FloatConstraint
Angle
Distance
Integer
IntegerConstraint
Percent
Enumeration
IntegerList
String
StringList
Link
LinkList
Matrix
Vector
VectorList
Placement
PlacementLink
Color
ColorList
Material
Path
File
FileIncluded
PartShape
FilletContour
Circle

Internally, the property name is prefixed with App::Property:

App::PropertyBoolean
App::PropertyFloat
App::PropertyFloatList
...

In code

obj = App.ActiveDocument.addObject("Part::Feature", "CustomObject")

obj.addProperty("App::PropertyFloat", "Velocity", "Parameter", "Body speed")
obj.addProperty("App::PropertyBool", "VelocityEnabled", "Parameter", "Enable body speed")