14 #ifndef __itkMultiBSplineDeformableTransformWithNormal_h
15 #define __itkMultiBSplineDeformableTransformWithNormal_h
18 #include "itkNearestNeighborInterpolateImageFunction.h"
35 class TScalarType =
double,
36 unsigned int NDimensions = 3,
37 unsigned int VSplineOrder = 3 >
39 class MultiBSplineDeformableTransformWithNormal :
40 public AdvancedTransform< TScalarType, NDimensions, NDimensions >
91 itkGetStaticConstMacro( SpaceDimension ),
192 typedef ImageRegion< itkGetStaticConstMacro( SpaceDimension ) >
RegionType;
222 typedef Image<
unsigned char,
226 typedef itk::NearestNeighborInterpolateImageFunction<
231 typedef Vector< TScalarType, itkGetStaticConstMacro( SpaceDimension ) >
VectorType;
232 typedef Vector< VectorType, itkGetStaticConstMacro( SpaceDimension ) >
BaseType;
233 typedef Image< VectorType, itkGetStaticConstMacro( SpaceDimension ) >
ImageVectorType;
235 typedef Image< BaseType, itkGetStaticConstMacro( SpaceDimension ) >
ImageBaseType;
243 itkGetConstMacro( NbLabels,
unsigned char );
258 itkExceptionMacro( <<
"Method not applicable for deformable transform." );
268 itkExceptionMacro( <<
"Method not applicable for deformable transform. " );
279 itkExceptionMacro( <<
"Method not applicable for deformable transform. " );
293 return m_Trans[ 0 ]->GetValidRegion();
302 virtual bool IsLinear(
void )
const {
return false; }
307 return m_Trans[ 0 ]->m_WeightsFunction->GetNumberOfWeights();
313 return m_Trans[ 0 ]->m_WeightsFunction->GetNumberOfWeights();
319 return m_Trans[ 0 ]->m_WeightsFunction->GetNumberOfWeights() * SpaceDimension;
389 itkExceptionMacro( <<
"ERROR: GetJacobianOfSpatialHessian() not yet implemented "
390 <<
"in the MultiBSplineDeformableTransformWithNormal class." );
403 virtual void PrintSelf( std::ostream & os, Indent indent )
const;
479 itkGetStaticConstMacro( SpaceDimension ),
486 std::vector< typename TransformType::Pointer >
m_Trans;
504 #ifndef ITK_MANUAL_INSTANTIATION
505 #include "itkMultiBSplineDeformableTransformWithNormal.hxx"
508 #endif // end __itkMultiBSplineDeformableTransformWithNormal_h
Superclass::WeightsType WeightsType
Returns the weights over the support region used for B-spline interpolation/reconstruction.