Slicer 5.9
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
Loading...
Searching...
No Matches
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
vtkMRMLTransformNode Class Reference

MRML node for representing a transformation between this node space and a parent node space. More...

#include <Libs/MRML/Core/vtkMRMLTransformNode.h>

Inheritance diagram for vtkMRMLTransformNode:
Inheritance graph
[legend]
Collaboration diagram for vtkMRMLTransformNode:
Collaboration graph
[legend]

Public Types

typedef vtkMRMLDisplayableNode Superclass
 
- Public Types inherited from vtkMRMLDisplayableNode
enum  { DisplayModifiedEvent = 17000 }
 
typedef vtkMRMLTransformableNode Superclass
 
- Public Types inherited from vtkMRMLTransformableNode
enum  { TransformModifiedEvent = 15000 }
 TransformModifiedEvent is send when the parent transform is modified. More...
 
typedef vtkMRMLStorableNode Superclass
 
- Public Types inherited from vtkMRMLStorableNode
typedef vtkMRMLNode Superclass
 
- Public Types inherited from vtkMRMLNode
enum  {
  HierarchyModifiedEvent = 16000 , IDChangedEvent = 16001 , ReferenceAddedEvent , ReferenceModifiedEvent ,
  ReferenceRemovedEvent , ReferencedNodeModifiedEvent
}
 
enum  ContentModifiedObserveType { ContentModifiedObserveUndefined = -1 , ContentModifiedObserveDisabled = 0 , ContentModifiedObserveEnabled = 1 }
 
typedef std::map< std::string, std::string > ReferencePropertiesType
 Get the node reference properties for a specific referenceRole.
 
typedef vtkObject Superclass
 

Public Member Functions

void ApplyTransform (vtkAbstractTransform *transform) override
 Reimplemented from vtkMRMLTransformableNode.
 
void ApplyTransformMatrix (vtkMatrix4x4 *transformMatrix) override
 
bool CanApplyNonLinearTransforms () const override
 Reimplemented from vtkMRMLTransformableNode.
 
void CreateDefaultDisplayNodes () override
 Create and observe default display node.
 
void CreateDefaultSequenceDisplayNodes () override
 Creates the most appropriate display node class for storing a sequence of these nodes.
 
vtkMRMLStorageNodeCreateDefaultStorageNode () override
 Create default storage node or nullptr if does not have one.
 
vtkMRMLNodeCreateNodeInstance () override
 MRMLNode methods.
 
virtual double * GetCenterOfTransformation ()
 
virtual void GetCenterOfTransformation (double &, double &, double &)
 
virtual void GetCenterOfTransformation (double[3])
 
virtual const char * GetClassName ()
 
vtkMRMLTransformNodeGetFirstCommonParent (vtkMRMLTransformNode *targetNode)
 
virtual int GetMatrixTransformFromNode (vtkMRMLTransformNode *node, vtkMatrix4x4 *transformFromNode)
 
virtual vtkMatrix4x4 * GetMatrixTransformFromParent ()
 
virtual int GetMatrixTransformFromParent (vtkMatrix4x4 *matrix)
 
virtual int GetMatrixTransformFromWorld (vtkMatrix4x4 *transformFromWorld)
 
virtual int GetMatrixTransformToNode (vtkMRMLTransformNode *node, vtkMatrix4x4 *transformToNode)
 
virtual vtkMatrix4x4 * GetMatrixTransformToParent ()
 
virtual int GetMatrixTransformToParent (vtkMatrix4x4 *matrix)
 
virtual int GetMatrixTransformToWorld (vtkMatrix4x4 *transformToWorld)
 
bool GetModifiedSinceRead () override
 
const char * GetNodeTagName () override
 Get node XML tag name (like Volume, Model)
 
virtual int GetReadAsTransformToParent ()
 
void GetTransformFromNode (vtkMRMLTransformNode *node, vtkGeneralTransform *transformFromNode)
 
virtual vtkAbstractTransform * GetTransformFromParent ()
 Transform of this node from parent.
 
vtkAbstractTransform * GetTransformFromParentAs (const char *transformType, bool logErrorIfFails=true, bool modifiableOnly=false)
 
virtual const char * GetTransformFromParentInfo ()
 Get a human-readable description of the transform.
 
void GetTransformFromWorld (vtkGeneralTransform *transformFromWorld)
 
const char * GetTransformInfo (vtkAbstractTransform *inputTransform)
 
void GetTransformToNode (vtkMRMLTransformNode *node, vtkGeneralTransform *transformToNode)
 
virtual vtkAbstractTransform * GetTransformToParent ()
 Transform of this node to parent.
 
vtkAbstractTransform * GetTransformToParentAs (const char *transformType, bool logErrorIfFails=true, bool modifiableOnly=false)
 
virtual const char * GetTransformToParentInfo ()
 Get a human-readable description of the transform.
 
void GetTransformToWorld (vtkGeneralTransform *transformToWorld)
 
vtkMTimeType GetTransformToWorldMTime ()
 Get the latest modification time of the stored transform.
 
void Inverse ()
 
virtual void InverseName ()
 
virtual int IsA (const char *type)
 
virtual int IsComposite ()
 Returns 1 if the transform is a composite transform (a transform that may contain multiple simple transforms)
 
virtual int IsLinear ()
 Returns 1 if transform is a non-composite linear transform, 0 otherwise (if composite transform or non-linear transform)
 
int IsTransformNodeMyChild (vtkMRMLTransformNode *node)
 Returns 1 if the node is one of the this node's descendants.
 
int IsTransformNodeMyParent (vtkMRMLTransformNode *node)
 
int IsTransformToNodeLinear (vtkMRMLTransformNode *node)
 1 if all the transforms between nodes are linear, 0 otherwise
 
int IsTransformToWorldLinear ()
 1 if all the transforms to the top are linear, 0 otherwise
 
void PrintSelf (ostream &os, vtkIndent indent) override
 
void ProcessMRMLEvents (vtkObject *, unsigned long, void *) override
 alternative method to propagate events generated in Transform nodes
 
virtual void ReadAsTransformToParentOff ()
 
virtual void ReadAsTransformToParentOn ()
 
void ReadXMLAttributes (const char **atts) override
 Read node attributes from XML file.
 
virtual int SetAndObserveMatrixTransformFromParent (vtkMatrix4x4 *matrix)
 
virtual int SetAndObserveMatrixTransformToParent (vtkMatrix4x4 *matrix)
 
void SetAndObserveTransformFromParent (vtkAbstractTransform *transform)
 
void SetAndObserveTransformToParent (vtkAbstractTransform *transform)
 
virtual void SetCenterOfTransformation (const double xyz[3])
 
virtual void SetCenterOfTransformation (double x, double y, double z)
 The transformation center (rotation/scaling) that is rotated/scaled around.
 
virtual int SetMatrixTransformFromParent (vtkMatrix4x4 *matrix)
 
virtual int SetMatrixTransformToParent (vtkMatrix4x4 *matrix)
 
virtual void SetReadAsTransformToParent (int)
 
virtual int Split ()
 
virtual void TransformModified ()
 
void UpdateScene (vtkMRMLScene *scene) override
 Finds the storage node and read the data.
 
 vtkMRMLCopyContentMacro (vtkMRMLTransformNode)
 
