SimpleITK
|
This transform applies a versor rotation and translation & scale/skew to the space. More...
#include <sitkComposeScaleSkewVersor3DTransform.h>
This transform applies a versor rotation and translation & scale/skew to the space.
The transform can be described as: \( (\textbf{R}_v * \textbf{S} * \textbf{K})\textbf{x} \) where \(\textbf{R}_v\) is the rotation matrix given the versor, where \(\textbf{S}\) is the diagonal scale matrix. where \(\textbf{K}\) is the upper triangle skew (shear) matrix.
Definition at line 39 of file sitkComposeScaleSkewVersor3DTransform.h.
Public Types | |
using | Self = ComposeScaleSkewVersor3DTransform |
using | Superclass = Transform |
Public Types inherited from itk::simple::Transform | |
using | Self = Transform |
Public Member Functions | |
ComposeScaleSkewVersor3DTransform () | |
ComposeScaleSkewVersor3DTransform (const ComposeScaleSkewVersor3DTransform &) | |
ComposeScaleSkewVersor3DTransform (const std::vector< double > &scale, const std::vector< double > &skew, const std::vector< double > &axis, double angle, const std::vector< double > &translation=std::vector< double >(3, 0.0), const std::vector< double > &fixedCenter=std::vector< double >(3, 0.0)) | |
ComposeScaleSkewVersor3DTransform (const std::vector< double > &scale, const std::vector< double > &skew, const std::vector< double > &versor, const std::vector< double > &translation=std::vector< double >(3, 0.0), const std::vector< double > &fixedCenter=std::vector< double >(3, 0.0)) | |
ComposeScaleSkewVersor3DTransform (const Transform &) | |
std::vector< double > | GetCenter () const |
std::vector< double > | GetMatrix () const |
std::string | GetName () const override |
std::vector< double > | GetScale () const |
std::vector< double > | GetSkew () const |
std::vector< double > | GetTranslation () const |
std::vector< double > | GetVersor () const |
ComposeScaleSkewVersor3DTransform & | operator= (const ComposeScaleSkewVersor3DTransform &) |
Self & | SetCenter (const std::vector< double > ¶ms) |
Self & | SetRotation (const std::vector< double > &axis, double angle) |
Self & | SetRotation (const std::vector< double > &versor) |
Self & | SetScale (const std::vector< double > &scale) |
Self & | SetSkew (const std::vector< double > &skew) |
Self & | SetTranslation (const std::vector< double > &translation) |
Self & | Translate (const std::vector< double > &offset) |
~ComposeScaleSkewVersor3DTransform () override | |
Public Member Functions inherited from itk::simple::Transform | |
unsigned int | GetDimension () const |
Transform | GetInverse () const |
Return a new inverse transform of the same type as this. More... | |
unsigned int | GetNumberOfFixedParameters () const |
unsigned int | GetNumberOfParameters () const |
TransformEnum | GetTransformEnum () const |
Get the TransformEnum of the underlying Transform. More... | |
virtual bool | IsLinear () const |
void | MakeUnique () |
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 () const |
Transform () | |
By default a 3-d identity transform is constructed. More... | |
Transform (Image &displacement, TransformEnum type=sitkDisplacementField) | |
Use an image to construct a transform. 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... | |
std::vector< double > | TransformPoint (const std::vector< double > &point) const |
std::vector< double > | TransformVector (const std::vector< double > &vector, const std::vector< double > &point) const |
void | WriteTransform (const std::string &filename) const |
virtual | ~Transform () |
Transform & | operator= (const Transform &) |
Copy constructor and assignment operator. More... | |
Transform (const Transform &) | |
Copy constructor and assignment operator. More... | |
itk::TransformBase * | GetITKBase () |
const itk::TransformBase * | GetITKBase () const |
void | SetParameters (const std::vector< double > ¶meters) |
std::vector< double > | GetParameters () const |
void | SetFixedParameters (const std::vector< double > ¶meters) |
std::vector< double > | GetFixedParameters () const |
Protected Member Functions | |
void | SetPimpleTransform (std::unique_ptr< PimpleTransformBase > &&pimpleTransform) override |
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) |
Private Attributes | |
std::function< std::vector< double >)> | m_pfGetCenter |
std::function< std::vector< double >)> | m_pfGetMatrix |
std::function< std::vector< double >)> | m_pfGetScale |
std::function< std::vector< double >)> | m_pfGetSkew |
std::function< std::vector< double >)> | m_pfGetTranslation |
std::function< std::vector< double >)> | m_pfGetVersor |
std::function< void(const std::vector< double > &)> | m_pfSetCenter |
std::function< void(const std::vector< double > &)> | m_pfSetRotation1 |
std::function< void(const std::vector< double > &, double)> | m_pfSetRotation2 |
std::function< void(const std::vector< double > &)> | m_pfSetScale |
std::function< void(const std::vector< double > &)> | m_pfSetSkew |
std::function< void(const std::vector< double > &)> | m_pfSetTranslation |
std::function< void(const std::vector< double > &)> | m_pfTranslate |
Definition at line 42 of file sitkComposeScaleSkewVersor3DTransform.h.
Definition at line 43 of file sitkComposeScaleSkewVersor3DTransform.h.
|
override |
itk::simple::ComposeScaleSkewVersor3DTransform::ComposeScaleSkewVersor3DTransform | ( | ) |
itk::simple::ComposeScaleSkewVersor3DTransform::ComposeScaleSkewVersor3DTransform | ( | const ComposeScaleSkewVersor3DTransform & | ) |
|
explicit |
itk::simple::ComposeScaleSkewVersor3DTransform::ComposeScaleSkewVersor3DTransform | ( | const std::vector< double > & | scale, |
const std::vector< double > & | skew, | ||
const std::vector< double > & | versor, | ||
const std::vector< double > & | translation = std::vector< double >(3, 0.0) , |
||
const std::vector< double > & | fixedCenter = std::vector< double >(3, 0.0) |
||
) |
itk::simple::ComposeScaleSkewVersor3DTransform::ComposeScaleSkewVersor3DTransform | ( | const std::vector< double > & | scale, |
const std::vector< double > & | skew, | ||
const std::vector< double > & | axis, | ||
double | angle, | ||
const std::vector< double > & | translation = std::vector< double >(3, 0.0) , |
||
const std::vector< double > & | fixedCenter = std::vector< double >(3, 0.0) |
||
) |
std::vector<double> itk::simple::ComposeScaleSkewVersor3DTransform::GetCenter | ( | ) | const |
std::vector<double> itk::simple::ComposeScaleSkewVersor3DTransform::GetMatrix | ( | ) | const |
|
inlineoverridevirtual |
Name of this class
Reimplemented from itk::simple::Transform.
Definition at line 72 of file sitkComposeScaleSkewVersor3DTransform.h.
std::vector<double> itk::simple::ComposeScaleSkewVersor3DTransform::GetScale | ( | ) | const |
std::vector<double> itk::simple::ComposeScaleSkewVersor3DTransform::GetSkew | ( | ) | const |
std::vector<double> itk::simple::ComposeScaleSkewVersor3DTransform::GetTranslation | ( | ) | const |
std::vector<double> itk::simple::ComposeScaleSkewVersor3DTransform::GetVersor | ( | ) | const |
|
private |
|
private |
ComposeScaleSkewVersor3DTransform& itk::simple::ComposeScaleSkewVersor3DTransform::operator= | ( | const ComposeScaleSkewVersor3DTransform & | ) |
Self& itk::simple::ComposeScaleSkewVersor3DTransform::SetCenter | ( | const std::vector< double > & | params | ) |
fixed parameter
|
overrideprotectedvirtual |
Reimplemented from itk::simple::Transform.
Self& itk::simple::ComposeScaleSkewVersor3DTransform::SetRotation | ( | const std::vector< double > & | axis, |
double | angle | ||
) |
Self& itk::simple::ComposeScaleSkewVersor3DTransform::SetRotation | ( | const std::vector< double > & | versor | ) |
parameter
Self& itk::simple::ComposeScaleSkewVersor3DTransform::SetScale | ( | const std::vector< double > & | scale | ) |
Self& itk::simple::ComposeScaleSkewVersor3DTransform::SetSkew | ( | const std::vector< double > & | skew | ) |
Self& itk::simple::ComposeScaleSkewVersor3DTransform::SetTranslation | ( | const std::vector< double > & | translation | ) |
Self& itk::simple::ComposeScaleSkewVersor3DTransform::Translate | ( | const std::vector< double > & | offset | ) |
additional methods
|
private |
Definition at line 127 of file sitkComposeScaleSkewVersor3DTransform.h.
|
private |
Definition at line 138 of file sitkComposeScaleSkewVersor3DTransform.h.
|
private |
Definition at line 134 of file sitkComposeScaleSkewVersor3DTransform.h.
|
private |
Definition at line 136 of file sitkComposeScaleSkewVersor3DTransform.h.
|
private |
Definition at line 132 of file sitkComposeScaleSkewVersor3DTransform.h.
|
private |
Definition at line 130 of file sitkComposeScaleSkewVersor3DTransform.h.
|
private |
Definition at line 126 of file sitkComposeScaleSkewVersor3DTransform.h.
|
private |
Definition at line 128 of file sitkComposeScaleSkewVersor3DTransform.h.
|
private |
Definition at line 129 of file sitkComposeScaleSkewVersor3DTransform.h.
|
private |
Definition at line 133 of file sitkComposeScaleSkewVersor3DTransform.h.
|
private |
Definition at line 135 of file sitkComposeScaleSkewVersor3DTransform.h.
|
private |
Definition at line 131 of file sitkComposeScaleSkewVersor3DTransform.h.
|
private |
Definition at line 137 of file sitkComposeScaleSkewVersor3DTransform.h.