SimpleITK  1.0.1
Classes | Public Types | Public Member Functions | Protected Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
itk::simple::BSplineTransform Class Reference

A deformable transform over a bounded spatial domain using a BSpline representation for a 2D or 3D coordinate space. More...

#include <sitkBSplineTransform.h>

+ Inheritance diagram for itk::simple::BSplineTransform:
+ Collaboration diagram for itk::simple::BSplineTransform:

Classes

struct  MyVisitor
 

Public Types

typedef BSplineTransform Self
 
typedef Transform Superclass
 
- Public Types inherited from itk::simple::Transform
typedef Transform Self
 

Public Member Functions

 BSplineTransform (unsigned int dimensions, unsigned int order=3)
 
 BSplineTransform (const BSplineTransform &)
 
 BSplineTransform (const Transform &)
 
std::vector< ImageGetCoefficientImages () const
 Get a vector of the coefficient images representing the BSpline. More...
 
std::string GetName () const
 
unsigned int GetOrder () const
 
std::vector< double > GetTransformDomainDirection () const
 
std::vector< unsigned int > GetTransformDomainMeshSize () const
 
std::vector< double > GetTransformDomainOrigin () const
 
std::vector< double > GetTransformDomainPhysicalDimensions () const
 
BSplineTransformoperator= (const BSplineTransform &)
 
SelfSetTransformDomainDirection (const std::vector< double > &)
 
SelfSetTransformDomainMeshSize (const std::vector< unsigned int > &)
 
SelfSetTransformDomainOrigin (const std::vector< double > &)
 
SelfSetTransformDomainPhysicalDimensions (const std::vector< double > &)
 
- Public Member Functions inherited from itk::simple::Transform
SelfAddTransform (Transform t)
 
unsigned int GetDimension (void) const
 
Transform GetInverse () const
 Return a new inverse transform of the same type as this. More...
 
virtual bool IsLinear () const
 
void MakeUnique (void)
 Performs actually coping if needed to make object unique. More...
 
virtual void SetIdentity ()
 
virtual bool SetInverse ()
 Try to change the current transform to it's inverse. More...
 
std::string ToString (void) const
 
 Transform (void)
 By default a 3-d identity transform is constructed. More...
 
template<unsigned int NDimension>
 Transform (itk::CompositeTransform< double, NDimension > *compositeTransform)
 Construct a SimpleITK Transform from a pointer to an ITK composite transform. More...
 
 Transform (itk::TransformBase *transform)
 
 Transform (unsigned int dimensions, TransformEnum type)
 Construct a specific transformation. More...
 
 Transform (Image &displacement, TransformEnum type=sitkDisplacementField)
 Use an image to construct a transform. More...
 
std::vector< double > TransformPoint (const std::vector< double > &point) const
 
void WriteTransform (const std::string &filename) const
 
virtual ~Transform (void)
 
Transformoperator= (const Transform &)
 Copy constructor and assignment operator. More...
 
 Transform (const Transform &)
 Copy constructor and assignment operator. More...
 
itk::TransformBaseGetITKBase (void)
 
const itk::TransformBaseGetITKBase (void) const
 
void SetParameters (const std::vector< double > &parameters)
 
std::vector< double > GetParameters (void) const
 
void SetFixedParameters (const std::vector< double > &parameters)
 
std::vector< double > GetFixedParameters (void) const
 

Protected Member Functions

virtual void SetPimpleTransform (PimpleTransformBase *pimpleTransform)
 
- Protected Member Functions inherited from itk::simple::Transform
 Transform (PimpleTransformBase *pimpleTransform)
 

Private Member Functions

void InternalInitialization (itk::TransformBase *transform)
 
template<typename TransformType >
void InternalInitialization (TransformType *transform)
 

Static Private Member Functions

static PimpleTransformBase * CreateBSplinePimpleTransform (unsigned int dimension, unsigned int order)
 
template<unsigned int ND>
static PimpleTransformBase * CreateBSplinePimpleTransform (unsigned int order)
 

Private Attributes

nsstd::function< std::vector< Image >)> m_pfGetCoefficientImages
 
nsstd::function< unsigned int()> m_pfGetOrder
 
nsstd::function< std::vector< double >)> m_pfGetTransformDomainDirection
 
nsstd::function< std::vector< unsigned int >)> m_pfGetTransformDomainMeshSize
 
nsstd::function< std::vector< double >)> m_pfGetTransformDomainOrigin
 
nsstd::function< std::vector< double >)> m_pfGetTransformDomainPhysicalDimensions
 
nsstd::function< void(const std::vector< double > &)> m_pfSetTransformDomainDirection
 
nsstd::function< void(const std::vector< unsigned int > &)> m_pfSetTransformDomainMeshSize
 
nsstd::function< void(const std::vector< double > &)> m_pfSetTransformDomainOrigin
 
nsstd::function< void(const std::vector< double > &)> m_pfSetTransformDomainPhysicalDimensions
 

Detailed Description

A deformable transform over a bounded spatial domain using a BSpline representation for a 2D or 3D coordinate space.

