vtkSlicerAnnotationAngleManager Class Reference

#include <vtkSlicerAnnotationAngleManager.h>

Inheritance diagram for vtkSlicerAnnotationAngleManager:
vtkSlicerWidget vtkKWCompositeWidget

List of all members.

Public Member Functions

void AddAngleWidget (vtkMRMLAnnotationAngleNode *angleNode)
void AddLineDiaplayNodeID (vtkMRMLAnnotationAngleNode *angleNode)
virtual void AddMRMLObservers ()
 alternative method to propagate events generated in GUI to logic / mrml
void AddPointDiaplayNodeID (vtkMRMLAnnotationAngleNode *angleNode)
void AddTextDiaplayNodeID (vtkMRMLAnnotationAngleNode *angleNode)
vtkCamera * GetActiveCamera ()
std::string GetAngleNodeIDFromLineDisplayNode (const char *nodeID)
std::string GetAngleNodeIDFromPointDisplayNode (const char *nodeID)
std::string GetAngleNodeIDFromTextDisplayNode (const char *nodeID)
vtkMeasurementsAngleWidgetClassGetAngleWidget (const char *nodeID)
std::string GetLineDisplayNodeID (const char *nodeID)
std::string GetPointDisplayNodeID (const char *nodeID)
std::string GetTextDisplayNodeID (const char *nodeID)
void PrintSelf (ostream &os, vtkIndent indent)
virtual void ProcessMRMLEvents (vtkObject *caller, unsigned long event, void *callData)
 alternative method to propagate events generated in GUI to logic / mrml
void RemoveAngleWidget (vtkMRMLAnnotationAngleNode *angleNode)
void RemoveAngleWidgets ()
void RemoveLineDisplayNodeID (vtkMRMLAnnotationAngleNode *angleNode)
virtual void RemoveMRMLObservers ()
 remove observers on node
void RemovePointDisplayNodeID (vtkMRMLAnnotationAngleNode *angleNode)
void RemoveTextDisplayNodeID (vtkMRMLAnnotationAngleNode *angleNode)
void SetAngleNodeID (char *id)
 Set the fid list id, and update the widgets.
virtual void SetViewerWidget (vtkSlicerViewerWidget *viewerWidget)
void SetWidgetColor (vtkMRMLAnnotationAngleNode *node, int type, double *color)
void Update3DWidgetsFromMRML ()
 check scene to make sure that have a widget for each Angle node, and no extra widgets...
void UpdateAngleMeasurement (vtkMRMLAnnotationAngleNode *angleNode)
void UpdateAngleWidgetInteractors ()
 Update the interactors on all the widgets.
void UpdateCamera ()
 vtkGetObjectMacro (ViewerWidget, vtkSlicerViewerWidget)
 Get/set the viewer widget so can add a the Angle widget to it.
 vtkGetStringMacro (AngleNodeID)
 Getting the mrml Angle node id.
 vtkTypeRevisionMacro (vtkSlicerAnnotationAngleManager, vtkSlicerWidget)

Static Public Member Functions

static
vtkSlicerAnnotationAngleManager
New ()

Public Attributes

std::map< std::string,
vtkMeasurementsAngleWidgetClass * > 
AngleWidgets
 encapsulated 3d widgets for each Angle node
std::map< std::string,
std::string > 
LineDisplayNodes
 encapsulated line display node for each Angle node
std::map< std::string,
std::string > 
PointDisplayNodes
 encapsulated point display node for each Angle node
std::map< std::string,
std::string > 
TextDisplayNodes
 encapsulated text display node for each Angle node

Protected Member Functions

void Update3DWidget (vtkMRMLAnnotationAngleNode *angleNode)
void Update3DWidgetVisibility (vtkMRMLAnnotationAngleNode *activeAngleNode)
 update the visibility of the 3d widget associated with the passed node
void UpdateDisplayNode (vtkMRMLAnnotationAngleNode *angleNode)
 update the display nodes for AngleNode
void UpdateInteractionModeAtEndInteraction ()
void UpdateInteractionModeAtStartInteraction ()
void UpdateLineDisplayProperty (vtkMRMLAnnotationLineDisplayNode *node)
 update the point property passed by the point display node
void UpdatePointDisplayProperty (vtkMRMLAnnotationPointDisplayNode *node)
 update the point property passed by the point display node
void UpdateTextDisplayProperty (vtkMRMLAnnotationTextDisplayNode *node)
 update the text property passed by the text display node
void UpdateWidget (vtkMRMLAnnotationAngleNode *angleNode)
 update the widget GUI from the settings in the passed in AngleNode
 vtkSlicerAnnotationAngleManager ()
virtual ~vtkSlicerAnnotationAngleManager ()

Protected Attributes

charAngleNodeID
 the id of the mrml node currently displayed in the widget
int Updating3DAngle
vtkSlicerViewerWidgetViewerWidget
 pointer to the viewer widget so can add props, request renders

Private Member Functions

void operator= (const vtkSlicerAnnotationAngleManager &)
 Not implemented.
 vtkSlicerAnnotationAngleManager (const vtkSlicerAnnotationAngleManager &)

