18 #ifndef __itkTimeVaryingBSplineVelocityFieldTransformParametersAdaptor_h
19 #define __itkTimeVaryingBSplineVelocityFieldTransformParametersAdaptor_h
63 template<
class TTransform>
91 typedef typename TimeVaryingVelocityFieldControlPointLatticeType::RegionType
RegionType;
92 typedef typename TimeVaryingVelocityFieldControlPointLatticeType::IndexType
IndexType;
93 typedef typename TimeVaryingVelocityFieldControlPointLatticeType::PixelType
VectorType;
94 typedef typename TimeVaryingVelocityFieldControlPointLatticeType::PointType
OriginType;
96 typedef typename TimeVaryingVelocityFieldControlPointLatticeType::SizeType
SizeType;
98 typedef typename TimeVaryingVelocityFieldControlPointLatticeType::SizeType
MeshSizeType;
99 typedef typename TimeVaryingVelocityFieldControlPointLatticeType::DirectionType
DirectionType;
100 typedef typename TimeVaryingVelocityFieldControlPointLatticeType::SpacingType
SpacingType;
103 itkStaticConstMacro( TotalDimension,
unsigned int, TransformType::Dimension + 1 );
106 void SetRequiredTransformDomainMeshSize(
const MeshSizeType & );
109 itkGetConstReferenceMacro( RequiredTransformDomainMeshSize,
MeshSizeType );
118 void SetRequiredTransformDomainOrigin(
const OriginType & );
121 itkGetConstReferenceMacro( RequiredTransformDomainOrigin,
OriginType );
124 void SetRequiredTransformDomainDirection(
const DirectionType & );
127 itkGetConstReferenceMacro( RequiredTransformDomainDirection,
DirectionType );
130 const OriginType GetRequiredControlPointLatticeOrigin()
const
135 requiredLatticeOrigin[i] = this->m_RequiredFixedParameters[TotalDimension + i];
137 return requiredLatticeOrigin;
147 requiredLatticeSpacing[i] = this->m_RequiredFixedParameters[2 * TotalDimension + i];
149 return requiredLatticeSpacing;
154 const SizeType GetRequiredControlPointLatticeSize()
const
159 requiredLatticeSize[i] =
static_cast<SizeValueType>( this->m_RequiredFixedParameters[i] );
161 return requiredLatticeSize;
173 requiredLatticeDirection[i][j] = this->m_RequiredFixedParameters[3 * TotalDimension + ( i * TotalDimension + j )];
176 return requiredLatticeDirection;
181 virtual void AdaptTransformParameters();
183 virtual void SetRequiredFixedParameters(
const ParametersType );
189 void PrintSelf( std::ostream& os,
Indent indent )
const;
193 void operator=(
const Self & );
196 void UpdateRequiredFixedParameters();
206 #ifndef ITK_MANUAL_INSTANTIATION
207 #include "itkTimeVaryingBSplineVelocityFieldTransformParametersAdaptor.hxx"