Slicer 5.9
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
Loading...
Searching...
No Matches
vtkMRMLAnnotationLineDisplayNode.h
Go to the documentation of this file.
1// .NAME vtkMRMLAnnotationLineDisplayNode - MRML node to represent display properties for tractography.
2// .SECTION Description
3// vtkMRMLAnnotationLineDisplayNode nodes store display properties of trajectories
4// from tractography in diffusion MRI data, including color type (by bundle, by fiber,
5// or by scalar invariants), display on/off for tensor glyphs and display of
6// trajectory as a line or tube.
7//
8
9#ifndef __vtkMRMLAnnotationLineDisplayNode_h
10#define __vtkMRMLAnnotationLineDisplayNode_h
11
12#include "vtkMRML.h"
14#include "vtkSlicerAnnotationsModuleMRMLExport.h"
15
16class VTK_SLICER_ANNOTATIONS_MODULE_MRML_EXPORT vtkMRMLAnnotationLineDisplayNode : public vtkMRMLAnnotationDisplayNode
17{
18public:
21 void PrintSelf(ostream& os, vtkIndent indent) override;
22
23 //--------------------------------------------------------------------------
24 // MRMLNode methods
25 //--------------------------------------------------------------------------
26
28
29 // Description:
30 // Read node attributes from XML (MRML) file
31 void ReadXMLAttributes(const char** atts) override;
32
33 // Description:
34 // Write this node's information to a MRML file in XML format.
35 void WriteXML(ostream& of, int indent) override;
36
37 // Description:
38 // Copy the node's attributes to this object
39 void Copy(vtkMRMLNode* node) override;
40
41 // Description:
42 // Get node XML tag name (like Volume, Annotation)
43 const char* GetNodeTagName() override { return "AnnotationLineDisplay"; }
44
45 // Description:
46 // Finds the storage node and read the data
47 void UpdateScene(vtkMRMLScene* scene) override;
48
49 // Description:
50 // alternative method to propagate events generated in Display nodes
51 void ProcessMRMLEvents(vtkObject* /*caller*/, unsigned long /*event*/, void* /*callData*/) override;
52
55 void SetLineThickness(double thickness);
56 vtkGetMacro(LineThickness, double);
57
59 vtkSetClampMacro(LabelPosition, double, 0.0, 1.0);
60 vtkGetMacro(LabelPosition, double);
61
63 vtkBooleanMacro(LabelVisibility, int);
64 vtkSetMacro(LabelVisibility, int);
65 vtkGetMacro(LabelVisibility, int);
66
68 vtkSetMacro(TickSpacing, double);
69 vtkGetMacro(TickSpacing, double);
70
72 vtkSetMacro(MaxTicks, int);
73 vtkGetMacro(MaxTicks, int);
74
76 inline void SliceProjectionDashedOn();
77
79 inline void SliceProjectionDashedOff();
80
83
86
89
92
96
100
116
119 vtkSetMacro(UnderLineThickness, double);
120 vtkGetMacro(UnderLineThickness, double);
121
124 vtkSetMacro(OverLineThickness, double);
125 vtkGetMacro(OverLineThickness, double);
126
128 void CreateBackup() override;
130 void RestoreBackup() override;
131
132protected:
137
143
146};
147
148//----------------------------------------------------------------------------
153
154//----------------------------------------------------------------------------
159
160//----------------------------------------------------------------------------
165
166//----------------------------------------------------------------------------
171
172//----------------------------------------------------------------------------
177
178//----------------------------------------------------------------------------
183
184//----------------------------------------------------------------------------
189
190//----------------------------------------------------------------------------
195
196#endif
virtual int GetSliceProjection()
virtual void SetSliceProjection(int)
void WriteXML(ostream &of, int indent) override
void SliceProjectionThickerOnTopOn()
Set line thicker when on top of the plane, thinner when under.
void UpdateScene(vtkMRMLScene *scene) override
void SliceProjectionColoredWhenParallelOn()
Set line colored when parallel to slice plane.
vtkMRMLAnnotationLineDisplayNode(const vtkMRMLAnnotationLineDisplayNode &)
void ReadXMLAttributes(const char **atts) override
void SliceProjectionDashedOff()
Set SliceProjection to Plain.
static vtkMRMLAnnotationLineDisplayNode * New()
~vtkMRMLAnnotationLineDisplayNode() override=default
void CreateBackup() override
Create a backup of this node and attach it.
void operator=(const vtkMRMLAnnotationLineDisplayNode &)
void SliceProjectionColoredWhenParallelOff()
Set line color unchanged when parallel to slice plane.
void SetLineThickness(double thickness)
void PrintSelf(ostream &os, vtkIndent indent) override
void SliceProjectionThickerOnTopOff()
Set line thickness uniform.
void SliceProjectionDashedOn()
Set SliceProjection to Dashed.
vtkMRMLNode * CreateNodeInstance() override
Create instance of the default node. Like New only virtual.
void Copy(vtkMRMLNode *node) override
Copy node contents from another node of the same type. Does not copy node ID and Scene....
void RestoreBackup() override
Restore an attached backup of this node.
void ProcessMRMLEvents(vtkObject *, unsigned long, void *) override
Propagate events generated in mrml.
Abstract Superclass for all specific types of MRML nodes.
A set of MRML Nodes that supports serialization and undo/redo.