Constructor & Destructor Documentation

vtkSlicerAnnotationAngleManager::vtkSlicerAnnotationAngleManager (  )  [protected]
vtkSlicerAnnotationAngleManager::~vtkSlicerAnnotationAngleManager (  )  [protected, virtual]
vtkSlicerAnnotationAngleManager::vtkSlicerAnnotationAngleManager ( const vtkSlicerAnnotationAngleManager  )  [private]

Member Function Documentation

void vtkSlicerAnnotationAngleManager::AddAngleWidget ( vtkMRMLAnnotationAngleNode angleNode  ) 
void vtkSlicerAnnotationAngleManager::AddLineDiaplayNodeID ( vtkMRMLAnnotationAngleNode angleNode  ) 
void vtkSlicerAnnotationAngleManager::AddMRMLObservers ( void   )  [virtual]

alternative method to propagate events generated in GUI to logic / mrml

add observers on node

References vtkSlicerWidget::MRMLCallbackCommand, vtkSlicerWidget::MRMLScene, vtkMRMLScene::NodeAddedEvent, vtkMRMLScene::NodeRemovedEvent, and vtkMRMLScene::SceneCloseEvent.

Referenced by vtkSlicermiAnnotationModuleLogic::AddAngle().

void vtkSlicerAnnotationAngleManager::AddPointDiaplayNodeID ( vtkMRMLAnnotationAngleNode angleNode  ) 
void vtkSlicerAnnotationAngleManager::AddTextDiaplayNodeID ( vtkMRMLAnnotationAngleNode angleNode  ) 
vtkCamera * vtkSlicerAnnotationAngleManager::GetActiveCamera (  ) 

Referenced by UpdateCamera().

std::string vtkSlicerAnnotationAngleManager::GetAngleNodeIDFromLineDisplayNode ( const char nodeID  ) 

References LineDisplayNodes.

Referenced by UpdateLineDisplayProperty().

std::string vtkSlicerAnnotationAngleManager::GetAngleNodeIDFromPointDisplayNode ( const char nodeID  ) 

References PointDisplayNodes.

Referenced by UpdatePointDisplayProperty().

std::string vtkSlicerAnnotationAngleManager::GetAngleNodeIDFromTextDisplayNode ( const char nodeID  ) 

References TextDisplayNodes.

Referenced by UpdateTextDisplayProperty().

vtkMeasurementsAngleWidgetClass * vtkSlicerAnnotationAngleManager::GetAngleWidget ( const char nodeID  ) 
std::string vtkSlicerAnnotationAngleManager::GetLineDisplayNodeID ( const char nodeID  ) 
std::string vtkSlicerAnnotationAngleManager::GetPointDisplayNodeID ( const char nodeID  ) 
std::string vtkSlicerAnnotationAngleManager::GetTextDisplayNodeID ( const char nodeID  ) 
static vtkSlicerAnnotationAngleManager* vtkSlicerAnnotationAngleManager::New (  )  [static]

Reimplemented from vtkSlicerWidget.

Referenced by AddAngleWidget(), and Update3DWidget().

void vtkSlicerAnnotationAngleManager::operator= ( const vtkSlicerAnnotationAngleManager  )  [private]

Not implemented.

Reimplemented from vtkSlicerWidget.

void vtkSlicerAnnotationAngleManager::PrintSelf ( ostream &  os,
vtkIndent  indent 
)

Reimplemented from vtkSlicerWidget.

References AngleWidgets.

void vtkSlicerAnnotationAngleManager::ProcessMRMLEvents ( vtkObject caller,
unsigned long  event,
void *  callData 
) [virtual]
void vtkSlicerAnnotationAngleManager::RemoveAngleWidget ( vtkMRMLAnnotationAngleNode angleNode  ) 
void vtkSlicerAnnotationAngleManager::RemoveAngleWidgets (  ) 
void vtkSlicerAnnotationAngleManager::RemoveLineDisplayNodeID ( vtkMRMLAnnotationAngleNode angleNode  ) 
void vtkSlicerAnnotationAngleManager::RemoveMRMLObservers ( void   )  [virtual]
void vtkSlicerAnnotationAngleManager::RemovePointDisplayNodeID ( vtkMRMLAnnotationAngleNode angleNode  ) 
void vtkSlicerAnnotationAngleManager::RemoveTextDisplayNodeID ( vtkMRMLAnnotationAngleNode angleNode  ) 
void vtkSlicerAnnotationAngleManager::SetAngleNodeID ( char id  ) 
void vtkSlicerAnnotationAngleManager::SetViewerWidget ( vtkSlicerViewerWidget viewerWidget  )  [virtual]
void vtkSlicerAnnotationAngleManager::SetWidgetColor ( vtkMRMLAnnotationAngleNode node,
int  type,
double *  color 
)
void vtkSlicerAnnotationAngleManager::Update3DWidget ( vtkMRMLAnnotationAngleNode angleNode  )  [protected]
void vtkSlicerAnnotationAngleManager::Update3DWidgetsFromMRML (  ) 

