TransformΒΆ

class Transform

The transform class is the base class for the transform node plug-ins.

The transform nodes can be stacked in the transform stack of any SceneGraphNode object to modified its transform (position, rotation, scale). A typical transform plug-in must compute the Out plug according to its parameters and the value of the In plug.

Hierarchy

class Transform < class SelectableNode < class Node

Members

Plugs:

transform In R The result of the previous transform in the stack
transform Out RW The result of this transform to compute.

Methods:

nil construct ( SceneGraphNode node ) Create and add the transform to the scene graph node's transform stack
nil delete ( ) Delete this transform
float angle getaxisrotation ( string axis ) Return the local rotation angle on the axis
matrix mtx getmatrix ( ) Return the matrix transforming from this node to the next one
nil gettransformtemplate ( table template ) Add the transform template
matrix mtx getworldmatrix ( ) Return the matrix transforming from this transform to the world
nil movedown ( ) Move this transform one level up in the transform stack
nil moveup ( ) Move this transform one level up in the transform stack
nil setaxisrotation ( string axis , float angle ) Set the local rotation angle on the axis
nil setmatrix ( matrix mtx ) Set the matrix of this transform
nil setmatrix ( matrix mtx ) Set the matrix of this transform
nil settranslation ( point3 t ) Set the translation of this transform


Inherited from class SelectableNode

Plugs:

boolean Selected R True if the node is selected. Don't use this plug directly to select a node, use the Document's modifier select method.


Inherited from class Node

Plugs:

string Name RW The node name

Methods:

bool result belongstoreference ( Reference ref ) Tells if the node belongs to the reference, or a sub reference
nil delete ( ) Delete a node
any value eval ( Plug plug ) Called by the framework when plug (a node's plug) must be evaluated
Node|Plug child findchild ( string path ) Find a child node or plug using a path
Node parent findparent ( string name ) Find the first parent Node of this Node of a specific class
Node result getchild ( string name ) Get a child node by its name
[string|number] name getname ( ) Get the Node name in its parent
Node parent getparent ( ) Get the parent Node of this Node
string path getpath ( ) Returns the node path as a string that can be reused with findchild
Reference reference getreference ( ) Returns the reference node it is connected to
of table getreferences ( [ topref Reference ] ) Returns the references in the document sorted depth first.
string result getstringcopy ( ) Return a copy of the node and its content as a string to be pasted
Reference reference gettopreference ( ) Returns the top reference node it is connected to
boolean editable iseditable ( ) Indicates if the node can be edited by the user in the UI
boolean indocument isindocument ( ) Tells if the node is inside a document, or is pending in the void
bool result ismoveable ( ) Tells if the node can be moved
boolean result isparent ( Node child ) Tells if this node is parent of the potential child
boolean result isreference ( ) Tells if a node comes from a reference project
boolean state isselected ( ) Tell if the node is selected
{Node} result loadfile ( string filename , [ table options ] ) load a file content in this node. Possible options are: overrideclass to enforce a specific class for the root node.
Node result loadtemplate ( string template , string name ) load a template file
nil move ( Node parent ) Move a node to a new parent
nil onpathchanged ( ) Called by the framework when the name of this node or of one of its parent is modified
{Node},string result,error pastestringcopy ( string copy , [ {} options ] ) Paste a string copy into this node
ReferenceBase refnode referencefile ( string name , string refpath , [ table options ] ) reference a file content in this node.
nil rename ( string name ) Rename a node
bool,string success,error savefile ( string filename ) load a node to a file
nil seteditable ( boolean editable ) Change the editable state of the node
nil setflags ( ) Set the node flags

Documentation

transform In R

The result of the previous transform in the stack

Can be nil if no previous transform node.

transform Out RW

The result of this transform to compute.

This plug must be computed in the eval. It must include the transform of the In plug.

nil construct ( SceneGraphNode node )

Create and add the transform to the scene graph node's transform stack

To be implemented by the plug-in.
Arguments:

  • node the scene graph node


nil delete ( )

Delete this transform


float angle getaxisrotation ( string axis )

Return the local rotation angle on the axis

To be implemented by the plug-in in order to react to the local rotation manipulator
Arguments:

  • axis

Return:

  • angle


matrix mtx getmatrix ( )

Return the matrix transforming from this node to the next one

Return:

  • mtx


nil gettransformtemplate ( table template )

Add the transform template

To be implemented by the plug-in in order to display a custom template
Arguments:

  • template


matrix mtx getworldmatrix ( )

Return the matrix transforming from this transform to the world

Return:

  • mtx


nil movedown ( )

Move this transform one level up in the transform stack


nil moveup ( )

Move this transform one level up in the transform stack


nil setaxisrotation ( string axis , float angle )

Set the local rotation angle on the axis

To be implemented by the plug-in in order to react to the local rotation manipulator
Arguments:

  • axis
  • angle


nil setmatrix ( matrix mtx )

Set the matrix of this transform

To be implemented by the plug-in in order for the manipulators to modify this transform
Arguments:

  • mtx


nil setmatrix ( matrix mtx )

Set the matrix of this transform

To be implemented by the plug-in in order to react to the viewport look through manipulator
Arguments:

  • mtx


nil settranslation ( point3 t )

Set the translation of this transform

To be implemented by the plug-in in order to react to the translation manipulator
Arguments:

  • t