Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
mitkThinPlateSplineCurvedGeometry.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 mitkThinPlateSplineCurvedGeometry_h
14 #define mitkThinPlateSplineCurvedGeometry_h
15 
17 
18 class vtkPoints;
19 class vtkThinPlateSplineTransform;
20 
21 namespace mitk
22 {
32  {
33  public:
35 
36  itkFactorylessNewMacro(Self);
37 
38  itkCloneMacro(Self);
39 
44  void ComputeGeometry() override;
45 
50  vtkThinPlateSplineTransform *GetThinPlateSplineTransform() const { return m_ThinPlateSplineTransform; }
51 
56  virtual void SetSigma(double sigma);
57 
62  virtual double GetSigma() const;
63 
72  bool IsValid() const override;
73 
74  protected:
77 
79 
80  vtkThinPlateSplineTransform *m_ThinPlateSplineTransform;
81 
84 
92  void PreSetSpacing(const mitk::Vector3D &aSpacing) override { Superclass::PreSetSpacing(aSpacing); };
93 
95  };
96 } // namespace mitk
97 
98 #endif
#define MITKCORE_EXPORT
Superclass of AbstractTransformGeometry sub-classes defined by a set of landmarks.
Thin-plate-spline-based landmark-based curved geometry.
virtual double GetSigma() const
Get the stiffness parameter (sigma) of the thin-plate-spline transform.
ThinPlateSplineCurvedGeometry(const ThinPlateSplineCurvedGeometry &other)
bool IsValid() const override
Check whether the geometry is valid.
virtual void SetSigma(double sigma)
Set the stiffness parameter (sigma) of the thin-plate-spline transform.
vtkThinPlateSplineTransform * GetThinPlateSplineTransform() const
Return the underlying vtkThinPlateSplineTransform.
vtkThinPlateSplineTransform * m_ThinPlateSplineTransform
void PreSetSpacing(const mitk::Vector3D &aSpacing) override
Hook for subclasses to customize spacing behavior.
mitkClassMacro(ThinPlateSplineCurvedGeometry, LandmarkProjectorBasedCurvedGeometry)
void ComputeGeometry() override
Compute the geometry by initializing the thin-plate-spline transform from projected and target landma...
Find image slices visible on a given plane.