Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
mitkNavigationDataTransformFilter.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,
6 Division of Medical and Biological Informatics.
7 All rights reserved.
8 
9 This software is distributed WITHOUT ANY WARRANTY; without
10 even the implied warranty of MERCHANTABILITY or FITNESS FOR
11 A PARTICULAR PURPOSE.
12 
13 See LICENSE.txt or http://www.mitk.org for details.
14 
15 ===================================================================*/
16 
17 
18 #ifndef MITKNavigationDataTransformFilter_H_HEADER_INCLUDED_
19 #define MITKNavigationDataTransformFilter_H_HEADER_INCLUDED_
20 
22 
23 #include <itkVersorRigid3DTransform.h>
24 
25 
26 namespace mitk {
27 
35  {
36 
37  public:
38 
39  // The epsilon ITK uses to check the orthogonality of rotation matrices
40  // is too small for float precision so we must use double precision to
41  // compose the transforms and convert back to float (mitk::ScalarType) at
42  // the end
43  typedef itk::VersorRigid3DTransform< double > TransformType;
44 
46  itkFactorylessNewMacro(Self)
47  itkCloneMacro(Self)
48 
52  itkSetObjectMacro(Rigid3DTransform, TransformType);
53  itkGetConstObjectMacro(Rigid3DTransform, TransformType);
54 
68  itkSetMacro(Precompose, bool);
69  itkGetMacro(Precompose, bool);
70  itkBooleanMacro(Precompose);
71 
72  protected:
73 
75  virtual ~NavigationDataTransformFilter();
76 
82  virtual void GenerateData() override;
83 
84  TransformType::Pointer m_Rigid3DTransform;
85  bool m_Precompose;
86  };
87 } // namespace mitk
88 
89 #endif /* MITKNavigationDataTransformFilter_H_HEADER_INCLUDED_ */
NavigationDataTransformFilter applies an user-defined rigid transformation on navigation data objects...
NavigationDataToNavigationDataFilter is the base class of all filters that receive NavigationDatas as...
DataCollection - Class to facilitate loading/accessing structured data.
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:44
itk::VersorRigid3DTransform< double > TransformType