1 #ifndef __vtkMRMLAnnotationAngleNode_h 2 #define __vtkMRMLAnnotationAngleNode_h 4 #include "vtkSlicerAnnotationsModuleMRMLExport.h" 8 class vtkAbstractTransform;
36 void WriteXML(ostream& of,
int indent)
override;
59 double newControl[3] = {nC1,nC2,nC3};
60 return this->SetPosition1(newControl) ;
67 double newControl[3] = {nC1,nC2,nC3};
68 return this->SetPosition2(newControl) ;
75 double newControl[3] = {nC1,nC2,nC3};
76 return this->SetPositionCenter(newControl) ;
81 vtkGetStringMacro(LabelFormat);
82 vtkSetStringMacro(LabelFormat);
86 double GetLabelScale();
87 void SetLabelScale(
double init);
91 int GetLabelVisibility();
92 void SetLabelVisibility(
int flag);
94 int SetAngle(vtkIdType line1Id, vtkIdType line2Id,
int sel,
int vis);
107 vtkGetMacro(Resolution,
int);
108 vtkSetMacro(Resolution,
int);
112 double *GetPointColour();
113 void SetPointColour(
double initColor[3]);
117 double *GetLineColour();
118 void SetLineColour(
double newColor[3]);
122 double *GetLabelTextColour();
123 void SetLabelTextColour(
double initColor[3]);
137 vtkGetStringMacro(ModelID1);
138 vtkSetStringMacro(ModelID1);
139 vtkGetStringMacro(ModelID2);
140 vtkSetStringMacro(ModelID2);
141 vtkGetStringMacro(ModelIDCenter);
142 vtkSetStringMacro(ModelIDCenter);
144 void SetAngleMeasurement(
double val);
145 double GetAngleMeasurement();
149 AngleNodeAddedEvent = 0,
166 int AddControlPoint(
double newControl[3],
int selectedFlag,
int visibleFlag);
void SetRay2Visibility(int flag)
int AddControlPoint(double newControl[3], int selectedFlag, int visibleFlag)
void ProcessMRMLEvents(vtkObject *, unsigned long, void *) override
alternative method to propagate events generated in Display nodes
void operator=(const vtkMRMLAnnotationLinesNode &)
void PrintAnnotationInfo(ostream &os, vtkIndent indent, int titleFlag=1) override
void ApplyTransform(vtkAbstractTransform *transform) override
int SetPosition1(double nC1, double nC2, double nC3)
int SetPosition2(double nC1, double nC2, double nC3)
void UpdateScene(vtkMRMLScene *scene) override
Finds the storage node and read the data
vtkMRMLNode * CreateNodeInstance() override
MRMLNode methods.
int SetPosition1(double newControl[3])
int SetControlPoint(int id, double newControl[3], int selectedFlag, int visibleFlag)
int SetPositionCenter(double nC1, double nC2, double nC3)
int GetAnnotationAttribute(vtkIdType id, int att)
void SetRay1Visibility(int flag)
int SetPosition2(double newControl[3])
A set of MRML Nodes that supports serialization and undo/redo.
int SetPositionCenter(double newControl[3])
void Copy(vtkMRMLNode *node) override
Copy the node's attributes to this object
void SetAnnotationAttribute(vtkIdType id, int att, double value)
A superclass for other storage nodes.
double * GetControlPointCoordinates(vtkIdType id)
void SetArcVisibility(int flag)
static vtkMRMLAnnotationLinesNode * New()
const char * GetNodeTagName() override
Get node XML tag name (like Volume, Model)
vtkMRMLStorageNode * CreateDefaultStorageNode() override
void WriteXML(ostream &of, int indent) override
Write this node's information to a MRML file in XML format.
Abstract Superclass for all specific types of MRML nodes.
double * GetPositionCenter()
void ReadXMLAttributes(const char **atts) override
Read node attributes from XML file