14#ifndef mitkNavigationData_h
15#define mitkNavigationData_h
16#include <itkDataObject.h>
17#include <MitkIGTBaseExports.h>
18#include <mitkCommon.h>
19#include <mitkNumericTypes.h>
81 virtual bool IsDataValid()
const;
138 void Graft(
const DataObject *data)
override;
145 void CopyInformation(
const DataObject* data)
override;
152 void PrintSelf(std::ostream& os, itk::Indent indent)
const override;
158 void SetPositionAccuracy(mitk::ScalarType error);
164 void SetOrientationAccuracy(mitk::ScalarType error);
170 mitk::AffineTransform3D::Pointer GetAffineTransform3D()
const;
175 mitk::Matrix3D GetRotationMatrix()
const;
183 mitk::Point3D TransformPoint(
const mitk::Point3D point)
const;
189 mitk::NavigationData::Pointer GetInverse()
const;
201 void Compose(
const mitk::NavigationData::Pointer n,
const bool pre =
false);
225 NavigationData(mitk::AffineTransform3D::Pointer affineTransform3D,
const bool checkForRotationMatrix =
true);
269 void ResetCovarianceValidity();
272 static mitk::NavigationData::Pointer getComposition(
const mitk::NavigationData::Pointer nd1,
const mitk::NavigationData::Pointer nd2);
Time stamp in milliseconds.
itkGetConstMacro(HasOrientation, bool)
gets the HasOrientation flag of the NavigationData object
mitkClassMacroItkParent(NavigationData, itk::DataObject)
std::string m_Name
name of the navigation data
itkGetConstMacro(Position, PositionType)
returns position of the NavigationData object
itkSetMacro(HasOrientation, bool)
sets the HasOrientation flag of the NavigationData object
itkSetMacro(DataValid, bool)
sets the dataValid flag of the NavigationData object indicating if the object contains valid data
TimeStampType m_IGTTimeStamp
contains the time at which the tracking data was recorded
bool m_HasOrientation
defines if orientation part of m_CovErrorMatrix is valid
itkGetConstMacro(HasPosition, bool)
gets the HasPosition flag of the NavigationData object
itkSetMacro(CovErrorMatrix, CovarianceMatrixType)
sets the 6x6 Error Covariance Matrix of the NavigationData object
itk::Matrix< mitk::ScalarType, 6, 6 > CovarianceMatrixType
type that holds the error characterization of the position and orientation measurements
OrientationType m_Orientation
holds the orientation part of the tracking data
itkGetConstMacro(CovErrorMatrix, CovarianceMatrixType)
gets the 6x6 Error Covariance Matrix of the NavigationData object
bool m_HasPosition
defines if position part of m_CovErrorMatrix is valid
itkSetStringMacro(Name)
set the name of the NavigationData object
mitkNewMacro2Param(Self, mitk::AffineTransform3D::Pointer, const bool)
mitk::Quaternion OrientationType
Type that holds the orientation part of the tracking data.
itkSetMacro(Position, PositionType)
sets the position of the NavigationData object
itkGetConstMacro(Orientation, OrientationType)
returns the orientation of the NavigationData object
double TimeStampType
type that holds the time at which the data was recorded in milliseconds
PositionType m_Position
holds the position part of the tracking data
itkSetMacro(Orientation, OrientationType)
sets the orientation of the NavigationData object
itkGetConstMacro(IGTTimeStamp, TimeStampType)
gets the IGT timestamp of the NavigationData object in milliseconds Please note, that there is also t...
itkFactorylessNewMacro(Self)
itkSetMacro(HasPosition, bool)
sets the HasPosition flag of the NavigationData object
CovarianceMatrixType m_CovErrorMatrix
A 6x6 covariance matrix parameterizing the Gaussian error distribution of the measured position and o...
itkGetStringMacro(Name)
returns the name of the NavigationData object
itkSetMacro(IGTTimeStamp, TimeStampType)
sets the IGT timestamp of the NavigationData object in milliseconds
mitk::Point3D PositionType
Type that holds the position part of the tracking data.
bool m_DataValid
defines if the object contains valid values
mitkNewMacro1Param(Self, mitk::AffineTransform3D::Pointer)
MITKIGTBASE_EXPORT bool Equal(const mitk::NavigationData &leftHandSide, const mitk::NavigationData &rightHandSide, ScalarType eps=mitk::eps, bool verbose=false)
Equal A function comparing two navigation data objects for beeing equal in meta- and imagedata.