Slicer 5.6
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
37class VTK_SLICER_MARKUPS_MODULE_MRML_EXPORT vtkMRMLMarkupsFiducialNode : public vtkMRMLMarkupsNode
38{
39public:
43 void PrintSelf(ostream& os, vtkIndent indent) override;
44
45 const char* GetIcon() override {return ":/Icons/MarkupsFiducial.png";}
46 const char* GetAddIcon() override {return ":/Icons/MarkupsFiducialMouseModePlace.png";}
47 const char* GetPlaceAddIcon() override {return ":/Icons/MarkupsFiducialMouseModePlaceAdd.png";}
48
49 //--------------------------------------------------------------------------
50 // MRMLNode methods
51 //--------------------------------------------------------------------------
52
54
56 const char* GetNodeTagName() override {return "MarkupsFiducial";}
57
59 const char* GetMarkupType() override {return "Fiducial";};
60
61 // Get markup type GUI display name
62 const char* GetTypeDisplayName() override {return "Point List";};
63
65 const char* GetDefaultNodeNamePrefix() override {return "F";};
66
68 void ReadXMLAttributes( const char** atts) override;
69
71 void WriteXML(ostream& of, int indent) override;
72
76
85 vtkSetMacro(MaximumNumberOfControlPoints, int);
86
90 vtkSetMacro(RequiredNumberOfControlPoints, int);
91
94
95 //-----------------------------------------------------------
96 // All public methods below are deprecated
97 //
98 // These methods are either deprecated because they use old terms (markup instead of control point),
99 // or include "array", "vector", "pointer" in the name (it is redundant, as input arguments can be
100 // deduced from the type; and return type for vectors is always vtkVectorNd).
101 //
102
105 {
106 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::GetNumberOfFiducials method is deprecated, please use GetNumberOfControlPoints instead");
107 return this->GetNumberOfControlPoints();
108 };
110 int AddFiducial(double x, double y, double z, std::string label = std::string())
111 {
112 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::AddFiducial method is deprecated, please use AddControlPoint instead");
113 return this->AddControlPoint(vtkVector3d(x, y, z), label);
114 }
117 int AddFiducialFromArray(double pos[3], std::string label = std::string())
118 {
119 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::AddFiducialFromArray method is deprecated, please use AddControlPoint instead");
120 return this->AddControlPoint(pos, label);
121 }
123 void GetNthFiducialPosition(int n, double pos[3])
124 {
125 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::GetNthFiducialPosition method is deprecated, please use GetNthControlPointPosition instead");
126 this->GetNthControlPointPosition(n, pos);
127 }
129 void SetNthFiducialPosition(int n, double x, double y, double z)
130 {
131 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::SetNthFiducialPosition method is deprecated, please use SetNthControlPointPosition instead");
132 this->SetNthControlPointPosition(n, x, y, z);
133 };
135 void SetNthFiducialPositionFromArray(int n, double pos[3])
136 {
137 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::SetNthFiducialPositionFromArray method is deprecated, please use SetNthControlPointPositionFromArray instead");
138 this->SetNthControlPointPositionFromArray(n, pos);
139 };
142 {
143 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::GetNthFiducialSelected method is deprecated, please use GetNthControlPointSelected instead");
144 return this->GetNthControlPointSelected(n);
145 };
147 void SetNthFiducialSelected(int n, bool flag)
148 {
149 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::SetNthFiducialSelected method is deprecated, please use SetNthControlPointSelected instead");
150 this->SetNthControlPointSelected(n, flag);
151 };
153 bool GetNthFiducialLocked(int n = 0)
154 {
155 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::GetNthFiducialLocked method is deprecated, please use GetNthControlPointLocked instead");
156 return this->GetNthControlPointLocked(n);
157 };
159 void SetNthFiducialLocked(int n, bool flag)
160 {
161 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::SetNthFiducialLocked method is deprecated, please use SetNthControlPointLocked instead");
162 this->SetNthControlPointLocked(n, flag);
163 };
166 {
167 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::GetNthFiducialVisibility method is deprecated, please use GetNthControlPointVisibility instead");
168 return this->GetNthControlPointVisibility(n);
169 };
171 void SetNthFiducialVisibility(int n, bool flag)
172 {
173 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::SetNthFiducialVisibility method is deprecated, please use SetNthControlPointVisibility instead");
174 this->SetNthControlPointVisibility(n, flag);
175 };
177 std::string GetNthFiducialLabel(int n = 0)
178 {
179 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::GetNthFiducialLabel method is deprecated, please use GetNthControlPointLabel instead");
180 return this->GetNthControlPointLabel(n);
181 };
183 void SetNthFiducialLabel(int n, std::string label)
184 {
185 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::SetNthFiducialLabel method is deprecated, please use SetNthControlPointLabel instead");
186 this->SetNthControlPointLabel(n, label);
187 };
189 std::string GetNthFiducialAssociatedNodeID(int n = 0)
190 {
191 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::GetNthFiducialAssociatedNodeID method is deprecated, please use GetNthControlPointAssociatedNodeID instead");
192 return this->GetNthControlPointAssociatedNodeID(n);
193 };
195 void SetNthFiducialAssociatedNodeID(int n, const char* id)
196 {
197 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::SetNthFiducialAssociatedNodeID method is deprecated, please use SetNthControlPointAssociatedNodeID instead");
198 this->SetNthControlPointAssociatedNodeID(n, (id ? std::string(id) : ""));
199 };
201 void SetNthFiducialWorldCoordinates(int n, double coords[4])
202 {
203 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::SetNthFiducialWorldCoordinates method is deprecated, please use SetNthControlPointPositionWorld instead");
204 this->SetNthControlPointPositionWorld(n, coords[0], coords[1], coords[2]);
205 };
207 void GetNthFiducialWorldCoordinates(int n, double coords[4])
208 {
209 vtkWarningMacro("vtkMRMLMarkupsFiducialNode::GetNthFiducialWorldCoordinates method is deprecated, please use GetNthControlPointPositionWorld instead");
210 this->GetNthControlPointPositionWorld(n, coords);
211 };
212
213protected:
218
219};
220
221#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.