User Guide
Models 349
Model methods
Use these methods to work with models:
Method Description Returns
addChild(aNode,
preserveWorld)
Adds aNode to this model’s list of children. An
equivalent operation is to set
aNode.parent to equal
this model.
The
preserveWorld argument is optional. It can
have two values:
#preserveWorld or
#preserveParent. If the value is #preserveWorld,
the default, the world transform of the child being
added remains intact. If the value is
#preserveParent, the child’s existing transform is
interpreted as parent-relative.
Nothing
child[index] Returns the child at the specified position in
the index.
Node object
child(name) Returns the child named name. Node object
clone(name) Clones a model named name, adds it to the child list
of the model’s parent, and adds it to the world.
The clone shares the same model resource, shader
list, and parent as the original model, but it has
unique copies of the model’s transform and
modifier properties.
All children of the model are automatically cloned.
This can be avoided by removing the children,
performing the cloning operation, and then adding
the children back.
If the name is omitted or is
"", the clone isn’t added
to the model palette, has no parent, and has no
children. This option lets you quickly create
temporary model instances.
Model object
cloneDeep(name) Clones both the model and the model resource
used by the model’s children. Modifications to the
clones’ resource don’t affect the source model’s
resource.
This is a more memory-intensive operation than
clone(name).
Model object
addtoWorld() Adds the model to the currently active 3D world,
setting its parent as “world.” Equivalent to
model.parent=member("scene").group
("world")
All newly created models are added to the world by
default, without it being necessary to use this
method.
Nothing
remove
FromWorld()
For models whose parent hierarchy terminates in
the world, this sets their parent to
void and
removes them from the world. Otherwise it
does nothing.
Nothing