void WriteXML (ostream &of, int indent) override
 Write this node's information to a MRML file in XML format.
 
- Public Member Functions inherited from vtkMRMLDisplayableNode
void AddAndObserveDisplayNodeID (const char *displayNodeID)
 
void Copy (vtkMRMLNode *node) override
 Copy the node's attributes to this object.
 
virtual void GetBounds (double bounds[6])
 
virtual int GetDisplayClassVisibility (const char *nodeClass)
 
vtkMRMLDisplayNodeGetDisplayNode ()
 
const char * GetDisplayNodeID ()
 
virtual const char * GetDisplayNodeReferenceRole ()
 
virtual int GetDisplayVisibility ()
 
vtkMRMLDisplayNodeGetNthDisplayNode (int n)
 
const char * GetNthDisplayNodeID (int n)
 
int GetNumberOfDisplayNodes ()
 
virtual void GetRASBounds (double bounds[6])
 
bool HasDisplayNodeID (const char *displayNodeID)
 Return true if displayNodeID is in the display node ID list.
 
void PrintSelf (ostream &os, vtkIndent indent) override
 
void RemoveAllDisplayNodeIDs ()
 Remove all display node IDs and associated display nodes.
 
void RemoveNthDisplayNodeID (int n)
 
void SetAndObserveDisplayNodeID (const char *displayNodeID)
 
void SetAndObserveNthDisplayNodeID (int n, const char *displayNodeID)
 
virtual void SetDisplayClassVisibility (const char *nodeClass, int visible)
 
virtual void SetDisplayVisibility (int visible)
 
void SetSelectable (int) override
 
virtual void WriteCLI (std::vector< std::string > &vtkNotUsed(commandLine), std::string vtkNotUsed(prefix), int vtkNotUsed(coordinateSystemFlag)=vtkMRMLStorageNode::CoordinateSystemRAS, int vtkNotUsed(multipleFlag)=1)
 
- Public Member Functions inherited from vtkMRMLTransformableNode
virtual vtkImplicitFunction * GetImplicitFunctionWorld ()
 
vtkMRMLTransformNodeGetParentTransformNode ()
 Associated transform MRML node.
 
const char * GetTransformNodeID ()
 Get referenced transform node id.
 
bool HardenTransform ()
 
void PrintSelf (ostream &os, vtkIndent indent) override
 
bool SetAndObserveTransformNodeID (const char *transformNodeID)
 
virtual void TransformPointFromWorld (const double inWorld[3], double outLocal[3])
 
virtual void TransformPointFromWorld (const vtkVector3d &inWorld, vtkVector3d &outLocal)
 
virtual void TransformPointToWorld (const double inLocal[3], double outWorld[3])
 
virtual void TransformPointToWorld (const vtkVector3d &inLocal, vtkVector3d &outWorld)
 
- Public Member Functions inherited from vtkMRMLStorableNode
void AddAndObserveStorageNodeID (const char *storageNodeID)
 
virtual bool AddDefaultStorageNode (const char *filename=nullptr)
 
void Copy (vtkMRMLNode *node) override
 Copy node contents from another node of the same type. Reimplemented to copy default sequence storage node class.
 
virtual vtkMRMLStorageNodeCreateDefaultSequenceStorageNode ()
 
virtual std::string GetDefaultSequenceStorageNodeClassName ()
 
virtual std::string GetDefaultStorageNodeClassName (const char *filename=nullptr)
 
vtkMRMLStorageNodeGetNthStorageNode (int n)
 Get associated display MRML node.
 
const char * GetNthStorageNodeID (int n)
 
int GetNumberOfStorageNodes ()
 
const char * GetSlicerDataType ()
 
vtkMRMLStorageNodeGetStorageNode ()
 
const char * GetStorageNodeID ()
 
virtual vtkTagTableGetUserTagTable ()
 Methods for user-specified metadata.
 
bool HasStorageNodeID (const char *storageNodeID)
 Return true if storageNodeID is in the storage node ID list.
 
void PrintSelf (ostream &os, vtkIndent indent) override
 
void SetAndObserveNthStorageNodeID (int n, const char *storageNodeID)
 
void SetAndObserveStorageNodeID (const char *storageNodeID)
 String ID of the storage MRML node.
 
virtual void SetDefaultSequenceStorageNodeClassName (std::string)
 
void SetSlicerDataType (const char *type)
 
virtual void StorableModified ()
 
 vtkMRMLCopyContentMacro (vtkMRMLStorableNode)
 
- Public Member Functions inherited from vtkMRMLNode
vtkMRMLNodeAddAndObserveNodeReferenceID (const char *referenceRole, const char *referencedNodeID, vtkIntArray *events=nullptr, ContentModifiedObserveType observeContentModifiedEvents=ContentModifiedObserveUndefined)
 Add and observe a reference node from this node for a specific referenceRole.
 
vtkMRMLNodeAddNodeReferenceID (const char *referenceRole, const char *referencedNodeID)
 Convenience method that adds a referencedNodeID at the end of the list.
 
void AddNodeReferenceRole (const char *referenceRole, const char *mrmlAttributeName=nullptr, vtkIntArray *events=nullptr, bool observeContentModifiedEvents=false)
 Add a referenceRole.
 
virtual void AddToSceneOff ()
 
virtual void AddToSceneOn ()
 
void ClearNodeReferenceProperties (const std::string &referenceRole)
 Remove all node reference properties for a specific referenceRole.
 
void ClearNthNodeReferenceProperties (const std::string &referenceRole, int n)
 
virtual void CopyContent (vtkMRMLNode *node, bool deepCopy=true)
 Copy node contents from another node of the same type. Does not copy node ID, Scene, Name, SingletonTag, HideFromEditors, AddToScene, UndoEnabled, and node references. If deepCopy is set to false then a shallow copy of bulk data (such as image or mesh data) could be made; copying may be faster but the node may share some data with the source node instead of creating an independent copy.
 
virtual void CopyReferences (vtkMRMLNode *node)
 Copy the references of the node into this.
 
void CopyWithScene (vtkMRMLNode *node)
 Copy everything (including Scene and ID) from another node of the same type.
 
void DisableModifiedEventOff ()
 
void DisableModifiedEventOn ()
 
virtual int EndModify (int previousDisableModifiedEventState)
 End modifying the node.
 
virtual int GetAddToScene ()
 node added to MRML scene.
 
const char * GetAttribute (const char *name)
 Get value of a name value pair attribute.
 
std::vector< std::string > GetAttributeNames ()
 Get all attribute names.
 
void GetAttributeNames (vtkStringArray *attributeNames)
 Get all attribute names. Python-wrappable version.
 
virtual vtkIntArray * GetContentModifiedEvents ()
 
int GetCustomModifiedEventPending (int eventId)
 
virtual char * GetDescription ()
 
virtual int GetDisableModifiedEvent ()
 Turn on/off generating InvokeEvent for set macros.
 
virtual int GetHideFromEditors ()
 Describes if the node is hidden.
 
virtual char * GetID ()
 ID use by other nodes to reference this node in XML.
 
virtual int GetInMRMLCallbackFlag ()
 Flags to avoid event loops.
 