See also
itk::BSplineTransform
Examples:
ImageRegistrationMethodBSpline1/ImageRegistrationMethodBSpline1.cxx.

Definition at line 34 of file sitkBSplineTransform.h.

Member Typedef Documentation

Definition at line 38 of file sitkBSplineTransform.h.

Definition at line 39 of file sitkBSplineTransform.h.

Constructor & Destructor Documentation

itk::simple::BSplineTransform::BSplineTransform ( unsigned int  dimensions,
unsigned int  order = 3 
)
explicit
itk::simple::BSplineTransform::BSplineTransform ( const BSplineTransform )
itk::simple::BSplineTransform::BSplineTransform ( const Transform )
explicit

Member Function Documentation

static PimpleTransformBase* itk::simple::BSplineTransform::CreateBSplinePimpleTransform ( unsigned int  dimension,
unsigned int  order 
)
staticprivate
template<unsigned int ND>
static PimpleTransformBase* itk::simple::BSplineTransform::CreateBSplinePimpleTransform ( unsigned int  order)
staticprivate
std::vector<Image> itk::simple::BSplineTransform::GetCoefficientImages ( ) const

Get a vector of the coefficient images representing the BSpline.

A lazy shallow copy of the images from ITK are performed. If they are modified in SimpleITK a deep copy will occur. However, if the coefficients are modified in ITK, then no copy will occur and the images help by SimpleITK may change.

std::string itk::simple::BSplineTransform::GetName ( ) const
inlinevirtual

Name of this class

Reimplemented from itk::simple::Transform.

Definition at line 50 of file sitkBSplineTransform.h.

unsigned int itk::simple::BSplineTransform::GetOrder ( ) const
std::vector<double> itk::simple::BSplineTransform::GetTransformDomainDirection ( ) const
std::vector<unsigned int> itk::simple::BSplineTransform::GetTransformDomainMeshSize ( ) const
std::vector<double> itk::simple::BSplineTransform::GetTransformDomainOrigin ( ) const
std::vector<double> itk::simple::BSplineTransform::GetTransformDomainPhysicalDimensions ( ) const
void itk::simple::BSplineTransform::InternalInitialization ( itk::TransformBase transform)
private
template<typename TransformType >
void itk::simple::BSplineTransform::InternalInitialization ( TransformType *  transform)
private
BSplineTransform& itk::simple::BSplineTransform::operator= ( const BSplineTransform )
virtual void itk::simple::BSplineTransform::SetPimpleTransform ( PimpleTransformBase *  pimpleTransform)
protectedvirtual

Reimplemented from itk::simple::Transform.

Self& itk::simple::BSplineTransform::SetTransformDomainDirection ( const std::vector< double > &  )

parameters fixed parameter

Self& itk::simple::BSplineTransform::SetTransformDomainMeshSize ( const std::vector< unsigned int > &  )
Self& itk::simple::BSplineTransform::SetTransformDomainOrigin ( const std::vector< double > &  )
Self& itk::simple::BSplineTransform::SetTransformDomainPhysicalDimensions ( const std::vector< double > &  )

Member Data Documentation

nsstd::function<std::vector<Image>)> itk::simple::BSplineTransform::m_pfGetCoefficientImages
private

Definition at line 119 of file sitkBSplineTransform.h.

nsstd::function< unsigned int()> itk::simple::BSplineTransform::m_pfGetOrder
private

Definition at line 120 of file sitkBSplineTransform.h.

nsstd::function<std::vector<double>)> itk::simple::BSplineTransform::m_pfGetTransformDomainDirection
private

Definition at line 110 of file sitkBSplineTransform.h.

nsstd::function<std::vector<unsigned int>)> itk::simple::BSplineTransform::m_pfGetTransformDomainMeshSize
private

Definition at line 112 of file sitkBSplineTransform.h.

nsstd::function<std::vector<double>)> itk::simple::BSplineTransform::m_pfGetTransformDomainOrigin
private

Definition at line 114 of file sitkBSplineTransform.h.

nsstd::function<std::vector<double>)> itk::simple::BSplineTransform::m_pfGetTransformDomainPhysicalDimensions
private

Definition at line 116 of file sitkBSplineTransform.h.

nsstd::function<void (const std::vector<double> &)> itk::simple::BSplineTransform::m_pfSetTransformDomainDirection
private

Definition at line 111 of file sitkBSplineTransform.h.

nsstd::function<void (const std::vector<unsigned int>&)> itk::simple::BSplineTransform::m_pfSetTransformDomainMeshSize
private

Definition at line 113 of file sitkBSplineTransform.h.

nsstd::function<void (const std::vector<double>&)> itk::simple::BSplineTransform::m_pfSetTransformDomainOrigin
private

Definition at line 115 of file sitkBSplineTransform.h.

nsstd::function<void (const std::vector<double> &)> itk::simple::BSplineTransform::m_pfSetTransformDomainPhysicalDimensions
private

Definition at line 117 of file sitkBSplineTransform.h.


The documentation for this class was generated from the following file: