Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
mitkRegistrationHelper.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 
14 #ifndef mitkRegistrationHelper_h
15 #define mitkRegistrationHelper_h
16 
17 //ITK
18 #include <itkScalableAffineTransform.h>
19 
20 //MatchPoint
21 #include <mapRegistrationAlgorithmBase.h>
22 #include <mapRegistration.h>
23 
24 //MITK
25 #include <mitkImage.h>
26 #include <mitkDataNode.h>
27 #include <mitkNodePredicateBase.h>
28 
29 //MITK
32 
33 namespace mitk
34 {
45 {
46 public:
47 
49  typedef ::itk::ScalableAffineTransform< ::mitk::ScalarType,3 > Affine3DTransformType;
51  typedef ::map::core::Registration<3,3> Registration3DType;
53  typedef ::map::core::RegistrationBase RegistrationBaseType;
54 
65  static Affine3DTransformType::Pointer getAffineMatrix(const mitk::MAPRegistrationWrapper* wrapper, bool inverseKernel);
66 
75  static Affine3DTransformType::Pointer getAffineMatrix(const RegistrationBaseType* registration, bool inverseKernel);
76 
83  static bool is3D(const mitk::MAPRegistrationWrapper* wrapper);
84 
91  static bool is3D(const RegistrationBaseType* regBase);
92 
100  static bool IsRegNode(const mitk::DataNode* node);
101 
107  static NodePredicateBase::ConstPointer RegNodePredicate();
108 
114  static NodePredicateBase::ConstPointer ImageNodePredicate();
115 
121  static NodePredicateBase::ConstPointer PointSetNodePredicate();
122 
123 private:
124  typedef ::map::core::Registration<3,3>::DirectMappingType RegistrationKernel3DBase;
125  static Affine3DTransformType::Pointer getAffineMatrix(const RegistrationKernel3DBase& kernel);
126 
129  MITKRegistrationHelper& operator = (const MITKRegistrationHelper&);
131 
132 };
133 
134 }
135 
136 #endif
#define MITKMATCHPOINTREGISTRATION_EXPORT
Central node class of the MITK data tree, associating a data object with properties and mappers.
Definition: mitkDataNode.h:72
Wrapper class that adapts MatchPoint registration objects to the MITK data model.
Static utility class providing helper methods for working with MatchPoint registrations in MITK.
static NodePredicateBase::ConstPointer RegNodePredicate()
Returns a node predicate that identifies nodes containing MatchPoint registrations.
::map::core::Registration< 3, 3 > Registration3DType
3D-to-3D MatchPoint registration type.
static Affine3DTransformType::Pointer getAffineMatrix(const mitk::MAPRegistrationWrapper *wrapper, bool inverseKernel)
Extracts the affine transformation matrix from a registration wrapper's kernel.
::itk::ScalableAffineTransform< ::mitk::ScalarType, 3 > Affine3DTransformType
3D scalable affine transform type used for matrix extraction.
::map::core::RegistrationBase RegistrationBaseType
Base type of all MatchPoint registrations.
static NodePredicateBase::ConstPointer PointSetNodePredicate()
Returns a node predicate that identifies nodes containing point sets.
static bool is3D(const mitk::MAPRegistrationWrapper *wrapper)
Checks whether the given registration wrapper represents a 3D-to-3D registration.
static bool is3D(const RegistrationBaseType *regBase)
Checks whether the given MatchPoint registration is a 3D-to-3D registration.
static bool IsRegNode(const mitk::DataNode *node)
Checks whether the given DataNode contains a MatchPoint registration.
static NodePredicateBase::ConstPointer ImageNodePredicate()
Returns a node predicate that identifies nodes containing images.
static Affine3DTransformType::Pointer getAffineMatrix(const RegistrationBaseType *registration, bool inverseKernel)
Extracts the affine transformation matrix from a MatchPoint registration's kernel.
Find image slices visible on a given plane.