virtual int GetModifiedEventPending ()
 
virtual char * GetName ()
 
vtkMRMLNodeGetNodeReference (const char *referenceRole)
 
const char * GetNodeReferenceID (const char *referenceRole)
 Utility function that returns the first node id for a specific referenceRole.
 
void GetNodeReferenceIDs (const char *referenceRole, std::vector< const char * > &referencedNodeIDs)
 Return a list of the referenced node IDs.
 
const ReferencePropertiesTypeGetNodeReferenceProperties (const char *referenceRole)
 
std::string GetNodeReferenceProperty (const std::string &referenceRole, const std::string &propertyName)
 Get the node reference property for a specific referenceRole.
 
std::string GetNodeReferencePropertyName (const std::string &referenceRole, int propertyIndex)
 Get the name of the Nth node reference property for a specific referenceRole.
 
std::vector< std::string > GetNodeReferencePropertyNames (const std::string &referenceRole)
 Get the names of all node reference properties for a specific referenceRole.
 
void GetNodeReferenceRoles (std::vector< std::string > &roles)
 
void GetNodeReferences (const char *referenceRole, std::vector< vtkMRMLNode * > &nodes)
 Return a list of the referenced nodes.
 
vtkMRMLNodeGetNthNodeReference (const char *referenceRole, int n)
 Get referenced MRML node for a specific referenceRole.
 
const char * GetNthNodeReferenceID (const char *referenceRole, int n)
 Return the string of the Nth node ID for a specific reference role.
 
const ReferencePropertiesTypeGetNthNodeReferenceProperties (const char *referenceRole, int n)
 
std::string GetNthNodeReferenceProperty (const std::string &referenceRole, int n, const std::string &propertyName)
 
std::string GetNthNodeReferencePropertyName (const std::string &referenceRole, int referenceIndex, int propertyIndex)
 
std::vector< std::string > GetNthNodeReferencePropertyNames (const std::string &referenceRole, int n)
 
const char * GetNthNodeReferenceRole (int n)
 
int GetNumberOfNodeReferenceProperties (const std::string &referenceRole)
 Get the number of node reference properties for a specific referenceRole.
 
int GetNumberOfNodeReferenceRoles ()
 
int GetNumberOfNodeReferences (const char *referenceRole)
 Return the number of node IDs for a specific reference role (and nodes as they always have the same size).
 
int GetNumberOfNthNodeReferenceProperties (const std::string &referenceRole, int n)
 
virtual int GetSaveWithScene ()
 Save node with MRML scene.
 
virtual vtkMRMLSceneGetScene ()
 Get the scene this node has been added to.
 
virtual int GetSelectable ()
 Describes if the node is selectable.
 
virtual int GetSelected ()
 Get/Set for Selected.
 
virtual char * GetSingletonTag ()
 
virtual const char * GetTypeDisplayName ()
 
virtual bool GetUndoEnabled ()
 
virtual bool HasCopyContent () const
 Returns true if the class supports deep and shallow copying node content.
 
bool HasNodeReferenceID (const char *referenceRole, const char *referencedNodeID)
 Return true if referencedNodeID is in the node ID list for a specific referenceRole.
 
virtual void HideFromEditorsOff ()
 
virtual void HideFromEditorsOn ()
 
virtual void InvokeCustomModifiedEvent (int eventId, void *callData=nullptr)
 This method allows the node to compress events.
 
virtual int InvokePendingModifiedEvent ()
 Invokes any modified events that are pending.
 
bool IsSingleton ()
 
void Modified () override
 Customized version of Modified() allowing to compress vtkCommand::ModifiedEvent.
 
virtual void OnNodeAddedToScene ()
 
void PrintSelf (ostream &os, vtkIndent indent) override
 
virtual void ProcessChildNode (vtkMRMLNode *)
 Set dependencies between this node and a child node when parsing XML file.
 
void RemoveAttribute (const char *name)
 Remove attribute with the specified name.
 
void RemoveNodeReferenceIDs (const char *referenceRole)
 Remove all node IDs and associated nodes for a specific referenceRole.
 
void RemoveNodeReferenceProperty (const std::string &referenceRole, const std::string &propertyName)
 Remove a node reference property for a specific referenceRole.
 
void RemoveNthNodeReferenceID (const char *referenceRole, int n)
 Convenience method that removes the Nth node ID from the list.
 
void RemoveNthNodeReferenceProperty (const std::string &referenceRole, int n, const std::string &propertyName)
 
virtual void Reset (vtkMRMLNode *defaultNode)
 Reset node attributes to the initial state as defined in the constructor or the passed default node.
 
virtual void SaveWithSceneOff ()
 
virtual void SaveWithSceneOn ()
 
virtual void SelectableOff ()
 
virtual void SelectableOn ()
 
virtual void SelectedOff ()
 
virtual void SelectedOn ()
 
virtual void SetAddToScene (int)
 
void SetAddToSceneNoModify (int value)
 
vtkMRMLNodeSetAndObserveNodeReferenceID (const char *referenceRole, const char *referencedNodeID, vtkIntArray *events=nullptr, ContentModifiedObserveType observeContentModifiedEvents=ContentModifiedObserveUndefined)
 Set and observe a reference node from this node for a specific referenceRole.
 
vtkMRMLNodeSetAndObserveNthNodeReferenceID (const char *referenceRole, int n, const char *referencedNodeID, vtkIntArray *events=nullptr, ContentModifiedObserveType observeContentModifiedEvents=ContentModifiedObserveUndefined)
 Set and observe the Nth node ID for a specific reference role.
 
void SetAttribute (const char *name, const char *value)
 Set a name value pair attribute.
 
virtual void SetDescription (const char *)
 Text description of this node, to be set by the user.
 
void SetDisableModifiedEvent (int onOff)
 
virtual void SetHideFromEditors (int)
 
void SetInMRMLCallbackFlag (int flag)
 
virtual void SetName (const char *)
 Name of this node, to be set by the user.
 
vtkMRMLNodeSetNodeReferenceID (const char *referenceRole, const char *referencedNodeID)
 Set a reference to a node with specified nodeID from this node for a specific referenceRole.
 
void SetNodeReferenceProperty (const std::string &referenceRole, const std::string &propertyName, const std::string &value)
 Set the node reference property for a specific referenceRole.
 
vtkMRMLNodeSetNthNodeReferenceID (const char *referenceRole, int n, const char *referencedNodeID)
 Set a N-th reference from this node with specified referencedNodeID for a specific referenceRole.
 
void SetNthNodeReferenceProperty (const std::string &referenceRole, int n, const std::string &propertyName, const std::string &value)
 
virtual void SetSaveWithScene (int)
 
virtual void SetScene (vtkMRMLScene *scene)
 This method is for internal use only. Use AddNode method of vtkMRMLScene to add a node to the scene.
 
virtual void SetSceneReferences ()
 Update the references of the node to the scene.
 
virtual void SetSelected (int)
 
void SetSingletonOff ()
 
void SetSingletonOn ()
 
virtual void SetSingletonTag (const char *)
 Tag that make this node a singleton in the scene.
 
virtual void SetUndoEnabled (bool)
 
