VTK
|
superclass for nonlinear geometric transformations More...
#include <vtkWarpTransform.h>
Public Types | |
typedef vtkAbstractTransform | Superclass |
![]() | |
typedef vtkObject | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkWarpTransform * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
void | Inverse () |
virtual int | GetInverseFlag () |
virtual void | SetInverseTolerance (double) |
virtual double | GetInverseTolerance () |
virtual void | SetInverseIterations (int) |
virtual int | GetInverseIterations () |
void | InternalTransformPoint (const float in[3], float out[3]) |
void | InternalTransformPoint (const double in[3], double out[3]) |
void | InternalTransformDerivative (const float in[3], float out[3], float derivative[3][3]) |
void | InternalTransformDerivative (const double in[3], double out[3], double derivative[3][3]) |
void | TemplateTransformPoint (const float in[3], float out[3]) |
void | TemplateTransformPoint (const double in[3], double out[3]) |
void | TemplateTransformPoint (const float in[3], float out[3], float derivative[3][3]) |
void | TemplateTransformPoint (const double in[3], double out[3], double derivative[3][3]) |
void | TemplateTransformInverse (const float in[3], float out[3]) |
void | TemplateTransformInverse (const double in[3], double out[3]) |
void | TemplateTransformInverse (const float in[3], float out[3], float derivative[3][3]) |
void | TemplateTransformInverse (const double in[3], double out[3], double derivative[3][3]) |
![]() | |
vtkAbstractTransform * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
double * | TransformNormalAtPoint (const double point[3], const double normal[3]) |
double * | TransformVectorAtPoint (const double point[3], const double vector[3]) |
virtual void | TransformPoints (vtkPoints *inPts, vtkPoints *outPts) |
vtkAbstractTransform * | GetInverse () |
void | SetInverse (vtkAbstractTransform *transform) |
void | DeepCopy (vtkAbstractTransform *) |
void | Update () |
virtual vtkAbstractTransform * | MakeTransform ()=0 |
virtual int | CircuitCheck (vtkAbstractTransform *transform) |
unsigned long | GetMTime () |
virtual void | UnRegister (vtkObjectBase *O) |
void | TransformPoint (const float in[3], float out[3]) |
void | TransformPoint (const double in[3], double out[3]) |
double * | TransformPoint (double x, double y, double z) |
double * | TransformPoint (const double point[3]) |
float * | TransformFloatPoint (float x, float y, float z) |
float * | TransformFloatPoint (const float point[3]) |
double * | TransformDoublePoint (double x, double y, double z) |
double * | TransformDoublePoint (const double point[3]) |
void | TransformNormalAtPoint (const float point[3], const float in[3], float out[3]) |
void | TransformNormalAtPoint (const double point[3], const double in[3], double out[3]) |
double * | TransformDoubleNormalAtPoint (const double point[3], const double normal[3]) |
float * | TransformFloatNormalAtPoint (const float point[3], const float normal[3]) |
void | TransformVectorAtPoint (const float point[3], const float in[3], float out[3]) |
void | TransformVectorAtPoint (const double point[3], const double in[3], double out[3]) |
double * | TransformDoubleVectorAtPoint (const double point[3], const double vector[3]) |
float * | TransformFloatVectorAtPoint (const float point[3], const float vector[3]) |
virtual void | TransformPointsNormalsVectors (vtkPoints *inPts, vtkPoints *outPts, vtkDataArray *inNms, vtkDataArray *outNms, vtkDataArray *inVrs, vtkDataArray *outVrs) |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkWarpTransform * | SafeDownCast (vtkObjectBase *o) |
![]() | |
static int | IsTypeOf (const char *type) |
static vtkAbstractTransform * | SafeDownCast (vtkObjectBase *o) |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkWarpTransform () | |
~vtkWarpTransform () | |
virtual void | ForwardTransformPoint (const float in[3], float out[3])=0 |
virtual void | ForwardTransformPoint (const double in[3], double out[3])=0 |
virtual void | ForwardTransformDerivative (const float in[3], float out[3], float derivative[3][3])=0 |
virtual void | ForwardTransformDerivative (const double in[3], double out[3], double derivative[3][3])=0 |
virtual void | InverseTransformPoint (const float in[3], float out[3]) |
virtual void | InverseTransformPoint (const double in[3], double out[3]) |
virtual void | InverseTransformDerivative (const float in[3], float out[3], float derivative[3][3]) |
virtual void | InverseTransformDerivative (const double in[3], double out[3], double derivative[3][3]) |
![]() | |
vtkAbstractTransform () | |
~vtkAbstractTransform () | |
virtual void | InternalUpdate () |
virtual void | InternalDeepCopy (vtkAbstractTransform *) |
Protected Attributes | |
int | InverseFlag |
int | InverseIterations |
double | InverseTolerance |
![]() | |
float | InternalFloatPoint [3] |
double | InternalDoublePoint [3] |
superclass for nonlinear geometric transformations
vtkWarpTransform provides a generic interface for nonlinear warp transformations.
Definition at line 30 of file vtkWarpTransform.h.
Definition at line 34 of file vtkWarpTransform.h.
|
protected |
|
protected |
|
static |
|
virtual |
Reimplemented from vtkAbstractTransform.
Reimplemented in vtkBSplineTransform, vtkThinPlateSplineTransform, vtkGridTransform, vtkSphericalTransform, and vtkCylindricalTransform.
|
static |
|
protectedvirtual |
Reimplemented from vtkAbstractTransform.
Reimplemented in vtkBSplineTransform, vtkThinPlateSplineTransform, vtkGridTransform, vtkSphericalTransform, and vtkCylindricalTransform.
vtkWarpTransform* vtkWarpTransform::NewInstance | ( | ) | const |
void vtkWarpTransform::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) |
|
virtual |
Invert the transformation. Warp transformations are usually inverted using an iterative technique such as Newton's method. The inverse transform is usually around five or six times as computationally expensive as the forward transform.
Implements vtkAbstractTransform.
|
virtual |
Get the inverse flag of the transformation. This flag is set to zero when the transformation is first created, and is flipped each time Inverse() is called.
|
virtual |
Set the tolerance for inverse transformation. The default is 0.001.
|
virtual |
Set the tolerance for inverse transformation. The default is 0.001.
|
virtual |
Set the maximum number of iterations for the inverse transformation. The default is 500, but usually only 2 to 5 iterations are used. The inversion method is fairly robust, and it should converge for nearly all smooth transformations that do not fold back on themselves.
|
virtual |
Set the maximum number of iterations for the inverse transformation. The default is 500, but usually only 2 to 5 iterations are used. The inversion method is fairly robust, and it should converge for nearly all smooth transformations that do not fold back on themselves.
|
virtual |
This will calculate the transformation without calling Update. Meant for use only within other VTK classes.
Implements vtkAbstractTransform.
|
virtual |
This will calculate the transformation without calling Update. Meant for use only within other VTK classes.
Implements vtkAbstractTransform.
|
virtual |
This will calculate the transformation, as well as its derivative without calling Update. Meant for use only within other VTK classes.
Implements vtkAbstractTransform.
|
virtual |
This will calculate the transformation, as well as its derivative without calling Update. Meant for use only within other VTK classes.
Implements vtkAbstractTransform.
|
inline |
Do not use these methods. They exists only as a work-around for internal templated functions (I really didn't want to make the Forward/Inverse methods public, is there a decent work around for this sort of thing?)
Definition at line 86 of file vtkWarpTransform.h.
|
inline |
Do not use these methods. They exists only as a work-around for internal templated functions (I really didn't want to make the Forward/Inverse methods public, is there a decent work around for this sort of thing?)
Definition at line 88 of file vtkWarpTransform.h.
|
inline |
Do not use these methods. They exists only as a work-around for internal templated functions (I really didn't want to make the Forward/Inverse methods public, is there a decent work around for this sort of thing?)
Definition at line 90 of file vtkWarpTransform.h.
|
inline |
Do not use these methods. They exists only as a work-around for internal templated functions (I really didn't want to make the Forward/Inverse methods public, is there a decent work around for this sort of thing?)
Definition at line 93 of file vtkWarpTransform.h.
|
inline |
Do not use these methods. They exists only as a work-around for internal templated functions (I really didn't want to make the Forward/Inverse methods public, is there a decent work around for this sort of thing?)
Definition at line 96 of file vtkWarpTransform.h.
|
inline |
Do not use these methods. They exists only as a work-around for internal templated functions (I really didn't want to make the Forward/Inverse methods public, is there a decent work around for this sort of thing?)
Definition at line 98 of file vtkWarpTransform.h.
|
inline |
Do not use these methods. They exists only as a work-around for internal templated functions (I really didn't want to make the Forward/Inverse methods public, is there a decent work around for this sort of thing?)
Definition at line 100 of file vtkWarpTransform.h.
|
inline |
Do not use these methods. They exists only as a work-around for internal templated functions (I really didn't want to make the Forward/Inverse methods public, is there a decent work around for this sort of thing?)
Definition at line 103 of file vtkWarpTransform.h.
|
protectedpure virtual |
If the InverseFlag is set to 0, then a call to InternalTransformPoint results in a call to ForwardTransformPoint.
Implemented in vtkThinPlateSplineTransform, vtkBSplineTransform, vtkGridTransform, vtkSphericalTransform, and vtkCylindricalTransform.
|
protectedpure virtual |
If the InverseFlag is set to 0, then a call to InternalTransformPoint results in a call to ForwardTransformPoint.
Implemented in vtkThinPlateSplineTransform, vtkBSplineTransform, vtkGridTransform, vtkSphericalTransform, and vtkCylindricalTransform.
|
protectedpure virtual |
Calculate the forward transform as well as the derivative.
Implemented in vtkThinPlateSplineTransform, vtkBSplineTransform, vtkGridTransform, vtkSphericalTransform, and vtkCylindricalTransform.
|
protectedpure virtual |
Calculate the forward transform as well as the derivative.
Implemented in vtkThinPlateSplineTransform, vtkBSplineTransform, vtkGridTransform, vtkSphericalTransform, and vtkCylindricalTransform.
|
protectedvirtual |
If the InverseFlag is set to 1, then a call to InternalTransformPoint results in a call to InverseTransformPoint. The inverse transformation is calculated from using Newton's method.
Reimplemented in vtkBSplineTransform, vtkGridTransform, vtkSphericalTransform, and vtkCylindricalTransform.
|
protectedvirtual |
If the InverseFlag is set to 1, then a call to InternalTransformPoint results in a call to InverseTransformPoint. The inverse transformation is calculated from using Newton's method.
Reimplemented in vtkBSplineTransform, vtkGridTransform, vtkSphericalTransform, and vtkCylindricalTransform.
|
protectedvirtual |
Calculate the inverse transform as well as the derivative of the forward transform (that's correct: the derivative of the forward transform, not of the inverse transform)
Reimplemented in vtkBSplineTransform, vtkGridTransform, vtkSphericalTransform, and vtkCylindricalTransform.
|
protectedvirtual |
Calculate the inverse transform as well as the derivative of the forward transform (that's correct: the derivative of the forward transform, not of the inverse transform)
Reimplemented in vtkBSplineTransform, vtkGridTransform, vtkSphericalTransform, and vtkCylindricalTransform.
|
protected |
Definition at line 145 of file vtkWarpTransform.h.
|
protected |
Definition at line 146 of file vtkWarpTransform.h.
|
protected |
Definition at line 147 of file vtkWarpTransform.h.