Medical Imaging Interaction Toolkit  2023.12.00
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
mitkOptitrackTrackingTool.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef mitkOptitrackTrackingTool_h
14 #define mitkOptitrackTrackingTool_h
15 
16 #include <MitkIGTExports.h>
17 #include "mitkTrackingDevice.h"
18 #include "mitkTrackingTool.h"
19 #include "mitkIGTTimeStamp.h"
20 #include <cstdlib>
21 #include <cstdio>
22 #include <ctime>
23 #include <itksys/SystemTools.hxx>
24 #include "mitkCommon.h"
25 #include <mitkTrackingTool.h>
26 #include <mitkVector.h>
27 #include "mitkIGTException.h"
28 
29 
30 
35 
36 
37 namespace mitk
38 {
39 
40  //class OptitrackTrackingDevice;
41 
50  class MITKIGT_EXPORT OptitrackTrackingTool : public TrackingTool
51  {
52  public:
55  itkNewMacro(Self);
56 
57 
58 
72  bool SetToolByFileName(std::string nameFile);
73 
79  int get_IDnext();
80 
86  bool DeleteTrackable();
87 
92  using Superclass::SetPosition;
93  void SetPosition(mitk::Point3D position, ScalarType eps=0.0);
94 
99  using Superclass::SetOrientation;
100  void SetOrientation(mitk::Quaternion orientation, ScalarType eps=0.0);
101 
106  void GetPosition(mitk::Point3D& position) const override;
107 
112  void GetOrientation(mitk::Quaternion& orientation) const override;
113 
119  bool Enable() override;
120 
126  bool Disable() override;
127 
133  bool IsEnabled() const override;
134 
140  bool IsDataValid() const override;
141 
147  float GetTrackingError() const override;
148 
153  void SetTrackingError(float FLEerror) override;
154 
159  void SetDataValid(bool _arg) override;
160 
165  void updateTool();
166 
171 
175  ~OptitrackTrackingTool() override;
176 
180  std::string m_fileConfiguration;
181 
185  int m_ID;
186 
191 
195  float* m_pivotPoint;
196 
201 
205  float m_FLE;
206 
207  private:
209  const OptitrackTrackingTool& operator=(const OptitrackTrackingTool&);
210 
211  };
212 }
213 #endif
mitk::eps
const MITKCORE_EXPORT ScalarType eps
mitkIGTTimeStamp.h
mitk::OptitrackTrackingTool::m_pivotPoint
float * m_pivotPoint
location of the pivot point during calibration
Definition: mitkOptitrackTrackingTool.h:195
mitk::OptitrackTrackingTool::m_calibrationPoints
float * m_calibrationPoints
List of Markers locations in calibration position and orientation.
Definition: mitkOptitrackTrackingTool.h:190
mitk
Find image slices visible on a given plane.
Definition: RenderingTests.dox:1
mitk::OptitrackTrackingTool::m_fileConfiguration
std::string m_fileConfiguration
File of the configuration for the tool.
Definition: mitkOptitrackTrackingTool.h:180
mitk::OptitrackTrackingTool::m_FLE
float m_FLE
Expected value of the fiducial localization error (rms)
Definition: mitkOptitrackTrackingTool.h:205
mitkTrackingTool.h
mitk::Point< ScalarType, 3 >
mitkCommon.h
mitk::OptitrackTrackingTool::m_ID
int m_ID
ID number from Optitrack API.
Definition: mitkOptitrackTrackingTool.h:185
mitkOptitrackErrorMessages.h
mitk::OptitrackTrackingTool::m_numMarkers
int m_numMarkers
Number of Markers that blong to the tool.
Definition: mitkOptitrackTrackingTool.h:200
mitk::TrackingTool
Interface for all Tracking Tools.
Definition: mitkTrackingTool.h:42
mitkClassMacro
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:36
mitkVector.h
mitk::OptitrackTrackingTool
An object of this class represents the a Tool tracked by Optitrack System. You can define the tool by...
Definition: mitkOptitrackTrackingTool.h:50
mitk::Quaternion
vnl_quaternion< ScalarType > Quaternion
Definition: mitkQuaternion.h:21
mitkTrackingDevice.h
mitk::ScalarType
double ScalarType
Definition: mitkNumericConstants.h:20
mitk::OptitrackTrackingDevice
An object of this class represents the Optitrack device. You can add tools to this device,...
Definition: mitkOptitrackTrackingDevice.h:52