virtual int StartModify ()
 Start modifying the node. Disable Modify events.
 
virtual void UndoEnabledOff ()
 
virtual void UndoEnabledOn ()
 
virtual void UpdateReferenceID (const char *oldID, const char *newID)
 Update the stored reference to another node in the scene.
 
virtual void UpdateReferences ()
 The method should remove all pointers and observations to all nodes that are not in the scene anymore.
 
const char * URLDecodeString (const char *inString)
 Decode a URL string.
 
const char * URLEncodeString (const char *inString)
 Encode a URL string.
 
virtual void WriteNodeBodyXML (ostream &of, int indent)
 Write this node's body to a MRML file in XML format.
 
std::string XMLAttributeDecodeString (const std::string &inString)
 Decode an XML attribute string.
 
std::string XMLAttributeEncodeString (const std::string &inString)
 Encode an XML attribute string (replaces special characters by code sequences)
 

Static Public Member Functions

static bool AreTransformsEqual (vtkAbstractTransform *transform1, vtkAbstractTransform *transform2)
 
static int DeepCopyTransform (vtkAbstractTransform *dst, vtkAbstractTransform *src)
 
static void FlattenGeneralTransform (vtkCollection *outputTransformList, vtkAbstractTransform *inputTransform)
 
static const char * GetFixedNodeReferenceRole ()
 Reference role name from the transform node to the moving volume or fiducial node that participated in registration.
 
static int GetMatrixTransformBetweenNodes (vtkMRMLTransformNode *sourceNode, vtkMRMLTransformNode *targetNode, vtkMatrix4x4 *transformSourceToTarget)
 
static const char * GetMovingNodeReferenceRole ()
 Reference role name from the transform node to the moving volume or fiducial node that participated in registration.
 
static void GetTransformBetweenNodes (vtkMRMLTransformNode *sourceNode, vtkMRMLTransformNode *targetNode, vtkGeneralTransform *transformSourceToTarget)
 
static bool IsAbstractTransformComputedFromInverse (vtkAbstractTransform *abstractTransform)
 
static bool IsGeneralTransformLinear (vtkAbstractTransform *inputTransform, vtkTransform *concatenatedLinearTransform=nullptr)
 
static int IsTypeOf (const char *type)
 
static vtkMRMLTransformNodeNew ()
 
static vtkMRMLTransformNodeSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from vtkMRMLDisplayableNode
static int IsTypeOf (const char *type)
 
static vtkMRMLDisplayableNodeSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from vtkMRMLTransformableNode
static int IsTypeOf (const char *type)
 
static vtkMRMLTransformableNodeSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from vtkMRMLStorableNode
static int IsTypeOf (const char *type)
 
static vtkMRMLStorableNodeSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from vtkMRMLNode
static int IsTypeOf (const char *type)
 
static vtkMRMLNodeSafeDownCast (vtkObject *o)
 

Protected Member Functions

virtual vtkAbstractTransform * GetAbstractTransformAs (vtkAbstractTransform *inputTransform, const char *transformClassName, bool logErrorIfFails)
 
void operator= (const vtkMRMLTransformNode &)
 
virtual void SetAndObserveTransform (vtkAbstractTransform **originalTransformPtr, vtkAbstractTransform **inverseTransformPtr, vtkAbstractTransform *transform)
 Sets and observes a transform and deletes the inverse (so that the inverse will be computed automatically)
 
 vtkMRMLTransformNode ()
 
 vtkMRMLTransformNode (const vtkMRMLTransformNode &)
 
 ~vtkMRMLTransformNode () override
 
- Protected Member Functions inherited from vtkMRMLDisplayableNode
virtual const char * GetDisplayNodeReferenceMRMLAttributeName ()
 
void OnNodeReferenceAdded (vtkMRMLNodeReference *reference) override
 Called when a node reference ID is added (list size increased).
 
void OnNodeReferenceModified (vtkMRMLNodeReference *reference) override
 Called when a node reference ID is modified.
 
void OnNodeReferenceRemoved (vtkMRMLNodeReference *reference) override
 Called after a node reference ID is removed (list size decreased).
 
void operator= (const vtkMRMLDisplayableNode &)
 
 vtkMRMLDisplayableNode ()
 
 vtkMRMLDisplayableNode (const vtkMRMLDisplayableNode &)
 
 ~vtkMRMLDisplayableNode () override
 
- Protected Member Functions inherited from vtkMRMLTransformableNode
virtual const char * GetTransformNodeReferenceMRMLAttributeName ()
 
virtual const char * GetTransformNodeReferenceRole ()
 
void OnNodeReferenceAdded (vtkMRMLNodeReference *reference) override
 Called when a node reference ID is added (list size increased).
 
void OnNodeReferenceModified (vtkMRMLNodeReference *reference) override
 Called when a node reference ID is modified.
 
void OnNodeReferenceRemoved (vtkMRMLNodeReference *reference) override
 Called after a node reference ID is removed (list size decreased).
 
virtual void OnTransformNodeReferenceChanged (vtkMRMLTransformNode *transformNode)
 Called when transform node reference added/modified/removed.
 
void operator= (const vtkMRMLTransformableNode &)
 
 vtkMRMLTransformableNode ()
 
 vtkMRMLTransformableNode (const vtkMRMLTransformableNode &)
 
 ~vtkMRMLTransformableNode () override
 
- Protected Member Functions inherited from vtkMRMLStorableNode
virtual const char * GetStorageNodeReferenceMRMLAttributeName ()
 
virtual const char * GetStorageNodeReferenceRole ()
 
virtual vtkTimeStamp GetStoredTime ()
 
void operator= (const vtkMRMLStorableNode &)
 
 vtkMRMLStorableNode ()
 
 vtkMRMLStorableNode (const vtkMRMLStorableNode &)
 
 ~vtkMRMLStorableNode () override
 
- Protected Member Functions inherited from vtkMRMLNode
virtual const char * GetMRMLAttributeNameFromReferenceRole (const char *refRole)
 Return the mrml attribute name (if found) associated with a reference role. Return 0 otherwise.
 
virtual const char * GetReferenceRoleFromMRMLAttributeName (const char *attName)
 Return the reference role (if found) associated with the attribute name found in a MRML scene file. Return 0 otherwise.
 
virtual char * GetTempURLString ()
 
void GetUpdatedReferencedNodeEventList (int &oldReferencedNodeUseCount, int &newReferencedNodeUseCount, vtkIntArray *oldConsolidatedEventList, vtkIntArray *newConsolidatedEventList, vtkMRMLNode *oldReferencedNode, vtkMRMLNode *newReferencedNode, vtkMRMLNodeReference *referenceToIgnore, vtkIntArray *newEvents, bool newObserveContentModifiedEvents)
 
virtual void InvalidateNodeReferences ()
 
virtual bool IsReferenceRoleGeneric (const char *refRole)
 Return true if the reference role is generic (ends with '/') or false otherwise.
 
std::string NodeReferencePropertyDecodeString (const std::string &inString)
 Decode a node reference property string.
 
std::string NodeReferencePropertyEncodeString (const std::string &inString)
 Encode a node reference property string (replaces special characters by code sequences)
 
void operator= (const vtkMRMLNode &)
 
