Difference between revisions of "Property/it"

From FreeCAD Documentation
Jump to: navigation, search
(Updating to match new version of source page)
(Created page with "== Introduzione ==")
Line 1: Line 1:
 
<languages/>
 
<languages/>
  
== Introduction ==
+
== Introduzione ==
  
 
<div class="mw-translate-fuzzy">
 
<div class="mw-translate-fuzzy">

Revision as of 12:06, 19 November 2019

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

Introduzione

Una Proprietà è una parte di informazione sotto forma di numero o di stringa di testo che viene allegata a un documento FreeCAD oppure a un oggetto in un documento. Le proprietà possono essere visualizzate e, se consentito, modificate con l'editor delle proprietà.

In FreeCAD le proprietà svolgono un ruolo molto importante in quanto esso è concepito per lavorare con oggetti parametrici, ovvero oggetti definiti solo dalle loro proprietà.

All property types

In FreeCAD gli oggetti script personalizzati possono avere proprietà dei seguenti tipi:

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

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

App::PropertyBool
App::PropertyFloat
App::PropertyFloatList
...

Remember that these are property types. A single object may have many properties of the same type, but with different names.

For example:

obj.addProperty("App::PropertyFloat", "Length")
obj.addProperty("App::PropertyFloat", "Width")
obj.addProperty("App::PropertyFloat", "Height")

This indicates an object with three properties of type "Float", named "Length", "Width", and "Height", respectively.

Scripting

See also: FreeCAD scripting basics

A scripted object is created first, and then properties are assigned.

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

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

In general, Data properties are assigned by using the object's addProperty() method. On the other hand, View properties are normally provided automatically by the parent object from which the scripted object is derived.

For example:

  • Deriving from App::FeaturePython provides only 4 View properties: "Display Mode", "On Top When Selected", "Show In Tree", and "Visibility".
  • Deriving from Part::Feature provides 17 View properties: the previous four, plus "Angular Deflection", "Bounding Box", "Deviation", "Draw Style", "Lighting", "Line Color", "Line Width", "Point Color", "Point Size", "Selectable", "Selection Style", "Shape Color", and "Transparency".

Nevertheless, View properties can also be assigned using the view provider object's addProperty() method.

obj.ViewObject.addProperty("App::PropertyBool", "SupeVisibility", "Base", "Make the object glow")
Arrow-left.svg Personalizzare l'interfaccia Pagina precedente:
Pagina successiva: Ambienti di lavoro Arrow-right.svg