15 #ifndef __vtkMRMLFiducialListNode_h 16 #define __vtkMRMLFiducialListNode_h 55 void PrintSelf(ostream& os, vtkIndent indent)
override;
67 void WriteXML(ostream& of,
int indent)
override;
84 void SetSymbolScale(
double scale);
85 vtkGetMacro(SymbolScale,
double);
90 void SetVisibility(
int visible);
91 vtkGetMacro(Visibility,
int);
95 void SetTextScale(
double scale);
96 vtkGetMacro(TextScale,
double);
100 void SetColor(
double r,
double g,
double b);
101 void SetColor(
double c[3]);
102 vtkGetVectorMacro(Color,
double,3);
105 void SetSelectedColor(
double r,
double g,
double b);
106 void SetSelectedColor(
double c[3]);
107 vtkGetVectorMacro(SelectedColor,
double,3);
111 int GetNumberOfFiducials();
115 int SetNthFiducialXYZ(
int n,
float x,
float y,
float z);
116 int SetNthFiducialOrientation(
int n,
float w,
float x,
float y,
float z);
117 int SetNthFiducialLabelText(
int n,
const char *text);
118 int SetNthFiducialSelected(
int n,
int flag);
119 int SetNthFiducialSelectedNoModified(
int n,
int flag);
120 int SetNthFiducialVisibility(
int n,
int flag);
121 int SetNthFiducialVisibilityNoModified(
int n,
int flag);
122 int SetNthFiducialID(
int n,
const char *
id);
127 int SetNthFiducialXYZWorld(
int n,
float x,
float y,
float z);
131 int SetFiducialXYZ(std::string fiducialID,
float x,
float y,
float z);
135 int GetFiducialIndex(std::string fiducialID);
138 int SetAllFiducialsSelected(
int flag);
141 int SetAllFiducialsVisibility(
int flag);
145 float *GetNthFiducialXYZ(
int n);
151 int GetNthFiducialXYZWorld(
int n,
double *worldxyz);
153 float *GetNthFiducialOrientation(
int n);
155 const char *GetNthFiducialLabelText(
int n);
157 int GetNthFiducialSelected(
int n);
159 int GetNthFiducialVisibility(
int n);
161 const char *GetNthFiducialID(
int n);
167 int AddFiducialWithXYZ(
float x,
float y,
float z,
int selected);
169 int AddFiducialWithLabelXYZSelectedVisibility(
const char *label,
float x,
float y,
float z,
int selected,
int visibility);
174 void RemoveFiducial(
int i);
176 void RemoveAllFiducials();
181 void ProcessMRMLEvents ( vtkObject *caller,
unsigned long event,
void *callData )
override;
187 DisplayModifiedEvent = 19000,
188 PolyDataModifiedEvent = 19001,
189 FiducialModifiedEvent = 19002,
190 FiducialIndexModifiedEvent = 19003
194 void SetOpacity(
double opacity);
195 vtkGetMacro(Opacity,
double);
198 void SetAmbient(
double val);
199 vtkGetMacro(Ambient,
double);
202 void SetDiffuse(
double val);
203 vtkGetMacro(Diffuse,
double);
206 void SetSpecular(
double val);
207 vtkGetMacro(Specular,
double);
210 void SetPower(
double val);
211 vtkGetMacro(Power,
double);
214 void SetLocked(
int locked);
215 vtkGetMacro(Locked,
int);
244 void SetGlyphType(
int type);
245 vtkGetMacro(GlyphType,
int);
247 int GlyphTypeIs3D(
int glyphType);
251 const char* GetGlyphTypeAsString();
252 const char* GetGlyphTypeAsString(
int g);
253 void SetGlyphTypeFromString(
const char *glyphString);
265 int MoveFiducialUp(
int fidIndex);
266 int MoveFiducialDown(
int fidIndex);
271 void RenumberFiducials(
int startFrom = 0);
275 void RenameFiducials(
const char *newName);
284 SchemeMax = UsePrevious
288 vtkSetMacro(NumberingScheme,
int);
289 vtkGetMacro(NumberingScheme,
int);
292 const char* GetNumberingSchemeAsString();
293 const char* GetNumberingSchemeAsString(
int g);
294 void SetNumberingSchemeFromString(
const char *schemeString);
319 double SelectedColor[3];
MRML node for handling fiducial list storage.
int GetMinimumGlyphType()
Return the min/max glyph types, for iterating over them in tcl.
const char * GetNodeTagName() override
Get node XML tag name (like Volume, Model)
NumberingSchemes
Flags to determine how the next fiducial added to the list is labelled.
virtual vtkMRMLStorageNode * CreateDefaultStorageNode()
MRML node to represent a list of points in 3D.
virtual void UpdateReferences()
The method should remove all pointers and observations to all nodes that are not in the scene anymore...
double Opacity
Numbers relating to the display of the fiducials.
virtual void Copy(vtkMRMLNode *node)
Copy node contents from another node of the same type. Does not copy node ID and Scene. Performs deep copy - an independent copy is created from all data, including bulk data.
A set of MRML Nodes that supports serialization and undo/redo.
A superclass for other storage nodes.
MRML object to represent a 3D point.
int GetMaximumGlyphType()
vtkCollection * FiducialList
The collection of fiducial points that make up this list.
void UpdateScene(vtkMRMLScene *scene) override
Finds the storage node and read the data
Abstract Superclass for all specific types of MRML nodes.
int NumberingScheme
How the next added fiducial will be numbered in it's LabelText field.