void ParseReferencesAttribute (const char *attValue, std::set< std::string > &references)
 
void RemoveInvalidReferences (const std::set< std::string > &validNodeIDs)
 
virtual void SetTempURLString (const char *)
 Get/Set the string used to manage encoding/decoding of strings/URLs with special characters.
 
vtkMRMLNodeUpdateNodeReferenceEventObserver (vtkMRMLNode *oldReferencedNode, vtkMRMLNode *newReferencedNode, vtkIntArray *newEvents, bool newObserveContentModifiedEvents, vtkMRMLNodeReference *referenceToIgnore)
 
virtual void UpdateNodeReferences (const char *referenceRole=nullptr)
 
virtual void UpdateNthNodeReference (const char *referenceRole, int n)
 
 vtkMRMLNode ()
 
 vtkMRMLNode (const vtkMRMLNode &)
 
 ~vtkMRMLNode () override
 critical to have a virtual destructor!
 

Protected Attributes

vtkMatrix4x4 * CachedMatrixTransformFromParent
 
vtkMatrix4x4 * CachedMatrixTransformToParent
 
double CenterOfTransformation [3] {0.0, 0.0, 0.0}
 
int ReadAsTransformToParent
 
vtkAbstractTransform * TransformFromParent
 
std::string TransformInfo
 
vtkAbstractTransform * TransformToParent
 
- Protected Attributes inherited from vtkMRMLStorableNode
std::string DefaultSequenceStorageNodeClassName
 
std::string SlicerDataType
 
vtkTimeStamp StorableModifiedTime
 
vtkTagTableUserTagTable
 
- Protected Attributes inherited from vtkMRMLNode
int AddToScene {1}
 
AttributesType Attributes
 
vtkIntArray * ContentModifiedEvents
 
char * Description {nullptr}
 
int HideFromEditors {0}
 
char * ID {nullptr}
 
int InMRMLCallbackFlag {0}
 Flag to avoid event loops.
 
vtkCallbackCommand * MRMLCallbackCommand
 Holders for MRML callbacks.
 
vtkObserverManagerMRMLObserverManager
 
char * Name {nullptr}
 
NodeReferenceEventsType NodeReferenceEvents
 
std::map< std::string, std::string > NodeReferenceMRMLAttributeNames
 
NodeReferencesType NodeReferences
 
int SaveWithScene {true}
 
vtkWeakPointer< vtkMRMLSceneScene
 
int Selectable {1}
 
int Selected {0}
 
bool UndoEnabled {false}
 

Additional Inherited Members

- Protected Types inherited from vtkMRMLNode
typedef std::map< std::string, std::string > AttributesType
 
typedef std::map< std::string, NodeReferenceEventListNodeReferenceEventsType
 
typedef std::vector< vtkSmartPointer< vtkMRMLNodeReference > > NodeReferenceListType
 
typedef std::map< std::string, NodeReferenceListTypeNodeReferencesType
 
- Static Protected Member Functions inherited from vtkMRMLNode
static void MRMLCallback (vtkObject *caller, unsigned long eid, void *clientData, void *callData)
 
- Static Protected Attributes inherited from vtkMRMLDisplayableNode
static const char * DisplayNodeReferenceMRMLAttributeName
 
static const char * DisplayNodeReferenceRole
 
- Static Protected Attributes inherited from vtkMRMLTransformableNode
static const char * TransformNodeReferenceMRMLAttributeName
 
static const char * TransformNodeReferenceRole
 
- Static Protected Attributes inherited from vtkMRMLStorableNode
static const char * StorageNodeReferenceMRMLAttributeName
 
static const char * StorageNodeReferenceRole
 

Detailed Description

MRML node for representing a transformation between this node space and a parent node space.

General Transformation between this node space and a parent node space. A vtkMRMLTransformableNode::TransformModifiedEvent is called if the transforms are changed. ModifiedEvent is called if either transforms or other properties of the object are changed.

Definition at line 33 of file vtkMRMLTransformNode.h.

Member Typedef Documentation

◆ Superclass

Definition at line 37 of file vtkMRMLTransformNode.h.

Constructor & Destructor Documentation

◆ vtkMRMLTransformNode() [1/2]

vtkMRMLTransformNode::vtkMRMLTransformNode ( )
protected

◆ ~vtkMRMLTransformNode()

vtkMRMLTransformNode::~vtkMRMLTransformNode ( )
overrideprotected

◆ vtkMRMLTransformNode() [2/2]

vtkMRMLTransformNode::vtkMRMLTransformNode ( const vtkMRMLTransformNode & )
protected

Member Function Documentation

◆ ApplyTransform()

void vtkMRMLTransformNode::ApplyTransform ( vtkAbstractTransform * transform)
overridevirtual

Reimplemented from vtkMRMLTransformableNode.

Reimplemented from vtkMRMLTransformableNode.

◆ ApplyTransformMatrix()

void vtkMRMLTransformNode::ApplyTransformMatrix ( vtkMatrix4x4 * transformMatrix)
overridevirtual

Applies a transformation matrix to the current matrix. Difference compared to ApplyTransform(): if the current transform is a linear then instead of creating a composite transform, the current and applicable transform matrices are multiplied and stored in a simple (non-composite) linear transform. If the current transformation was non-linear then the method is equivalent to ApplyTransform (creates a composite transform).

Reimplemented from vtkMRMLTransformableNode.

◆ AreTransformsEqual()

static bool vtkMRMLTransformNode::AreTransformsEqual ( vtkAbstractTransform * transform1,
vtkAbstractTransform * transform2 )
static

Return true if the two transforms are equal. A transform object is considered to be the same if it is made up of the same flattened list of transforms.

◆ CanApplyNonLinearTransforms()

bool vtkMRMLTransformNode::CanApplyNonLinearTransforms ( ) const
overridevirtual

Reimplemented from vtkMRMLTransformableNode.

Reimplemented from vtkMRMLTransformableNode.

◆ CreateDefaultDisplayNodes()

void vtkMRMLTransformNode::CreateDefaultDisplayNodes ( )
overridevirtual

Create and observe default display node.

Reimplemented from vtkMRMLDisplayableNode.

◆ CreateDefaultSequenceDisplayNodes()

void vtkMRMLTransformNode::CreateDefaultSequenceDisplayNodes ( )
overridevirtual

Creates the most appropriate display node class for storing a sequence of these nodes.

Reimplemented from vtkMRMLDisplayableNode.

◆ CreateDefaultStorageNode()

vtkMRMLStorageNode * vtkMRMLTransformNode::CreateDefaultStorageNode ( )
overridevirtual

Create default storage node or nullptr if does not have one.

Reimplemented from vtkMRMLStorableNode.

◆ CreateNodeInstance()

vtkMRMLNode * vtkMRMLTransformNode::CreateNodeInstance ( )
overridevirtual

MRMLNode methods.

Implements vtkMRMLDisplayableNode.

◆ DeepCopyTransform()

static int vtkMRMLTransformNode::DeepCopyTransform ( vtkAbstractTransform * dst,
vtkAbstractTransform * src )
static

Some transforms have DeepCopy method that actually only creates a shallow copy (such as vtkGeneralTransform and vtkGridTransform). This method creates a true deep copy of a transform. Returns nonzero on success.

