The Property Editor is a generic, streamlined editor for the objects that make up an OpenSim model (bodies, joints, muscles, etc.). As of version 4.0, this window contains more information than the "Properties", for example the names and types of the "Outputs" computed by the selected object are displayed on the same window under a different tab. This page describes:
What is a model property?
OpenSim models and objects are defined by a set of Properties. For example, a Marker is a simple OpenSim object, with properties including its "name", whether or not it is "fixed" during Scaling, the "Frame" it is attached to and its "location" relative to this Frame. These properties completely define a marker, so that when you load a file with a given marker into OpenSim, the visualizer knows how to display it and the Scale tool knows to use it during Scaling.
When you open .xml files or .osim files you see the property names as xml tags. Within the Property Editor Window, you can see and edit the properties of an OpenSim object. If you're an advanced user writing plugins, you can also see and edit the properties of new objects that you create (see Command Line Utilities).
Properties are hierarchical in nature so they can be either of the following:
- Simple properties (name, value pairs), like "mass" = 100.0, "mass_center" = "(0.0 0.1 0.2)"
- Objects composed of a set of simple properties or simpler objects (e.g. Muscle's geometry-path is a complex property that requires special editor).
Opening the Property Editor
The Property Editor appears in the bottom left corner of the OpenSim GUI by default. If it's not visible, you can open the Property Editor by selecting Window > Properties.
Selecting an Object to Edit
There are two methods to select an object to edit.
Using the Navigator Window
- If the Property Editor is not open, open it by selecting Window > Properties.
- Next, in the Navigator Window, expand the model tree to find the object of interest. You can do this by clicking on the plus (arrow on Mac) sign next to the name of the model to display the model components, and then clicking on the plus sign to expand the branch further, as needed. In some models, muscles are organized into groups, in which case you will also have to click on the plus sign next to the group containing the muscle of interest.
- Left or Right Click on the name of the object in the Navigator window.
- The Property Editor will now show the properties of that selected object.
Using the Visualizer Window
The second method operates in the Visualizer window, and applies only for objects that have a visual representation in the Visualizer window.
- To select an object for editing, first make sure that the model containing the object is the current model. (See Opening, Closing, and Using the Navigator Window for more information about how to make a model current.)
- left click on an object to select it (selection is indicated by a wireframe yellow bounding box)
When an object is selected using the visualizer window, its name is also shown in the text bar at the bottom of the OpenSim window.
Using the Property Editor
Once the property editor is open and an object is selected, the object's properties are displayed in table format in the Property Editor. You can change the values of these properties by changing values in the Property Editor window. These changes take effect immediately.
Normally the values are displayed in an editable text box. In some special cases, the user interface can display a more customized editor. For example a checkbox is shown for a boolean (true/false) value. Colors and Functions also have specialized editors. For more complex objects a ... Box is shown. Clicking on this box, will bring up a separate, specialized editor for this property.
The bottom of the Property Editor displays a description of the selected property and usually includes a valid range of values or default values.
Some special kinds of properties are called Sockets. These are used to wire an object in the model to another object, for example a Marker doesn't contain a "Frame" property but rather a "Socket" that is wired to a "Frame" object in the model. These sockets are grouped together as shown below for a joint.
The screen capture below shows the contents of the Property Editor when a joint ("ground_pelvis") is selected:
In addition to the properties of the object, the editor shows two more (usually uneditable) entries in the table of properties:
The Sockets group of properties show how the two "connections" needed to make the joint are satisfied:
The values shown for these Sockets are usually PathNames describing the location of the objects in the model's component-tree.
The output tab for a Body is shown on the left. This tab lists the built-in quantities that can be computed for a "Body" with their types.
Outputs were introduced in version 4.0 to simplify reporting quantities of interest from a model/simulation without the need to write customized analyses.
Selecting and Editing Multiple Objects
You can select and edit multiple objects of the same type in the Property Editor
One of the key advantages of the new property editing mechanism, is that it support undoing and redoing changes.
Saving, or closing the model clears the undo history and so can not be undone.