Property editor

From FreeCAD Documentation
Revision as of 00:45, 23 September 2019 by Vocx (talk | contribs) (More information)
Interface Customization
Workbenches

Introduction

The property editor allows managing the publicly exposed properties of the objects in your document.

Generally, the property editor is intended to deal with just one object at one time. The values shown in the property editor belong to the active object of the active document. If there are no elements selected, the property editor will be empty. Despite this, some properties like colors, can be set for multiple selected objects.

Not all the properties can be modified in any moment; depending on the specific status of the property, some of them will be invisible (not listed), or be read-only (not editable).

File:FreeCAD Properties empty.png

Empty property editor, when no object is selected.

Properties

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.

Custom scripted objects can use any of the property types defined in the base system. See the full list in Property.

Some of the most commonly used property types are:

App::PropertyBoolean
App::PropertyFloat
App::PropertyAngle
App::PropertyDistance
App::PropertyInteger
App::PropertyString
App::PropertyStringList
App::PropertyMatrix
App::PropertyVector
App::PropertyVectorList
App::PropertyPlacement

Different objects may have different properties. However, some properties are present in many similar objects because they are derived from the same internal class. For example, most objects that describe geometrical shapes (lines, circles, rectangles, solid bodies, imported parts, etc.), have a "Placement" property that allows them to define their position in the 3D view.

There are two types of feature properties accessible through tabs at the bottom of the property editor:

  • View properties, related to the "visual" appearance of an object. The View properties 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.
  • Data properties, related to the "physical" parameters of an object. The Data properties define the way the object behaves; 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.

The most basic object won't show any property, except for its Label attribute. The Label is a user changeable string that identifies the object in the tree view. On the other hand, the Name is an attribute that is hidden in the property view; it is also read-only, so it cannot be changed.

A basic parametric object is created as follow

obj = App.ActiveDocument.addObject("App::FeaturePython")

File:FreeCAD Properties Data basic.png File:FreeCAD Properties View basic.png

Example of a PartDesign object properties

View

Base

  • ViewBounding Box: Indicates if a box showing the overall extent of the object is to be displayed. Value False, or True (Default, False).
  • ViewControl Point: Indicates if the feature control points are to be displayed. Value False, or True (Default, False).
  • ViewDeviation: Sets the accuracy of the polygonal representation of the model in the 3d view (tessellation). Lower values = better quality. The value is in percent of object's size (deviation in mm = (w+h+d)/3*valueInPercent/100, where w,h,d are the bounding box dimensions).
  • ViewDisplay Mode: Display mode of the feature, Flat lines, Shaded, Wireframe, Points . (Default, Flat lines).
  • ViewLighting: Lighting One side, Two side . (Default, Two side).
  • ViewLine Color: Gives the color of the line (edges) (Default, 25, 25, 25).
  • ViewLine Width: Gives the thickness of the line (edges) (Default, 2).
  • ViewPoint Color: Gives the color of the points (ends of the feature) (Default, 25, 25, 25).
  • ViewPoint Size: Gives the size of the points (Default, 2).
  • ViewSelectable: Allows selection of the feature. Value False, ou True (Default, True).
  • ViewShape Color: Give the color shape (default, 204, 204, 204).
  • ViewTransparency: Sets the degree of transparency in the feature of 0 to 100 (Default, 0).
  • ViewVisibility: Determines the visibility of the feature (like the bar SPACE). Value False, or True (Default, True).

Data

Base

  • DataPlacement:

Summary of the data below. Every feature has a placement that can be controlled through the Data Properties table. It controls the placement of the part with respect to the coordinate system. NOTE: The placement properties do not affect the physical dimensions of the feature, but merely its position in space!
If you select the title Placement Options Placement, a button with three small points appears to the right. Clicking this button ..., opens the Tasks_Placement options window.

  • DataAngle:

Specifies the angle to be used with the axis property (below). An angle is set here, and the axis that the angle acts upon is set with the axis property. The feature is rotated by the specified angle, about the specified axis. A usage example might be if you created a revolution feature as required, but then needed to rotate the whole feature by some amount, in order to allow it to line-up with another pre-existing feature.

  • DataAxis:

This property specifies the axis/axes about which the feature is to be rotated. The exact value of rotation comes from the angle property (above). This property takes three arguments, which are passed as numbers in the x, y, and z boxes in the tool. Setting a value for more than one of the axes will cause the part to be rotated in each axis, by the angle value multiplied by the value for the axis. For example, with an angle of 15° set, specifying a value of 1.0 for x, and 2.0 for y will cause the finished part to be rotated 15° in the x-axis AND 30° in the y-axis.

  • DataPosition:

This property specifies the base point to which all dimensions refer. This takes three arguments, which are passed as numbers to the x, y, and z boxes in the tool. Setting a value for more than one of the boxes will cause the part to be translated by the number of units along the corresponding axis.

  • DataLabel:

The Label is the name given to the object (feature), this name can be changed as desired.

Interface Customization
Workbenches

Template:Interface