◆ FlattenGeneralTransform()

static void vtkMRMLTransformNode::FlattenGeneralTransform ( vtkCollection * outputTransformList,
vtkAbstractTransform * inputTransform )
static

Creates a shallow copy of an input composite transform (that can contain a complex hierarchy of transforms) into a flat list of transforms. This is useful for simplifying serialization for copying and writing to file.

◆ GetAbstractTransformAs()

virtual vtkAbstractTransform * vtkMRMLTransformNode::GetAbstractTransformAs ( vtkAbstractTransform * inputTransform,
const char * transformClassName,
bool logErrorIfFails )
protectedvirtual

Retrieves a simple transform from a generic transform If the generic transform is composed of multiple transform or contains a different transform type then it returns nullptr.

◆ GetCenterOfTransformation() [1/3]

virtual double * vtkMRMLTransformNode::GetCenterOfTransformation ( )
virtual

◆ GetCenterOfTransformation() [2/3]

virtual void vtkMRMLTransformNode::GetCenterOfTransformation ( double & ,
double & ,
double &  )
virtual

◆ GetCenterOfTransformation() [3/3]

virtual void vtkMRMLTransformNode::GetCenterOfTransformation ( double [3])
virtual

◆ GetClassName()

virtual const char * vtkMRMLTransformNode::GetClassName ( )
virtual

◆ GetFirstCommonParent()

vtkMRMLTransformNode * vtkMRMLTransformNode::GetFirstCommonParent ( vtkMRMLTransformNode * targetNode)

Get the first common parent of he current and the target transform node If there are no common parents then nullptr is returned

Parameters
targetNodeThe transform for which the current transform will be determined

◆ GetFixedNodeReferenceRole()

static const char * vtkMRMLTransformNode::GetFixedNodeReferenceRole ( )
inlinestatic

Reference role name from the transform node to the moving volume or fiducial node that participated in registration.

Definition at line 371 of file vtkMRMLTransformNode.h.

◆ GetMatrixTransformBetweenNodes()

static int vtkMRMLTransformNode::GetMatrixTransformBetweenNodes ( vtkMRMLTransformNode * sourceNode,
vtkMRMLTransformNode * targetNode,
vtkMatrix4x4 * transformSourceToTarget )
static

Get concatenated transforms from source to target node Source and target nodes are allowed to be nullptr, which means that transform is the world transform. Returns 0 if the transform is not linear (cannot be described by a matrix).

◆ GetMatrixTransformFromNode()

virtual int vtkMRMLTransformNode::GetMatrixTransformFromNode ( vtkMRMLTransformNode * node,
vtkMatrix4x4 * transformFromNode )
virtual

Get concatenated transforms from the specified node. Returns 0 if the transform is not linear (cannot be described by a matrix).

See also
GetMatrixTransformBetweenNodes

◆ GetMatrixTransformFromParent() [1/2]

virtual vtkMatrix4x4 * vtkMRMLTransformNode::GetMatrixTransformFromParent ( )
virtual

Set a new matrix transform of this node from parent node.

Deprecated
Use GetMatrixTransformFromParent(vtkMatrix4x4*) instead. The method returns a cached copy of the transform, so modification of the matrix does not alter the transform node.

◆ GetMatrixTransformFromParent() [2/2]

virtual int vtkMRMLTransformNode::GetMatrixTransformFromParent ( vtkMatrix4x4 * matrix)
virtual

Get the vtkMatrix4x4 transform of this node from parent node Returns 0 if the transform is not linear or there is an error.

◆ GetMatrixTransformFromWorld()

virtual int vtkMRMLTransformNode::GetMatrixTransformFromWorld ( vtkMatrix4x4 * transformFromWorld)
virtual

Get concatenated transforms from world. Returns 0 if the transform is not linear (cannot be described by a matrix).

See also
GetMatrixTransformBetweenNodes

◆ GetMatrixTransformToNode()

virtual int vtkMRMLTransformNode::GetMatrixTransformToNode ( vtkMRMLTransformNode * node,
vtkMatrix4x4 * transformToNode )
virtual

Get concatenated transforms to the specified node. Returns 0 if the transform is not linear (cannot be described by a matrix).

See also
GetMatrixTransformBetweenNodes

◆ GetMatrixTransformToParent() [1/2]

virtual vtkMatrix4x4 * vtkMRMLTransformNode::GetMatrixTransformToParent ( )
virtual

Set a new matrix transform of this node to parent node.

Deprecated
Use GetMatrixTransformToParent(vtkMatrix4x4*) instead. The method returns a cached copy of the transform, so modification of the matrix does not alter the transform node.

◆ GetMatrixTransformToParent() [2/2]

virtual int vtkMRMLTransformNode::GetMatrixTransformToParent ( vtkMatrix4x4 * matrix)
virtual

Get the vtkMatrix4x4 transform of this node to parent node Returns 0 if the transform is not linear or there is an error.

◆ GetMatrixTransformToWorld()

virtual int vtkMRMLTransformNode::GetMatrixTransformToWorld ( vtkMatrix4x4 * transformToWorld)
virtual

Get concatenated transforms to world. Returns 0 if the transform is not linear (cannot be described by a matrix).

See also
GetMatrixTransformBetweenNodes

◆ GetModifiedSinceRead()

bool vtkMRMLTransformNode::GetModifiedSinceRead ( )
overridevirtual

Returns true if the node is more recent than the file on disk. This information can be used by the application to know which node has been modified since it has been last read or written. Only storable properties are considered: even if a "non storable" property (e.g. color of a mesh) is modified after the node is being loaded, GetModifiedSinceRead() should return false; the new property value won't be stored on file (only in the MRML scene). By default, calling Modified() on the node doesn't make the node "modified since read", only calling Modified() on StorableModifiedTime does. GetModifiedSinceRead() can be overwritten to handle special storable property modification time.

See also
GetStoredTime() StorableModifiedTime Modified() StorableModified()

Reimplemented from vtkMRMLStorableNode.

◆ GetMovingNodeReferenceRole()

static const char * vtkMRMLTransformNode::GetMovingNodeReferenceRole ( )
inlinestatic

Reference role name from the transform node to the moving volume or fiducial node that participated in registration.

Definition at line 369 of file vtkMRMLTransformNode.h.

◆ GetNodeTagName()

const char * vtkMRMLTransformNode::GetNodeTagName ( )
inlineoverridevirtual

Get node XML tag name (like Volume, Model)

Implements vtkMRMLDisplayableNode.

Definition at line 56 of file vtkMRMLTransformNode.h.

◆ GetReadAsTransformToParent()

virtual int vtkMRMLTransformNode::GetReadAsTransformToParent ( )
virtual

Get/Set for ReadAsTransformToParent Indicates that the transform in the storage node has to be interpreted as a transformToParent (as opposed to the default ITK-style transformFromParent). Since writing of ITK inverse transform is implemented, this option is not needed anymore and kept only for backward compatibility: when a transform is read from an old scene file that has ReadWriteAsTransformToParent="1" then the transform is interpreted as such. Transforms are now always written as transformFromParent.

◆ GetTransformBetweenNodes()

