18 #ifndef __vtkMRMLMarkupsLineNode_h 19 #define __vtkMRMLMarkupsLineNode_h 25 #include "vtkSlicerMarkupsModuleMRMLExport.h" 42 void PrintSelf(ostream& os, vtkIndent indent)
override;
44 const char*
GetIcon()
override {
return ":/Icons/MarkupsLine.png";}
45 const char*
GetAddIcon()
override {
return ":/Icons/MarkupsLineMouseModePlace.png";}
46 const char*
GetPlaceAddIcon()
override {
return ":/Icons/MarkupsLineMouseModePlaceAdd.png";}
69 void WriteXML(ostream& of,
int indent)
override;
76 virtual double GetLineLengthWorld();
79 bool GetLineStartPosition(
double position[3]);
83 bool GetLineEndPosition(
double position[3]);
84 bool GetLineStartPositionWorld(
double position[3]);
85 bool GetLineEndPositionWorld(
double position[3]);
89 vtkVector3d GetLineStartPosition();
92 vtkVector3d GetLineEndPosition();
93 vtkVector3d GetLineStartPositionWorld();
94 vtkVector3d GetLineEndPositionWorld();
98 void SetLineStartPosition(
double position[3]);
101 void SetLineEndPosition(
double position[3]);
102 void SetLineStartPositionWorld(
double position[3]);
103 void SetLineEndPositionWorld(
double position[3]);
109 bool GetPosition1(
double position[3]);
115 bool GetPosition2(
double position[3]);
119 double* GetPosition1();
125 double* GetPosition2();
129 bool GetPositionWorldCoordinates1(
double position[3]);
135 bool GetPositionWorldCoordinates2(
double position[3]);
139 bool SetPosition1(
double newControl[3]);
145 bool SetPosition2(
double newControl[3]);
146 bool SetPosition1(
double nC1,
double nC2,
double nC3);
147 bool SetPosition2(
double nC1,
double nC2,
double nC3);
151 bool SetPositionWorldCoordinates1(
double newControl[3]);
157 bool SetPositionWorldCoordinates2(
double newControl[3]);
const char * GetMarkupType() override
Get markup type internal name.
void operator=(const vtkMRMLMarkupsNode &)
virtual void UpdateInteractionHandleToWorldMatrix()
Calculates the handle to world matrix based on the current control points.
MRML node to represent a line markup Line Markups nodes contain two control points. Visualization parameters are set in the vtkMRMLMarkupsDisplayNode class.
const char * GetIcon() override
vtkMRMLNode * CreateNodeInstance() override=0
MRMLNode methods.
const char * GetAddIcon() override
const char * GetNodeTagName() override
Get node XML tag name (like Volume, Model)
#define vtkMRMLCopyContentDefaultMacro(thisClassName)
void ReadXMLAttributes(const char **atts) override
Read node attributes from XML file.
Abstract Superclass for all specific types of MRML nodes.
const char * GetPlaceAddIcon() override
void WriteXML(ostream &of, int indent) override
Write this node's information to a MRML file in XML format.
const char * GetTypeDisplayName() override
const char * GetDefaultNodeNamePrefix() override
Get markup short name.
void PrintSelf(ostream &os, vtkIndent indent) override