Murl::Graph::ICloneTransform Interface Referenceabstract

The ICloneTransform graph node interface. More...

#include "murl_graph_i_clone_transform.h"

Inheritance diagram for Murl::Graph::ICloneTransform:

Public Member Functions

virtual INodeGetNodeInterface ()=0
 Get the mutable Graph::INode interface. More...
 
virtual const INodeGetNodeInterface () const =0
 Get the constant Graph::INode interface. More...
 
virtual IAnchorNodeTargetGetAnchorNodeTarget ()=0
 Get the mutable Graph::IAnchorNodeTarget container. More...
 
virtual const IAnchorNodeTargetGetAnchorNodeTarget () 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 SetUsingAbsoluteAnchorEnabled (Bool enabled)=0
 Enable/disable absolute anchor. More...
 
virtual Bool IsUsingAbsoluteAnchorEnabled () 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...
 

Detailed Description

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.

Member Function Documentation

◆ GetNodeInterface() [1/2]

virtual INode* Murl::Graph::ICloneTransform::GetNodeInterface ( )
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.

Returns
The mutable Graph::INode interface, or null if not available

◆ GetNodeInterface() [2/2]

virtual const INode* Murl::Graph::ICloneTransform::GetNodeInterface ( ) const
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.

Returns
The constant Graph::INode interface, or null if not available

◆ GetAnchorNodeTarget() [1/2]

virtual IAnchorNodeTarget* Murl::Graph::ICloneTransform::GetAnchorNodeTarget ( )
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.

Returns
The mutable Graph::IAnchorNodeTarget container, or null if not available

◆ GetAnchorNodeTarget() [2/2]

virtual const IAnchorNodeTarget* Murl::Graph::ICloneTransform::GetAnchorNodeTarget ( ) const
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.

Returns
The constant Graph::IAnchorNodeTarget container, or null if not available

◆ SetAnchorSlot()

virtual Bool Murl::Graph::ICloneTransform::SetAnchorSlot ( SInt32  slot)
pure virtual

Set the anchor slot used to source an anchor.

Parameters
slotThe anchor slot.
Returns
true if successful.

◆ GetAnchorSlot()

virtual SInt32 Murl::Graph::ICloneTransform::GetAnchorSlot ( ) const
pure virtual

Get the anchor slot used source an anchor.

Returns
The anchor slot.

◆ SetUsingAbsoluteTransformEnabled()

virtual Bool Murl::Graph::ICloneTransform::SetUsingAbsoluteTransformEnabled ( Bool  enabled)
pure virtual

Enable/disable absolute transform.

This setting specifies whether the effective world transform (where the given anchor transform is cloned into) should be based on the current calculated world transform (false, default), or the identity transform (true).

Parameters
enabledIf true, the current world transform is replaced by the identity matrix before cloning.
Returns
true if successful

◆ IsUsingAbsoluteTransformEnabled()

virtual Bool Murl::Graph::ICloneTransform::IsUsingAbsoluteTransformEnabled ( ) const
pure virtual

Check if absolute transforms are enabled.

Returns
true if enabled.

◆ SetUsingAbsoluteAnchorEnabled()

virtual Bool Murl::Graph::ICloneTransform::SetUsingAbsoluteAnchorEnabled ( Bool  enabled)
pure virtual

Enable/disable absolute anchor.

If set to false (default), the current world transform gets multiplied with the given enabled anchor transform components (translation and/or rotation) to yield the resulting world transform. If true, the enabled anchor components simply replace the values in the current world transform.

Parameters
enabledIf true, the current world transform's components are directly replaced by the anchor's components.
Returns
true if successful

◆ IsUsingAbsoluteAnchorEnabled()

virtual Bool Murl::Graph::ICloneTransform::IsUsingAbsoluteAnchorEnabled ( ) const
pure virtual

Check if absolute transforms are enabled.

Returns
true if enabled.

◆ SetAffectRotationEnabled()

virtual Bool Murl::Graph::ICloneTransform::SetAffectRotationEnabled ( Bool  enabled)
pure virtual

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.

Parameters
enabledIf false, rotation cloning is disabled
Returns
true if successful

◆ IsAffectRotationEnabled()

virtual Bool Murl::Graph::ICloneTransform::IsAffectRotationEnabled ( ) const
pure virtual

Check if rotation cloning is enabled.

Returns
true if enabled.

◆ SetAffectTranslationEnabled()

virtual Bool Murl::Graph::ICloneTransform::SetAffectTranslationEnabled ( Bool  enabled)
pure virtual

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.

Parameters
enabledIf false, translation cloning is disabled
Returns
true if successful

◆ IsAffectTranslationEnabled()

virtual Bool Murl::Graph::ICloneTransform::IsAffectTranslationEnabled ( ) const
pure virtual

Check if translation cloning is enabled.

Returns
true if enabled.

◆ SetAffectDepthOrderEnabled()

virtual Bool Murl::Graph::ICloneTransform::SetAffectDepthOrderEnabled ( Bool  enabled)
pure virtual

Enable/disable depth order cloning.

Parameters
enabledIf true, the depth order is cloned.
Returns
true if successful.

◆ IsAffectDepthOrderEnabled()

virtual Bool Murl::Graph::ICloneTransform::IsAffectDepthOrderEnabled ( ) const
pure virtual

Check if cloning of the current depth order is enabled.

Returns
true if enabled.

The documentation for this interface was generated from the following file:
  • murl_graph_i_clone_transform.h


Copyright © 2011-2022 Spraylight GmbH.