vtkSlicerAnnotationRulerManager Class Reference

#include <vtkSlicerAnnotationRulerManager.h>

Inheritance diagram for vtkSlicerAnnotationRulerManager:
vtkSlicerWidget vtkKWCompositeWidget

List of all members.

Public Member Functions

void AddDistanceWidget (vtkMRMLAnnotationRulerNode *rulerNode)
void AddLineDiaplayNodeID (vtkMRMLAnnotationRulerNode *rulerNode)
virtual void AddMRMLObservers ()
 alternative method to propagate events generated in GUI to logic / mrml
void AddPointDiaplayNodeID (vtkMRMLAnnotationRulerNode *rulerNode)
void AddSeedWidget (vtkMRMLAnnotationRulerNode *rulerNode)
void AddTextDiaplayNodeID (vtkMRMLAnnotationRulerNode *rulerNode)
vtkCamera * GetActiveCamera ()
 get the currently active camera
vtkMeasurementsDistanceWidgetClassGetDistanceWidget (const char *nodeID)
std::string GetLineDisplayNodeID (const char *nodeID)
std::string GetPointDisplayNodeID (const char *nodeID)
std::string GetRulerNodeIDFromLineDisplayNode (const char *nodeID)
std::string GetRulerNodeIDFromPointDisplayNode (const char *nodeID)
std::string GetRulerNodeIDFromTextDisplayNode (const char *nodeID)
vtkSlicerSeedWidgetClassGetSeedWidget (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 RemoveDistanceWidget (vtkMRMLAnnotationRulerNode *rulerNode)
void RemoveDistanceWidgets ()
void RemoveLineDisplayNodeID (vtkMRMLAnnotationRulerNode *rulerNode)
virtual void RemoveMRMLObservers ()
 remove observers on node
void RemovePointDisplayNodeID (vtkMRMLAnnotationRulerNode *rulerNode)
void RemoveSeedWidget (vtkMRMLAnnotationRulerNode *rulerNode)
void RemoveTextDisplayNodeID (vtkMRMLAnnotationRulerNode *rulerNode)
void SetRulerNodeID (char *id)
 Set the fid list id, and update the widgets.
virtual void SetViewerWidget (vtkSlicerViewerWidget *viewerWidget)
void Update3DWidgetsFromMRML ()
 check scene to make sure that have a widget for each ruler node, and no extra widgets...
void UpdateCamera ()
 Update the camera.
void UpdateDistanceMeasurement (vtkMRMLAnnotationRulerNode *rulerNode)
void UpdateRulerWidgetInteractors ()
 Update the interactors on all the widgets.
 vtkGetObjectMacro (ViewerWidget, vtkSlicerViewerWidget)
 Get/set the viewer widget so can add a the ruler widget to it.
 vtkGetStringMacro (RulerNodeID)
 Getting the mrml ruler node id.
 vtkTypeRevisionMacro (vtkSlicerAnnotationRulerManager, vtkSlicerWidget)

Static Public Member Functions

static
vtkSlicerAnnotationRulerManager
New ()

Public Attributes

std::map< std::string,
vtkMeasurementsDistanceWidgetClass * > 
DistanceWidgets
 encapsulated 3d widgets for each ruler node
std::map< std::string,
std::string > 
LineDisplayNodes
 encapsulated line display node for each ruler node
std::map< std::string,
std::string > 
PointDisplayNodes
 encapsulated point display node for each ruler node
std::map< std::string,
vtkSlicerSeedWidgetClass * > 
SeedWidgets
 encapsulated 3d widgets for each seed node
std::map< std::string,
std::string > 
TextDisplayNodes
 encapsulated text display node for each ruler node

Protected Member Functions

void Update3DWidget (vtkMRMLAnnotationRulerNode *rulerNode)
void Update3DWidgetVisibility (vtkMRMLAnnotationRulerNode *activeRulerNode)
 update the visibility of the 3d widget associated with the passed node
void UpdateDisplayNode (vtkMRMLAnnotationRulerNode *rulerNode)
 update the display nodes for rulerNode
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 (vtkMRMLAnnotationRulerNode *rulerNode)
 update the widget GUI from the settings in the passed in rulerNode
 vtkSlicerAnnotationRulerManager ()
virtual ~vtkSlicerAnnotationRulerManager ()

Protected Attributes

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

Private Member Functions

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

Constructor & Destructor Documentation

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

Member Function Documentation

void vtkSlicerAnnotationRulerManager::AddDistanceWidget ( vtkMRMLAnnotationRulerNode rulerNode  ) 
void vtkSlicerAnnotationRulerManager::AddLineDiaplayNodeID ( vtkMRMLAnnotationRulerNode rulerNode  ) 
void vtkSlicerAnnotationRulerManager::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::AddRuler().

void vtkSlicerAnnotationRulerManager::AddPointDiaplayNodeID ( vtkMRMLAnnotationRulerNode rulerNode  ) 
void vtkSlicerAnnotationRulerManager::AddSeedWidget ( vtkMRMLAnnotationRulerNode rulerNode  ) 
void vtkSlicerAnnotationRulerManager::AddTextDiaplayNodeID ( vtkMRMLAnnotationRulerNode rulerNode  ) 
vtkCamera * vtkSlicerAnnotationRulerManager::GetActiveCamera (  ) 

get the currently active camera

Referenced by UpdateCamera().

vtkMeasurementsDistanceWidgetClass * vtkSlicerAnnotationRulerManager::GetDistanceWidget ( const char nodeID  ) 
std::string vtkSlicerAnnotationRulerManager::GetLineDisplayNodeID ( const char nodeID  ) 
std::string vtkSlicerAnnotationRulerManager::GetPointDisplayNodeID ( const char nodeID  ) 
std::string vtkSlicerAnnotationRulerManager::GetRulerNodeIDFromLineDisplayNode ( const char nodeID  ) 

References LineDisplayNodes.

Referenced by UpdateLineDisplayProperty().

std::string vtkSlicerAnnotationRulerManager::GetRulerNodeIDFromPointDisplayNode ( const char nodeID  ) 

References PointDisplayNodes.

Referenced by UpdatePointDisplayProperty().

std::string vtkSlicerAnnotationRulerManager::GetRulerNodeIDFromTextDisplayNode ( const char nodeID  ) 

References TextDisplayNodes.

Referenced by UpdateTextDisplayProperty().

vtkSlicerSeedWidgetClass * vtkSlicerAnnotationRulerManager::GetSeedWidget ( const char nodeID  ) 

References SeedWidgets.

Referenced by AddSeedWidget(), and RemoveSeedWidget().

std::string vtkSlicerAnnotationRulerManager::GetTextDisplayNodeID ( const char nodeID  ) 
static vtkSlicerAnnotationRulerManager* vtkSlicerAnnotationRulerManager::New (  )  [static]

Reimplemented from vtkSlicerWidget.

Referenced by AddDistanceWidget(), AddSeedWidget(), and Update3DWidget().

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

Not implemented.

Reimplemented from vtkSlicerWidget.

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

Reimplemented from vtkSlicerWidget.

References DistanceWidgets.

void vtkSlicerAnnotationRulerManager::ProcessMRMLEvents ( vtkObject caller,
unsigned long  event,
void *  callData 
) [virtual]
void vtkSlicerAnnotationRulerManager::RemoveDistanceWidget ( vtkMRMLAnnotationRulerNode rulerNode  ) 
void vtkSlicerAnnotationRulerManager::RemoveDistanceWidgets (  ) 
void vtkSlicerAnnotationRulerManager::RemoveLineDisplayNodeID ( vtkMRMLAnnotationRulerNode rulerNode  ) 
void vtkSlicerAnnotationRulerManager::RemoveMRMLObservers ( void   )  [virtual]
void vtkSlicerAnnotationRulerManager::RemovePointDisplayNodeID ( vtkMRMLAnnotationRulerNode rulerNode  ) 
void vtkSlicerAnnotationRulerManager::RemoveSeedWidget ( vtkMRMLAnnotationRulerNode rulerNode  ) 

References GetSeedWidget(), and SeedWidgets.

void vtkSlicerAnnotationRulerManager::RemoveTextDisplayNodeID ( vtkMRMLAnnotationRulerNode rulerNode  ) 
void vtkSlicerAnnotationRulerManager::SetRulerNodeID ( char id  ) 
void vtkSlicerAnnotationRulerManager::SetViewerWidget ( vtkSlicerViewerWidget viewerWidget  )  [virtual]
void vtkSlicerAnnotationRulerManager::Update3DWidget ( vtkMRMLAnnotationRulerNode rulerNode  )  [protected]
void vtkSlicerAnnotationRulerManager::Update3DWidgetsFromMRML (  ) 

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

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

Referenced by ProcessMRMLEvents().

void vtkSlicerAnnotationRulerManager::Update3DWidgetVisibility ( vtkMRMLAnnotationRulerNode activeRulerNode  )  [protected]
void vtkSlicerAnnotationRulerManager::UpdateCamera (  ) 

Update the camera.

References DistanceWidgets, and GetActiveCamera().

void vtkSlicerAnnotationRulerManager::UpdateDisplayNode ( vtkMRMLAnnotationRulerNode rulerNode  )  [protected]
void vtkSlicerAnnotationRulerManager::UpdateDistanceMeasurement ( vtkMRMLAnnotationRulerNode rulerNode  ) 
void vtkSlicerAnnotationRulerManager::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 vtkSlicerAnnotationRulerManager::UpdateInteractionModeAtStartInteraction (  )  [protected]
void vtkSlicerAnnotationRulerManager::UpdateLineDisplayProperty ( vtkMRMLAnnotationLineDisplayNode node  )  [protected]

update the point property passed by the point display node

References GetDistanceWidget(), and GetRulerNodeIDFromLineDisplayNode().

Referenced by ProcessMRMLEvents(), and Update3DWidget().

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

update the point property passed by the point display node

References GetDistanceWidget(), and GetRulerNodeIDFromPointDisplayNode().

Referenced by ProcessMRMLEvents(), and Update3DWidget().

void vtkSlicerAnnotationRulerManager::UpdateRulerWidgetInteractors (  ) 

Update the interactors on all the widgets.

References DistanceWidgets, and Update3DWidgetVisibility().

Referenced by SetViewerWidget().

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

update the text property passed by the text display node

References GetDistanceWidget(), and GetRulerNodeIDFromTextDisplayNode().

Referenced by ProcessMRMLEvents(), and Update3DWidget().

void vtkSlicerAnnotationRulerManager::UpdateWidget ( vtkMRMLAnnotationRulerNode rulerNode  )  [protected]

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

Referenced by ProcessMRMLEvents(), and SetRulerNodeID().

vtkSlicerAnnotationRulerManager::vtkGetObjectMacro ( ViewerWidget  ,
vtkSlicerViewerWidget   
)

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

vtkSlicerAnnotationRulerManager::vtkGetStringMacro ( RulerNodeID   ) 

Getting the mrml ruler node id.

vtkSlicerAnnotationRulerManager::vtkTypeRevisionMacro ( vtkSlicerAnnotationRulerManager  ,
vtkSlicerWidget   
)

Member Data Documentation

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

encapsulated line display node for each ruler node

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

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

encapsulated point display node for each ruler node

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

the id of the mrml node currently displayed in the widget

Referenced by SetRulerNodeID(), and vtkSlicerAnnotationRulerManager().

encapsulated 3d widgets for each seed node

Referenced by AddSeedWidget(), GetSeedWidget(), and RemoveSeedWidget().

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

encapsulated text display node for each ruler node

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

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

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

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

Referenced by SetViewerWidget(), and vtkSlicerAnnotationRulerManager().


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

Generated on 6 Apr 2011 for Slicer3 by  doxygen 1.6.1