check scene to make sure that have a widget for each Angle node, and no extra widgets...

References AngleWidgets, vtkMRMLScene::GetNodeByID(), vtkMRMLScene::GetNthNodeByClass(), vtkMRMLScene::GetNumberOfNodesByClass(), vtkSlicerWidget::MRMLScene, mathExample::n, and Update3DWidget().

Referenced by ProcessMRMLEvents().

void vtkSlicerAnnotationAngleManager::Update3DWidgetVisibility ( vtkMRMLAnnotationAngleNode activeAngleNode  )  [protected]
void vtkSlicerAnnotationAngleManager::UpdateAngleMeasurement ( vtkMRMLAnnotationAngleNode angleNode  ) 
void vtkSlicerAnnotationAngleManager::UpdateAngleWidgetInteractors (  ) 

Update the interactors on all the widgets.

References AngleWidgets, and Update3DWidgetVisibility().

Referenced by SetViewerWidget().

void vtkSlicerAnnotationAngleManager::UpdateCamera (  ) 

References AngleWidgets, and GetActiveCamera().

void vtkSlicerAnnotationAngleManager::UpdateDisplayNode ( vtkMRMLAnnotationAngleNode angleNode  )  [protected]
void vtkSlicerAnnotationAngleManager::UpdateInteractionModeAtEndInteraction (  )  [protected]

Resets Slicer's interaction mode back to original interaction mode when manipulation is finished.

References vtkMRMLScene::GetNthNodeByClass(), vtkSlicerWidget::MRMLScene, vtkMRMLInteractionNode::SetCurrentInteractionMode(), and vtkMRMLInteractionNode::ViewTransform.

void vtkSlicerAnnotationAngleManager::UpdateInteractionModeAtStartInteraction (  )  [protected]
void vtkSlicerAnnotationAngleManager::UpdateLineDisplayProperty ( vtkMRMLAnnotationLineDisplayNode node  )  [protected]

update the point property passed by the point display node

References AngleNodeID, GetAngleNodeIDFromLineDisplayNode(), and GetAngleWidget().

Referenced by ProcessMRMLEvents(), and Update3DWidget().

void vtkSlicerAnnotationAngleManager::UpdatePointDisplayProperty ( vtkMRMLAnnotationPointDisplayNode node  )  [protected]

update the point property passed by the point display node

References AngleNodeID, GetAngleNodeIDFromPointDisplayNode(), and GetAngleWidget().

Referenced by ProcessMRMLEvents(), and Update3DWidget().

void vtkSlicerAnnotationAngleManager::UpdateTextDisplayProperty ( vtkMRMLAnnotationTextDisplayNode node  )  [protected]

update the text property passed by the text display node

References AngleNodeID, GetAngleNodeIDFromTextDisplayNode(), and GetAngleWidget().

Referenced by ProcessMRMLEvents(), and Update3DWidget().

void vtkSlicerAnnotationAngleManager::UpdateWidget ( vtkMRMLAnnotationAngleNode angleNode  )  [protected]

update the widget GUI from the settings in the passed in AngleNode

Referenced by ProcessMRMLEvents(), and SetAngleNodeID().

vtkSlicerAnnotationAngleManager::vtkGetObjectMacro ( ViewerWidget  ,
vtkSlicerViewerWidget   
)

Get/set the viewer widget so can add a the Angle widget to it.

vtkSlicerAnnotationAngleManager::vtkGetStringMacro ( AngleNodeID   ) 

Getting the mrml Angle node id.

vtkSlicerAnnotationAngleManager::vtkTypeRevisionMacro ( vtkSlicerAnnotationAngleManager  ,
vtkSlicerWidget   
)

Member Data Documentation

std::map<std::string, std::string> vtkSlicerAnnotationAngleManager::LineDisplayNodes

encapsulated line display node for each Angle node

Referenced by AddLineDiaplayNodeID(), GetAngleNodeIDFromLineDisplayNode(), GetLineDisplayNodeID(), and RemoveLineDisplayNodeID().

std::map<std::string, std::string> vtkSlicerAnnotationAngleManager::PointDisplayNodes

encapsulated point display node for each Angle node

Referenced by AddPointDiaplayNodeID(), GetAngleNodeIDFromPointDisplayNode(), GetPointDisplayNodeID(), and RemovePointDisplayNodeID().

std::map<std::string, std::string> vtkSlicerAnnotationAngleManager::TextDisplayNodes

encapsulated text display node for each Angle node

Referenced by AddTextDiaplayNodeID(), GetAngleNodeIDFromTextDisplayNode(), GetTextDisplayNodeID(), and RemoveTextDisplayNodeID().

flag set to 1 when updating a 3d widget (todo: set it to the index of the Angle node / 3d widget once have more than one)

Referenced by ProcessMRMLEvents(), Update3DWidget(), and vtkSlicerAnnotationAngleManager().

pointer to the viewer widget so can add props, request renders

Referenced by SetViewerWidget(), and vtkSlicerAnnotationAngleManager().


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

Generated on 6 Apr 2011 for Slicer3 by  doxygen 1.6.1