Medical Imaging Interaction Toolkit
2023.04.00
Medical Imaging Interaction Toolkit
|
Interface for all Tracking Tools. More...
#include <mitkTrackingTool.h>
Public Member Functions | |
mitkClassMacroItkParent (TrackingTool, itk::Object) | |
Pointer | Clone () const |
void | PrintSelf (std::ostream &os, itk::Indent indent) const override |
virtual const char * | GetToolName () const |
every tool has a name thatgit can be used to identify it. More... | |
virtual void | SetToolName (const std::string _arg) |
Sets the name of the tool. More... | |
virtual void | SetToolName (const char *_arg) |
Sets the name of the tool. More... | |
Point3D | GetToolTipPosition () const |
returns the tool tip in tool coordinates, which where set by SetToolTip More... | |
Quaternion | GetToolAxisOrientation () const |
returns the transformation of the tool axis with respect to the MITK-IGT main tool axis (0,0,-1) More... | |
virtual void | SetToolTipPosition (Point3D toolTipPosition, Quaternion orientation, ScalarType eps=0.0) |
defines a tool tip for this tool in tool coordinates. GetPosition() and GetOrientation() return the data of the tool tip if it is defined. By default no tooltip is defined. More... | |
virtual bool | IsToolTipSet () const |
returns true if a tool tip is set, false if not More... | |
virtual void | GetPosition (Point3D &position) const |
returns the current position of the tool as an array of three floats (in the tracking device coordinate system) More... | |
virtual void | SetPosition (Point3D position) |
sets the position More... | |
virtual void | GetOrientation (Quaternion &orientation) const |
returns the current orientation of the tool as a quaternion in a mitk::Point4D (in the tracking device coordinate system) More... | |
virtual void | SetOrientation (Quaternion orientation) |
sets the orientation as a quaternion More... | |
virtual bool | Enable () |
enables the tool, so that it will be tracked More... | |
virtual bool | Disable () |
disables the tool, so that it will not be tracked anymore More... | |
virtual bool | IsEnabled () const |
returns whether the tool is enabled or disabled More... | |
virtual void | SetDataValid (bool isDataValid) |
sets if the tracking data (position & orientation) is valid More... | |
virtual bool | IsDataValid () const |
returns true if the current position data is valid (no error during tracking, tracking error below threshold, ...) More... | |
virtual float | GetTrackingError () const |
returns one value that corresponds to the overall tracking error. More... | |
virtual void | SetTrackingError (float error) |
sets the tracking error More... | |
virtual const char * | GetErrorMessage () const |
if the data is not valid, ErrorMessage should contain a string explaining why it is invalid (the Set-method should be implemented in subclasses, it should not be accessible by the user) More... | |
virtual void | SetErrorMessage (const char *_arg) |
sets the error message More... | |
virtual void | SetIGTTimeStamp (double _arg) |
Sets the IGT timestamp of the tracking tool object (time in milliseconds) More... | |
virtual double | GetIGTTimeStamp () const |
Gets the IGT timestamp of the tracking tool object (time in milliseconds). Returns 0 if the timestamp was not set. More... | |
Static Public Member Functions | |
static Pointer | New () |
Protected Member Functions | |
TrackingTool () | |
~TrackingTool () override | |
Protected Attributes | |
std::string | m_ToolName |
every tool has a name that can be used to identify it. More... | |
std::string | m_ErrorMessage |
if a tool is invalid, this member should contain a human readable explanation of why it is invalid More... | |
double | m_IGTTimeStamp |
contains the time at which the tracking data was recorded More... | |
std::mutex | m_MyMutex |
mutex to control concurrent access to the tool More... | |
Point3D | m_Position |
holds the position of the tool in global tracking coordinates More... | |
Quaternion | m_Orientation |
holds the orientation of the tool´in global tracking coordinates More... | |
float | m_TrackingError |
holds the tracking error of the tool More... | |
bool | m_Enabled |
if true, tool is enabled and should receive tracking updates from the tracking device More... | |
bool | m_DataValid |
if true, data in m_Position and m_Orientation is valid, e.g. true tracking data More... | |
Point3D | m_ToolTipPosition |
holds the position of the tool tip in the coordinate system of the tracking sensor More... | |
Quaternion | m_ToolAxisOrientation |
holds the rotation of the sensor coordinate system such that the z-axis coincides with the main tool axis e.g. obtained by a tool calibration More... | |
bool | m_ToolTipSet |
Interface for all Tracking Tools.
Documentation This class is a complete TrackingTool implementation. It can either be used directly by TrackingDevices, or be subclassed for more specific implementations. mitk::MicroBirdTrackingDevice uses this class to manage its tools. Other tracking devices uses specialized versions of this class (e.g. mitk::NDITrackingTool)
The TrackingTool class holds all coordinate transforms associated with tracking of a tool. The sensor attached to the tool is localized in the global tracking coordinate system (m_Position, m_Orientation). A tool tip (m_ToolTipPosition) can be defined in sensor coordinates. The tool axis defines the main axis of the tool and is defined as the negative z-axis of the tool tip coordinate system The main axis of the representation object of the tool (e.g. a surface) has to be defined along the negative z-axis
Definition at line 42 of file mitkTrackingTool.h.
|
protected |
|
overrideprotected |
Pointer mitk::TrackingTool::Clone | ( | ) | const |
|
virtual |
disables the tool, so that it will not be tracked anymore
Reimplemented in mitk::OptitrackTrackingTool.
|
virtual |
enables the tool, so that it will be tracked
Reimplemented in mitk::OptitrackTrackingTool.
|
virtual |
if the data is not valid, ErrorMessage should contain a string explaining why it is invalid (the Set-method should be implemented in subclasses, it should not be accessible by the user)
|
virtual |
Gets the IGT timestamp of the tracking tool object (time in milliseconds). Returns 0 if the timestamp was not set.
|
virtual |
returns the current orientation of the tool as a quaternion in a mitk::Point4D (in the tracking device coordinate system)
Reimplemented in mitk::OptitrackTrackingTool.
|
virtual |
returns the current position of the tool as an array of three floats (in the tracking device coordinate system)
Reimplemented in mitk::OptitrackTrackingTool.
Quaternion mitk::TrackingTool::GetToolAxisOrientation | ( | ) | const |
returns the transformation of the tool axis with respect to the MITK-IGT main tool axis (0,0,-1)
|
virtual |
every tool has a name thatgit can be used to identify it.
Point3D mitk::TrackingTool::GetToolTipPosition | ( | ) | const |
returns the tool tip in tool coordinates, which where set by SetToolTip
|
virtual |
returns one value that corresponds to the overall tracking error.
Reimplemented in mitk::OptitrackTrackingTool.
|
virtual |
returns true if the current position data is valid (no error during tracking, tracking error below threshold, ...)
Reimplemented in mitk::OptitrackTrackingTool.
|
virtual |
returns whether the tool is enabled or disabled
Reimplemented in mitk::OptitrackTrackingTool.
|
virtual |
returns true if a tool tip is set, false if not
mitk::TrackingTool::mitkClassMacroItkParent | ( | TrackingTool | , |
itk::Object | |||
) |
|
static |
|
override |
|
virtual |
sets if the tracking data (position & orientation) is valid
Reimplemented in mitk::OptitrackTrackingTool.
|
virtual |
sets the error message
|
virtual |
Sets the IGT timestamp of the tracking tool object (time in milliseconds)
|
virtual |
sets the orientation as a quaternion
|
virtual |
sets the position
|
virtual |
Sets the name of the tool.
|
virtual |
Sets the name of the tool.
|
virtual |
defines a tool tip for this tool in tool coordinates. GetPosition() and GetOrientation() return the data of the tool tip if it is defined. By default no tooltip is defined.
|
virtual |
sets the tracking error
Reimplemented in mitk::OptitrackTrackingTool.
|
protected |
if true, data in m_Position and m_Orientation is valid, e.g. true tracking data
Definition at line 95 of file mitkTrackingTool.h.
|
protected |
if true, tool is enabled and should receive tracking updates from the tracking device
Definition at line 94 of file mitkTrackingTool.h.
|
protected |
if a tool is invalid, this member should contain a human readable explanation of why it is invalid
Definition at line 87 of file mitkTrackingTool.h.
|
protected |
contains the time at which the tracking data was recorded
Definition at line 88 of file mitkTrackingTool.h.
|
mutableprotected |
mutex to control concurrent access to the tool
Definition at line 89 of file mitkTrackingTool.h.
|
protected |
holds the orientation of the tool´in global tracking coordinates
Definition at line 92 of file mitkTrackingTool.h.
|
protected |
holds the position of the tool in global tracking coordinates
Definition at line 91 of file mitkTrackingTool.h.
|
protected |
holds the rotation of the sensor coordinate system such that the z-axis coincides with the main tool axis e.g. obtained by a tool calibration
Definition at line 97 of file mitkTrackingTool.h.
|
protected |
every tool has a name that can be used to identify it.
Definition at line 86 of file mitkTrackingTool.h.
|
protected |
holds the position of the tool tip in the coordinate system of the tracking sensor
Definition at line 96 of file mitkTrackingTool.h.
|
protected |
Definition at line 98 of file mitkTrackingTool.h.
|
protected |
holds the tracking error of the tool
Definition at line 93 of file mitkTrackingTool.h.