15 #ifndef __vtkMRMLCrosshairNode_h 16 #define __vtkMRMLCrosshairNode_h 30 void PrintSelf(ostream& os, vtkIndent indent)
override;
36 CursorPositionModifiedEvent = 22000
47 void WriteXML(ostream& of,
int indent)
override;
59 vtkGetMacro (CrosshairMode,
int );
60 vtkSetMacro (CrosshairMode,
int );
61 static const char* GetCrosshairModeAsString(
int id);
62 static int GetCrosshairModeFromString(
const char* name);
64 vtkSetClampMacro(CrosshairThickness,
int, 1, 3);
65 vtkGetMacro(CrosshairThickness,
int);
69 static const char* GetCrosshairThicknessAsString(
int id);
70 static int GetCrosshairThicknessFromString(
const char* name);
75 vtkGetMacro (CrosshairBehavior,
int );
76 vtkSetMacro (CrosshairBehavior,
int );
77 static const char* GetCrosshairBehaviorAsString(
int id);
78 static int GetCrosshairBehaviorFromString(
const char* name);
88 void SetCursorPositionRAS(
double ras[3]);
97 void SetCursorPositionInvalid();
103 bool GetCursorPositionRAS(
double ras[3]);
113 vtkSetVector3Macro(CrosshairRAS,
double);
114 vtkGetVector3Macro(CrosshairRAS,
double);
118 void SetCrosshairRAS(
double ras[3],
int id);
121 vtkGetMacro(LightBoxPane,
int);
150 CrosshairThickness_Last
158 CenteredJumpSlice = 2,
160 CrosshairBehavior_Last
171 vtkSetMacro(FastPick3D,
bool);
172 vtkGetMacro(FastPick3D,
bool);
173 vtkBooleanMacro(FastPick3D,
bool);
182 int CrosshairMode{NoCrosshair};
183 int CrosshairThickness{Fine};
184 int CrosshairBehavior{OffsetJumpSlice};
186 double CrosshairRAS[3]{0.0, 0.0, 0.0};
191 double CursorPositionRAS[3]{0.0, 0.0, 0.0};
194 double CursorPositionXYZ[3]{0.0, 0.0, 0.0};
201 bool CursorPositionRASValid{
false};
202 bool FastPick3D{
false};
MRML node for storing a slice through RAS space.
MRML node for storing a crosshair through RAS space.
virtual void ReadXMLAttributes(const char **atts)
void operator=(const vtkMRMLNode &)
virtual vtkMRMLNode * CreateNodeInstance()=0
Create instance of the default node. Like New only virtual.
void SetCrosshairName(const char *name)
Name of the layout
char * GetCrosshairName()
virtual char * GetSingletonTag()
void SetCrosshairToMedium()
void SetCrosshairToFine()
void SetCrosshairToThick()
const char * GetNodeTagName() override
Get node XML tag name (like Volume, Model)
vtkWeakPointer< vtkMRMLSliceNode > CursorSliceNode
virtual void WriteXML(ostream &of, int indent)
void PrintSelf(ostream &os, vtkIndent indent) override
#define vtkMRMLCopyContentMacro(thisClassName)
Abstract Superclass for all specific types of MRML nodes.
virtual void SetSingletonTag(const char *)
Tag that make this node a singleton in the scene.