vtkMRMLAnnotationFiducialNode.h

Go to the documentation of this file.
00001 // .NAME vtkMRMLAnnotationFiducialNode - MRML node to represent a fiber bundle from tractography in DTI data.
00002 // .SECTION Description
00003 // Annotation nodes contains control points, internally represented as vtkPolyData.
00004 // A Annotation node contains many control points  and forms the smallest logical unit of tractography 
00005 // that MRML will manage/read/write. Each control point has accompanying data.  
00006 // Visualization parameters for these nodes are controlled by the vtkMRMLAnnotationPointDisplayNode class.
00007 //
00008 
00009 #ifndef __vtkMRMLAnnotationFiducialNode_h
00010 #define __vtkMRMLAnnotationFiducialNode_h
00011 
00012 #include "qSlicermiAnnotationModuleExport.h"
00013 #include "vtkMRMLAnnotationControlPointsNode.h" 
00014 
00015 class vtkStringArray;
00016 class vtkMRMLStorageNode;
00017 
00018 class  Q_SLICER_QTMODULES_ANNOTATIONS_EXPORT vtkMRMLAnnotationFiducialNode : public vtkMRMLAnnotationControlPointsNode
00019 {
00020 public:
00021   static vtkMRMLAnnotationFiducialNode *New();
00022   vtkTypeMacro(vtkMRMLAnnotationFiducialNode,vtkMRMLAnnotationControlPointsNode);
00023 
00024   //--------------------------------------------------------------------------
00025   // MRMLNode methods
00026   //--------------------------------------------------------------------------
00027 
00028   virtual vtkMRMLNode* CreateNodeInstance();
00029   // Description:
00030   // Get node XML tag name (like Volume, Model)
00031   virtual const char* GetNodeTagName() {return "AnnotationFiducials";};
00032 
00033   int  SetFiducial(const char* label, double newControl[3],int selectedFlag, int visibleFlag);
00034 
00035   // Selected and visible are currently always set to 1 and are controlled by selected and visible flag - we can change this later
00036   void SetFiducialLabel(const char* newLabel) {this->SetText(0,newLabel,1,1);}
00037   vtkStdString GetFiducialLabel() {return this->GetText(0);}
00038 
00039   void SetFiducialValue(const char* newValue) {this->SetText(1,newValue,1,1);}
00040   // return atoi(this->GetText(1).c_str());
00041   int GetFiducialValue() { 
00042     return 0;}
00043 
00044 
00045   int SetFiducialCoordinates(double newCoord[3]) {return this->SetControlPoint(0,newCoord,1,1);}
00046   double* GetFiducialCoordinates() {return this->GetControlPointCoordinates(0);}
00047 
00048 protected:
00049   vtkMRMLAnnotationFiducialNode() { }; 
00050   ~vtkMRMLAnnotationFiducialNode() { };
00051   vtkMRMLAnnotationFiducialNode(const vtkMRMLAnnotationFiducialNode&);
00052   void operator=(const vtkMRMLAnnotationFiducialNode&);
00053 
00054   void SetTextFromID();
00055 
00056 };
00057 
00058 #endif

Generated on 6 Apr 2011 for Slicer3 by  doxygen 1.6.1