static void vtkMRMLTransformNode::GetTransformBetweenNodes ( vtkMRMLTransformNode * sourceNode,
vtkMRMLTransformNode * targetNode,
vtkGeneralTransform * transformSourceToTarget )
static

Get concatenated transforms from source to target node Source and target nodes are allowed to be nullptr, which means that transform is the world transform. The method may change the PreMultiply/PostMultiply flag of the transform.

◆ GetTransformFromNode()

void vtkMRMLTransformNode::GetTransformFromNode ( vtkMRMLTransformNode * node,
vtkGeneralTransform * transformFromNode )

Get concatenated transforms from the specified node. The method may change the PreMultiply/PostMultiply flag of the transform.

See also
GetTransformBetweenNodes

◆ GetTransformFromParent()

virtual vtkAbstractTransform * vtkMRMLTransformNode::GetTransformFromParent ( )
virtual

Transform of this node from parent.

◆ GetTransformFromParentAs()

vtkAbstractTransform * vtkMRMLTransformNode::GetTransformFromParentAs ( const char * transformType,
bool logErrorIfFails = true,
bool modifiableOnly = false )

Retrieves the transform as the specified transform class. If modifiableOnly is set to true then nullptr will be returned for transforms that cannot be modified (e.g., because it is computed from its inverse). Returns nullptr if the transform is not a kind of transform that was requested. Example usage: vtkOrientedBSplineTransform* bsplineTransform=vtkOrientedBSplineTransform::SafeDownCast(GetTransformFromParentAs("vtkOrientedBSplineTransform"));

◆ GetTransformFromParentInfo()

virtual const char * vtkMRMLTransformNode::GetTransformFromParentInfo ( )
virtual

Get a human-readable description of the transform.

◆ GetTransformFromWorld()

void vtkMRMLTransformNode::GetTransformFromWorld ( vtkGeneralTransform * transformFromWorld)

Get concatenated transforms from world. The method may change the PreMultiply/PostMultiply flag of the transform.

See also
GetTransformBetweenNodes

◆ GetTransformInfo()

const char * vtkMRMLTransformNode::GetTransformInfo ( vtkAbstractTransform * inputTransform)

Get a human-readable description of the transformation The returned string is stored in a shared buffer therefore the text has to be copied. This is a static-style function (the contents of the owner transform node is not used), but the returned string buffer needs to be owned by an object.

Parameters
inputTransformThe transform for which information is obtained

◆ GetTransformToNode()

void vtkMRMLTransformNode::GetTransformToNode ( vtkMRMLTransformNode * node,
vtkGeneralTransform * transformToNode )

Get concatenated transforms to the specified node. The method may change the PreMultiply/PostMultiply flag of the transform.

See also
GetTransformBetweenNodes

◆ GetTransformToParent()

virtual vtkAbstractTransform * vtkMRMLTransformNode::GetTransformToParent ( )
virtual

Transform of this node to parent.

◆ GetTransformToParentAs()

vtkAbstractTransform * vtkMRMLTransformNode::GetTransformToParentAs ( const char * transformType,
bool logErrorIfFails = true,
bool modifiableOnly = false )

Retrieves the transform as the specified transform class. If modifiableOnly is set to true then nullptr will be returned for transforms that cannot be modified (e.g., because it is computed from its inverse). Returns nullptr if the transform is not a kind of transform that was requested. Example usage: vtkOrientedBSplineTransform* bsplineTransform=vtkOrientedBSplineTransform::SafeDownCast(GetTransformToParentAs("vtkOrientedBSplineTransform"));

◆ GetTransformToParentInfo()

virtual const char * vtkMRMLTransformNode::GetTransformToParentInfo ( )
virtual

Get a human-readable description of the transform.

◆ GetTransformToWorld()

void vtkMRMLTransformNode::GetTransformToWorld ( vtkGeneralTransform * transformToWorld)

Get concatenated transforms to world. The method may change the PreMultiply/PostMultiply flag of the transform.

See also
GetTransformBetweenNodes

◆ GetTransformToWorldMTime()

vtkMTimeType vtkMRMLTransformNode::GetTransformToWorldMTime ( )

Get the latest modification time of the stored transform.

◆ Inverse()

void vtkMRMLTransformNode::Inverse ( )

Invert the transform. Internally it does not perform any actual computation just switches ToParent and FromParent.

◆ InverseName()

virtual void vtkMRMLTransformNode::InverseName ( )
virtual

Update the node's name to reflect that the node content is inverted. Inversion is implemented by adding/removing " (-)" suffix.

◆ IsA()

virtual int vtkMRMLTransformNode::IsA ( const char * type)
virtual

◆ IsAbstractTransformComputedFromInverse()

static bool vtkMRMLTransformNode::IsAbstractTransformComputedFromInverse ( vtkAbstractTransform * abstractTransform)
static

Utility function that determines if a transform is computed from its inverse. It may be important to know if a transform is computed from its inverse because then it cannot not be modified (if modification is needed then he source transform has to be updated).

◆ IsComposite()

virtual int vtkMRMLTransformNode::IsComposite ( )
virtual

Returns 1 if the transform is a composite transform (a transform that may contain multiple simple transforms)

◆ IsGeneralTransformLinear()

static bool vtkMRMLTransformNode::IsGeneralTransformLinear ( vtkAbstractTransform * inputTransform,
vtkTransform * concatenatedLinearTransform = nullptr )
static

Utility function that determines if a transform is linear. It looks into composite transforms and only returns with true if all the transform components are linear. If concatenatedLinearTransform is specified and the transform is linear then it returns the concatenated linear transformation matrix.

◆ IsLinear()

virtual int vtkMRMLTransformNode::IsLinear ( )
virtual

Returns 1 if transform is a non-composite linear transform, 0 otherwise (if composite transform or non-linear transform)

◆ IsTransformNodeMyChild()

int vtkMRMLTransformNode::IsTransformNodeMyChild ( vtkMRMLTransformNode * node)

Returns 1 if the node is one of the this node's descendants.

◆ IsTransformNodeMyParent()

int vtkMRMLTransformNode::IsTransformNodeMyParent ( vtkMRMLTransformNode * node)

Returns 1 if this node is one of the node's descendants nullptr designates the world transform node and so always returns with 1.

◆ IsTransformToNodeLinear()

int vtkMRMLTransformNode::IsTransformToNodeLinear ( vtkMRMLTransformNode * node)

1 if all the transforms between nodes are linear, 0 otherwise

◆ IsTransformToWorldLinear()

int vtkMRMLTransformNode::IsTransformToWorldLinear ( )

1 if all the transforms to the top are linear, 0 otherwise

◆ IsTypeOf()

static int vtkMRMLTransformNode::IsTypeOf ( const char * type)
static

◆ New()

static vtkMRMLTransformNode * vtkMRMLTransformNode::New ( )
static

◆ operator=()

void vtkMRMLTransformNode::operator= ( const vtkMRMLTransformNode & )
protected

◆ PrintSelf()

void vtkMRMLTransformNode::PrintSelf ( ostream & os,
vtkIndent indent )
override

◆ ProcessMRMLEvents()

void vtkMRMLTransformNode::ProcessMRMLEvents ( vtkObject * ,
unsigned long ,
void *  )
overridevirtual

