42 #ifndef vtkThinPlateSplineTransform_h
43 #define vtkThinPlateSplineTransform_h
45 #include "vtkCommonTransformsModule.h"
48 #define VTK_RBF_CUSTOM 0
50 #define VTK_RBF_R2LOGR 2
63 vtkGetMacro(Sigma,
double);
75 void SetBasis(
int basis);
76 vtkGetMacro(Basis,
int);
79 const char *GetBasisAsString();
88 if (this->BasisFunction == U) {
return; }
90 this->BasisFunction = U;
93 this->BasisDerivative = dUdr;
104 vtkGetObjectMacro(SourceLandmarks,
vtkPoints);
114 vtkGetObjectMacro(TargetLandmarks,
vtkPoints);
129 ~vtkThinPlateSplineTransform() VTK_OVERRIDE;
134 void InternalUpdate() VTK_OVERRIDE;
141 void ForwardTransformPoint(const
float in[3],
float out[3]) VTK_OVERRIDE;
142 void ForwardTransformPoint(const
double in[3],
double out[3]) VTK_OVERRIDE;
144 void ForwardTransformDerivative(const
float in[3],
float out[3],
145 float derivative[3][3]) VTK_OVERRIDE;
146 void ForwardTransformDerivative(const
double in[3],
double out[3],
147 double derivative[3][3]) VTK_OVERRIDE;
154 double (*BasisFunction)(
double r);
155 double (*BasisDerivative)(
double r,
double& dUdr);
162 vtkThinPlateSplineTransform(const vtkThinPlateSplineTransform&) VTK_DELETE_FUNCTION;
163 void operator=(const vtkThinPlateSplineTransform&) VTK_DELETE_FUNCTION;
boost::graph_traits< vtkGraph * >::vertex_descriptor target(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
vtkTypeUInt64 vtkMTimeType
a simple class to control print indentation
virtual void Modified()
Update the modification time for this object.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
boost::graph_traits< vtkGraph * >::vertex_descriptor source(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
represent and manipulate 3D points