![]() |
Murl Engine API
Version 2018.3
|
The ICloneTransform graph node interface. More...
#include <murl_graph_i_clone_transform.h>
The ICloneTransform graph node interface.
Nodes implementing the ICloneTransform interface can be connected to Graph::IAnchor nodes, for the purpose of remotely retrieving and setting the most recent world-space transform during traversal, i.e. cloning the transform of another node. Anchors can either be accessed via the IAnchorNodeTarget returned from GetAnchorNodeTarget(), or by setting an anchor slot in the range [0..NUM_ANCHOR_SLOTS-1] via SetAnchorSlot().
See Graph::IAnchor for defining an anchor transform to refer to.
Public Member Functions | |
virtual INode * | GetNodeInterface ()=0 |
Get the mutable Graph::INode interface. More... | |
virtual const INode * | GetNodeInterface () const =0 |
Get the constant Graph::INode interface. More... | |
virtual IAnchorNodeTarget * | GetAnchorNodeTarget ()=0 |
Get the mutable Graph::IAnchorNodeTarget container. More... | |
virtual const IAnchorNodeTarget * | GetAnchorNodeTarget () const =0 |
Get the constant Graph::IAnchorNodeTarget container. More... | |
virtual Bool | SetAnchorSlot (SInt32 slot)=0 |
Set the anchor slot used to source an anchor. More... | |
virtual SInt32 | GetAnchorSlot () const =0 |
Get the anchor slot used source an anchor. More... | |
virtual Bool | SetUsingAbsoluteTransformEnabled (Bool enabled)=0 |
Enable/disable absolute transform. More... | |
virtual Bool | IsUsingAbsoluteTransformEnabled () const =0 |
Check if absolute transforms are enabled. More... | |
virtual Bool | SetAffectRotationEnabled (Bool enabled)=0 |
Enable/disable rotation cloning. More... | |
virtual Bool | IsAffectRotationEnabled () const =0 |
Check if rotation cloning is enabled. More... | |
virtual Bool | SetAffectTranslationEnabled (Bool enabled)=0 |
Enable/disable translation cloning. More... | |
virtual Bool | IsAffectTranslationEnabled () const =0 |
Check if translation cloning is enabled. More... | |
virtual Bool | SetAffectDepthOrderEnabled (Bool enabled)=0 |
Enable/disable depth order cloning. More... | |
virtual Bool | IsAffectDepthOrderEnabled () const =0 |
Check if cloning of the current depth order is enabled. More... | |
|
pure virtual |
Get the mutable Graph::INode interface.
This method returns a mutable pointer to the node's Graph::INode interface, to be able to query or modify common node properties such as active state, visibility or ID.
|
pure virtual |
Get the constant Graph::INode interface.
This method returns a constant pointer to the node's Graph::INode interface, to be able to query common node properties such as active state, visibility or ID.
|
pure virtual |
Get the mutable Graph::IAnchorNodeTarget container.
This method returns a mutable pointer to the node's Graph::IAnchorNodeTarget container, which allows to add, remove or query the referenced Graph::IAnchor node.
|
pure virtual |
Get the constant Graph::IAnchorNodeTarget container.
This method returns a constant pointer to the node's Graph::IAnchorNodeTarget container, which allows to query the referenced Graph::IAnchor node.
Set the anchor slot used to source an anchor.
slot | The anchor slot. |
|
pure virtual |
Get the anchor slot used source an anchor.
|
pure virtual |
Enable/disable absolute transform.
Whereas the matrix returned by the targeted Graph::IAnchor node always represents the anchor's most recent transform in world coordinates, the ICloneTransform may use that matrix in either an absolute fashion (i.e. replace the current world transform by the anchor's), or re-apply it onto the world transform currently on its traversal stack (i.e. multiply it).
enabled | If true, the anchor's transform replaces the current world transform |
|
pure virtual |
Check if absolute transforms are enabled.
Enable/disable rotation cloning.
If disabled, the cloned transform's upper 3x3 matrix will be set to the identity matrix, i.e. the anchor's rotation part will not be cloned.
enabled | If false, rotation cloning is disabled |
|
pure virtual |
Check if rotation cloning is enabled.
Enable/disable translation cloning.
If disabled, the cloned transform's XW, YW and ZW components will be initialized to zero, i.e. the anchor's translation part will not be cloned.
enabled | If false, translation cloning is disabled |
|
pure virtual |
Check if translation cloning is enabled.
Enable/disable depth order cloning.
enabled | If true, the depth order is cloned. |
|
pure virtual |
Check if cloning of the current depth order is enabled.