alternative method to propagate events generated in Transform nodes

Reimplemented from vtkMRMLDisplayableNode.

◆ ReadAsTransformToParentOff()

virtual void vtkMRMLTransformNode::ReadAsTransformToParentOff ( )
virtual

◆ ReadAsTransformToParentOn()

virtual void vtkMRMLTransformNode::ReadAsTransformToParentOn ( )
virtual

◆ ReadXMLAttributes()

void vtkMRMLTransformNode::ReadXMLAttributes ( const char ** atts)
overridevirtual

Read node attributes from XML file.

Reimplemented from vtkMRMLDisplayableNode.

◆ SafeDownCast()

static vtkMRMLTransformNode * vtkMRMLTransformNode::SafeDownCast ( vtkObject * o)
static

◆ SetAndObserveMatrixTransformFromParent()

virtual int vtkMRMLTransformNode::SetAndObserveMatrixTransformFromParent ( vtkMatrix4x4 * matrix)
virtual

Set a new matrix transform of this node from parent node. Returns 0 if the current transform is not linear.

Deprecated
Use SetMatrixTransformToParent instead.

◆ SetAndObserveMatrixTransformToParent()

virtual int vtkMRMLTransformNode::SetAndObserveMatrixTransformToParent ( vtkMatrix4x4 * matrix)
virtual

Set a new matrix transform of this node to parent node. Returns 0 if the current transform is not linear.

Deprecated
Use SetMatrixTransformToParent instead.

◆ SetAndObserveTransform()

virtual void vtkMRMLTransformNode::SetAndObserveTransform ( vtkAbstractTransform ** originalTransformPtr,
vtkAbstractTransform ** inverseTransformPtr,
vtkAbstractTransform * transform )
protectedvirtual

Sets and observes a transform and deletes the inverse (so that the inverse will be computed automatically)

◆ SetAndObserveTransformFromParent()

void vtkMRMLTransformNode::SetAndObserveTransformFromParent ( vtkAbstractTransform * transform)

Set and observe a new transform of this node from parent node. Each time the transform is modified, vtkMRMLTransformableNode::TransformModifiedEvent is fired. ModifiedEvent() and TransformModifiedEvent() are fired after the transform is set.

◆ SetAndObserveTransformToParent()

void vtkMRMLTransformNode::SetAndObserveTransformToParent ( vtkAbstractTransform * transform)

Set and observe a new transform of this node to parent node. Each time the transform is modified, vtkMRMLTransformableNode::TransformModifiedEvent is fired. ModifiedEvent() and TransformModifiedEvent() are fired after the transform is set.

◆ SetCenterOfTransformation() [1/2]

virtual void vtkMRMLTransformNode::SetCenterOfTransformation ( const double xyz[3])
virtual

◆ SetCenterOfTransformation() [2/2]

virtual void vtkMRMLTransformNode::SetCenterOfTransformation ( double x,
double y,
double z )
virtual

The transformation center (rotation/scaling) that is rotated/scaled around.

◆ SetMatrixTransformFromParent()

virtual int vtkMRMLTransformNode::SetMatrixTransformFromParent ( vtkMatrix4x4 * matrix)
virtual

Set a new matrix transform of this node from parent node.

See also
SetMatrixTransformToParent

◆ SetMatrixTransformToParent()

virtual int vtkMRMLTransformNode::SetMatrixTransformToParent ( vtkMatrix4x4 * matrix)
virtual

Set a new matrix transform of this node to parent node. Invokes a TransformModified event (does not invoke Modified). The method only allows setting or updating an empty or simple linear transform. Returns nonzero if the transform is successfully updated, returns 0 if the transform is non-linear or composite and therefore cannot be updated. To overwrite a non-linear or composite transform first remove the old transform by calling SetAndObserveTransformToParent(nullptr) and then set the matrix.

See also
SetMatrixTransformFromParent

◆ SetReadAsTransformToParent()

virtual void vtkMRMLTransformNode::SetReadAsTransformToParent ( int )
virtual

◆ Split()

virtual int vtkMRMLTransformNode::Split ( )
virtual

Split a composite transform to its components. The components are inserted to the scene between this transform and its parent. A composite transform can be created by hardening different types of transforms on each other. Return non-zero on success.

◆ TransformModified()

virtual void vtkMRMLTransformNode::TransformModified ( )
inlinevirtual

Indicates that the transform inside the object is modified. Typical usage would be to disable transform modified events, call a series of operations that change transforms and then re-enable transform modified events to invoke any pending notifications.

Definition at line 280 of file vtkMRMLTransformNode.h.

◆ UpdateScene()

void vtkMRMLTransformNode::UpdateScene ( vtkMRMLScene * scene)
inlineoverridevirtual

Finds the storage node and read the data.

Reimplemented from vtkMRMLStorableNode.

Definition at line 60 of file vtkMRMLTransformNode.h.

◆ vtkMRMLCopyContentMacro()

vtkMRMLTransformNode::vtkMRMLCopyContentMacro ( vtkMRMLTransformNode )

Copy node content (excludes basic data, such as name and node references).

See also
vtkMRMLNode::CopyContent

◆ WriteXML()

void vtkMRMLTransformNode::WriteXML ( ostream & of,
int indent )
overridevirtual

Write this node's information to a MRML file in XML format.

Reimplemented from vtkMRMLDisplayableNode.

Member Data Documentation

◆ CachedMatrixTransformFromParent

vtkMatrix4x4* vtkMRMLTransformNode::CachedMatrixTransformFromParent
protected

Definition at line 412 of file vtkMRMLTransformNode.h.

◆ CachedMatrixTransformToParent

vtkMatrix4x4* vtkMRMLTransformNode::CachedMatrixTransformToParent
protected

These variables are only for supporting the deprecated GetMatrixTransformToParent and GetMatrixFromParent methods

Definition at line 411 of file vtkMRMLTransformNode.h.

◆ CenterOfTransformation

double vtkMRMLTransformNode::CenterOfTransformation[3] {0.0, 0.0, 0.0}
protected

Definition at line 414 of file vtkMRMLTransformNode.h.

◆ ReadAsTransformToParent

int vtkMRMLTransformNode::ReadAsTransformToParent
protected

Definition at line 404 of file vtkMRMLTransformNode.h.

◆ TransformFromParent

vtkAbstractTransform* vtkMRMLTransformNode::TransformFromParent
protected

Definition at line 402 of file vtkMRMLTransformNode.h.

◆ TransformInfo

std::string vtkMRMLTransformNode::TransformInfo
protected

Definition at line 407 of file vtkMRMLTransformNode.h.

◆ TransformToParent

vtkAbstractTransform* vtkMRMLTransformNode::TransformToParent
protected

These transforms store the transforms that were set externally. We use the capability of generic transforms for concatenating and inverting the same abstract transform in multiple generic transforms, therefore they are automatically updated. We keep the two separate member variables because in the future we may allow setting of a custom inverse transform (that is NOT computed automatically from each other, for example some Demons registration can provide both the forward and inverse transforms as output).

Definition at line 401 of file vtkMRMLTransformNode.h.


The documentation for this class was generated from the following file: