From Silhouette Wiki
Jump to navigation Jump to search

The Object is the common base class for all of Silhouette's primary data objects. All objects have a unique id, user-editable label, and contain Properties.

# print the list of property names for the first selected object
object = fx.selection()[0]
print object.properties.keys()


Attributes are read-only except where noted.

Name Description
children List of child objects or None
color the object Color - not all objects have a way of changing their color (read/write)
id the unique id as string
label the object label (read/write)
locked True if locked (read/write)
note the object note (read/write)
parent the parent Object, or None
properties the dictionary of Properties
selected True if selected
type the object type name
visible True if visible (read/write)


Name Description Added
property(name) returns the Property with the property name, or None
clone() returns a deep clone of the object and children
getTransform(frame, collapsed=True) returns the accumulated transform at the specified time. This is a convenience method only useful for Layers and their children. If the object is a Layer and collapsed is set to False, this returns only the Layer's transform matrix.
prepare(object) prepares the object for adding to the target Object. It returns the object that should be added, which may possibly be a new object. For instance, when adding a cloned Roto Shape into a Morph Node, this function will convert the Shape for use in the Morph node. 6.0
isType(tyoe) returns True if the object is or is derived from the specified type name. 6.0
uniqueLabel(label) returns a label that is unique for the object's Session 6.0
addProperty(prop, after=None) adds the user-defined Property to the object 6.0
removeProperty(prop) removes the user-defined Property from the object 6.0


Name Description
object[prop_id] the map operator can be used as shorthand for object.property(prop_id)