Slicer 5.4
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
Loading...
Searching...
No Matches
vtkMRMLMarkupsFiducialNode.h
Go to the documentation of this file.
1/*==============================================================================
2
3 Program: 3D Slicer
4
5 Portions (c) Copyright Brigham and Women's Hospital (BWH) All Rights Reserved.
6
7 See COPYRIGHT.txt
8 or http://www.slicer.org/copyright/copyright.txt for details.
9
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
15
16==============================================================================*/
17
18#ifndef __vtkMRMLMarkupsFiducialNode_h
19#define __vtkMRMLMarkupsFiducialNode_h
20
21// MRML includes
23
24// Markups includes
25#include "vtkSlicerMarkupsModuleMRMLExport.h"
27#include "vtkMRMLMarkupsNode.h"
28
38class VTK_SLICER_MARKUPS_MODULE_MRML_EXPORT vtkMRMLMarkupsFiducialNode : public vtkMRMLMarkupsNode
39{
40public:
44 void PrintSelf(ostream& os, vtkIndent indent) override;
45
46 const char* GetIcon() override {return ":/Icons/MarkupsFiducial.png";}
47 const char* GetAddIcon() override {return ":/Icons/MarkupsFiducialMouseModePlace.png";}
48 const char* GetPlaceAddIcon() override {return ":/Icons/MarkupsFiducialMouseModePlaceAdd.png";}
49
50 //--------------------------------------------------------------------------
51 // MRMLNode methods
52 //--------------------------------------------------------------------------
53
55
57 const char* GetNodeTagName() override {return "MarkupsFiducial";}
58
60 const char* GetMarkupType() override {return "Fiducial";};
61
62 // Get markup type GUI display name
63 const char* GetTypeDisplayName() override {return "Point List";};
64
66 const char* GetDefaultNodeNamePrefix() override {return "F";};
67
69 void ReadXMLAttributes( const char** atts) override;
70
72 void WriteXML(ostream& of, int indent) override;
73
77
86 vtkSetMacro(MaximumNumberOfControlPoints, int);
87
91 vtkSetMacro(RequiredNumberOfControlPoints, int);
92
95
96 //-----------------------------------------------------------
97 // All public methods below are deprecated
98 //
99 // These methods are either deprecated because they use old terms (markup instead of control point),
100 // or include "array", "vector", "pointer" in the name (it is redundant, as input arguments can be
101 // deduced from the type; and return type for vectors is always vtkVectorNd).
102 //
103
106 {
107 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::GetNumberOfFiducials method is deprecated, please use GetNumberOfControlPoints instead");
108 return this->GetNumberOfControlPoints();
109 };
111 int AddFiducial(double x, double y, double z, std::string label = std::string())
112 {
113 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::AddFiducial method is deprecated, please use AddControlPoint instead");
114 return this->AddControlPoint(vtkVector3d(x, y, z), label);
115 }
118 int AddFiducialFromArray(double pos[3], std::string label = std::string())
119 {
120 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::AddFiducialFromArray method is deprecated, please use AddControlPoint instead");
121 return this->AddControlPoint(pos, label);
122 }
124 void GetNthFiducialPosition(int n, double pos[3])
125 {
126 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::GetNthFiducialPosition method is deprecated, please use GetNthControlPointPosition instead");
127 this->GetNthControlPointPosition(n, pos);
128 }
130 void SetNthFiducialPosition(int n, double x, double y, double z)
131 {
132 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::SetNthFiducialPosition method is deprecated, please use SetNthControlPointPosition instead");
133 this->SetNthControlPointPosition(n, x, y, z);
134 };
136 void SetNthFiducialPositionFromArray(int n, double pos[3])
137 {
138 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::SetNthFiducialPositionFromArray method is deprecated, please use SetNthControlPointPositionFromArray instead");
139 this->SetNthControlPointPositionFromArray(n, pos);
140 };
143 {
144 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::GetNthFiducialSelected method is deprecated, please use GetNthControlPointSelected instead");
145 return this->GetNthControlPointSelected(n);
146 };
148 void SetNthFiducialSelected(int n, bool flag)
149 {
150 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::SetNthFiducialSelected method is deprecated, please use SetNthControlPointSelected instead");
151 this->SetNthControlPointSelected(n, flag);
152 };
154 bool GetNthFiducialLocked(int n = 0)
155 {
156 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::GetNthFiducialLocked method is deprecated, please use GetNthControlPointLocked instead");
157 return this->GetNthControlPointLocked(n);
158 };
160 void SetNthFiducialLocked(int n, bool flag)
161 {
162 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::SetNthFiducialLocked method is deprecated, please use SetNthControlPointLocked instead");
163 this->SetNthControlPointLocked(n, flag);
164 };
167 {
168 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::GetNthFiducialVisibility method is deprecated, please use GetNthControlPointVisibility instead");
169 return this->GetNthControlPointVisibility(n);
170 };
172 void SetNthFiducialVisibility(int n, bool flag)
173 {
174 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::SetNthFiducialVisibility method is deprecated, please use SetNthControlPointVisibility instead");
175 this->SetNthControlPointVisibility(n, flag);
176 };
178 std::string GetNthFiducialLabel(int n = 0)
179 {
180 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::GetNthFiducialLabel method is deprecated, please use GetNthControlPointLabel instead");
181 return this->GetNthControlPointLabel(n);
182 };
184 void SetNthFiducialLabel(int n, std::string label)
185 {
186 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::SetNthFiducialLabel method is deprecated, please use SetNthControlPointLabel instead");
187 this->SetNthControlPointLabel(n, label);
188 };
190 std::string GetNthFiducialAssociatedNodeID(int n = 0)
191 {
192 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::GetNthFiducialAssociatedNodeID method is deprecated, please use GetNthControlPointAssociatedNodeID instead");
193 return this->GetNthControlPointAssociatedNodeID(n);
194 };
196 void SetNthFiducialAssociatedNodeID(int n, const char* id)
197 {
198 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::SetNthFiducialAssociatedNodeID method is deprecated, please use SetNthControlPointAssociatedNodeID instead");
199 this->SetNthControlPointAssociatedNodeID(n, (id ? std::string(id) : ""));
200 };
202 void SetNthFiducialWorldCoordinates(int n, double coords[4])
203 {
204 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::SetNthFiducialWorldCoordinates method is deprecated, please use SetNthControlPointPositionWorld instead");
205 this->SetNthControlPointPositionWorld(n, coords[0], coords[1], coords[2]);
206 };
208 void GetNthFiducialWorldCoordinates(int n, double coords[4])
209 {
210 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::GetNthFiducialWorldCoordinates method is deprecated, please use GetNthControlPointPositionWorld instead");
211 this->GetNthControlPointPositionWorld(n, coords);
212 };
213
214protected:
219
220};
221
222#endif
MRML node to represent a fiducial markup Fiducial Markups nodes contain a list of control points....
void SetNthFiducialWorldCoordinates(int n, double coords[4])
void GetNthFiducialWorldCoordinates(int n, double coords[4])
void SetNthFiducialPositionFromArray(int n, double pos[3])
std::string GetNthFiducialAssociatedNodeID(int n=0)
const char * GetNodeTagName() override
Get node XML tag name (like Volume, Model)
void operator=(const vtkMRMLMarkupsFiducialNode &)
void ReadXMLAttributes(const char **atts) override
Read node attributes from XML file.
void SetNthFiducialLabel(int n, std::string label)
const char * GetPlaceAddIcon() override
vtkMRMLMarkupsFiducialNode(const vtkMRMLMarkupsFiducialNode &)
vtkMRMLCopyContentMacro(vtkMRMLMarkupsFiducialNode)
int AddFiducial(double x, double y, double z, std::string label=std::string())
const char * GetMarkupType() override
Get markup type internal name.
void WriteXML(ostream &of, int indent) override
Write this node's information to a MRML file in XML format.
void SetNthFiducialLocked(int n, bool flag)
static vtkMRMLMarkupsFiducialNode * New()
~vtkMRMLMarkupsFiducialNode() override
void SetNthFiducialPosition(int n, double x, double y, double z)
void SetNthFiducialAssociatedNodeID(int n, const char *id)
const char * GetDefaultNodeNamePrefix() override
Get markup short name.
void SetNthFiducialVisibility(int n, bool flag)
const char * GetTypeDisplayName() override
void PrintSelf(ostream &os, vtkIndent indent) override
Print out the node information to the output stream.
void GetNthFiducialPosition(int n, double pos[3])
void SetNthFiducialSelected(int n, bool flag)
void CreateDefaultDisplayNodes() override
Create and observe default display node(s)
int AddFiducialFromArray(double pos[3], std::string label=std::string())
vtkMRMLNode * CreateNodeInstance() override
MRMLNode methods.
Abstract Superclass for all specific types of MRML nodes.