Skip to content
Kai von Szadkowski edited this page Mar 28, 2018 · 34 revisions

Operators are constructs in Blender that can be called from the GUI, thus whenever you click a button or menu item, you execute an operator. While you can use lots of Phobos' functions when scripting in Blender, most of the time you will work with the set of operators it provides.

Model editing

Robot Model

Name Robot

assign a name to a robot. You have to select at least one object parented to the robots root link.

Define kinematic chain

define a kinematic chain containing all selected objects. The active object will be the end of the chain.

Toggle Namespaces

toggle the selected objects namespaces. If complete is checked the whole selected robot will be toggled.

Inspect Robot

Measure distance

measure the distance between two selected objects. The distance is provided in the console.

X-Ray view

enable or disable the X-Ray view for a specified set of objects. With X-Ray view you can investigate the inner structure of the robot without hiding objects.

Validate

check a robot against a set of rules and saves all suspicious objects into a list. See also the Model Validation.

Select error containing objects

select objects with errors (detected by the Check robot dictionary operator)

Selection(s)

Select Root

select the root link of the corresponding robot for each selected object.

Select by phobostype

select all objects of a specified phobostype.

Select Robot

select all objects (including links, visuals, collisions, inertials, sensors and controllers) which are part of the robot the currently selected object is part of.

Object editing

Set phobostype

set a specific phobostype for all selected objects.

Partial Rename

perform a find and replace operation on object names. Be careful using it, because it doesn't respect namespaces and other naming conventions.

Sort Objects to Layers

sorts the selected objects to their corresponding layer (determined by phobostype). See Editing a model for more information about layers in Phobos.

Edit Custom Property

edit the specified custom property for all selected objects. If the new value is empty the property is deleted. Otherwise the new value is set accordingly (and the property added if not existent).

Share meshes

shares the mesh of the active object with the selected objects. Be careful with this operator, as the overwritten meshes will be lost forever. You can specify a name for the shared mesh. Make sure, that the visual/collision objects does not have an shared mesh already.

Copy Custom Property

takes the active objects properties and copies it to all other selected objects. You can choose to purge all other custom properties.

Undo Share meshes

breaks the bond between the shared meshes. The objects will not get their old meshes back, but the meshes can be edited and exported individually again. If you undo a sharing on a source object without undoing it on its adherents you may have problems with the mesh export later on.

Rename Custom Property

takes all selected objects and renames a given custom property. You can choose whether you want to override existing properties or not.

Smoothen Surface

takes all selected objects and applies smooth shading to them.

Edit Object Dictionary

edit the active objects custom properties in the blender text editor. You can change the values and even add or delete key-value pairs. If you hit the run script button the custom properties of the currently active object will be overwritten. So make sure you have selected the right one.


Kinematics

Create Link(s)

creates links at the 3D cursors location or at the selected objects positions. You can choose to parent the newly created links with the selected objects and parent links.

Define Joint Constraints

takes all selected links and applies the defined joint constraints to them. All URDF joint types are supported.

Create Inertial Object(s)

takes all selected links and creates their inertial objects. You can choose to calculate them automatically or manually.

Attach Motor

attaches the specified motor to all selected links.

Create Collision Object(s)

creates collision objects for all selected visuals. You can choose from a set of different primitives or use visuals mesh. If you use the mesh option you can either copy the mesh for further editing or use the shared mesh.

Set Geometry Type(s)

takes all selected objects and sets their geometry types. All objects that are no visual or collision objects are omitted.

Set Origin to COM

sets all selected objects origins to their centre of mass.

Set Collision Group

sets the collision groups for all selected collision objects. You can change the groups by just changing the bitmask visible in the operators properties menu.

Mimic Joint

Masses & Inertia

Show Mass

shows the mass of your selected objects.

Sync Masses

Set Mass

sets the specified mass for all selected objects.

Edit Inertia

takes all selected objects and sets their inertia data. Non inertial objects are omitted.

Sensors & Controllers

Add/Edit Sensor

Add Controller

Export & Import

Model Export Settings

path

The directory in which the model will be saved. By checking the respective box in the selection dialog it is possible to use a relative path.

relative path

Selecting this check box will cause the specified export path to be interpreted as a relative path; otherwise the path will be interpreted as an absolute one.

decimal places

This value sets the number of decimal places used for representing floating point values inside the export files.

structural export

Selecting this option will sort the files generated during export into according subdirectories of the export directory. This may provide a better overview.

Mesh export

export meshes

If this check box is selected, the selected model's mesh objects will be exported into a separate meshes subdirectory. The files' format is set accordingly to which option was selected (see below). The selected format is displayed below the option check boxes.

use .bobj format

Selecting this check box causes the model's mesh objects to be exported in .bobj format, if the Export Meshes option was selected as well.

use .obj format

Selecting this check box causes the model's mesh objects to be exported in .obj format, if the Export Meshes option was selected as well.

use .stl format

Selecting this check box causes the model's mesh objects to be exported in .stl format, if the Export Meshes option was selected as well.

use .dae format

Selecting this check box causes the model's mesh objects to be exported in .dae format, if the Export Meshes option was selected as well.

Robot data export

Export Robot Model

Exports the selected robot to the specified path using the export setting selections. Only those parts of the robot that are currently selected will be exported.

Import Robot Model

This operator allows for browsing for either a MARS scene or a URDF file and importing the model specified inside it.

decimals

This value sets the number of decimal digits used for representing floating point values inside the export files.

export textures

Check this to export the texture data of the meshes.

selected only

Check this to limit exporting to selected objects.

Models export

Checking one or multiple of the model boxes will result in an export in the respective file format.

Mesh export

Selecting one or multiple of the mesh boxes will export the visual meshes in the respective file format.

mesh link

The model or scene export will use this mesh type to link to mesh data.

Scene export

Select the appropriate scene format that will be exported.

Robot data export

Export Model

Exports the selected robot to the specified path using the export settings.

Import Robot Model

allows browsing of either a MARS scene or a URDF file and importing the model specified inside it.

For a description of individual operators please refer to our source documentation.

Clone this wiki locally