VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vtkHomogeneousTransform Class Reference

superclass for homogeneous transformations More...

#include <vtkHomogeneousTransform.h>

Inheritance diagram for vtkHomogeneousTransform:
[legend]
Collaboration diagram for vtkHomogeneousTransform:
[legend]

Public Types

typedef vtkAbstractTransform Superclass
 
- Public Types inherited from vtkAbstractTransform
typedef vtkObject Superclass
 
- Public Types inherited from vtkObject
typedef vtkObjectBase Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
void PrintSelf (ostream &os, vtkIndent indent)
 
void TransformPoints (vtkPoints *inPts, vtkPoints *outPts)
 
void GetMatrix (vtkMatrix4x4 *m)
 
vtkMatrix4x4GetMatrix ()
 
virtual void TransformPointsNormalsVectors (vtkPoints *inPts, vtkPoints *outPts, vtkDataArray *inNms, vtkDataArray *outNms, vtkDataArray *inVrs, vtkDataArray *outVrs)
 
vtkHomogeneousTransformGetHomogeneousInverse ()
 
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])
 
- Public Member Functions inherited from vtkAbstractTransform
double * TransformNormalAtPoint (const double point[3], const double normal[3])
 
double * TransformVectorAtPoint (const double point[3], const double vector[3])
 
vtkAbstractTransformGetInverse ()
 
void SetInverse (vtkAbstractTransform *transform)
 
virtual void Inverse ()=0
 
void DeepCopy (vtkAbstractTransform *)
 
void Update ()
 
virtual vtkAbstractTransformMakeTransform ()=0
 
virtual int CircuitCheck (vtkAbstractTransform *transform)
 
unsigned long GetMTime ()
 
virtual void UnRegister (vtkObjectBase *O)
 
void Identity ()
 
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])
 
- Public Member Functions inherited from vtkObject
virtual void DebugOn ()
 
virtual void DebugOff ()
 
unsigned char GetDebug ()
 
void SetDebug (unsigned char debugFlag)
 
virtual void Modified ()
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 
vtkCommandGetCommand (unsigned long tag)
 
void RemoveObserver (vtkCommand *)
 
void RemoveObservers (unsigned long event, vtkCommand *)
 
void RemoveObservers (const char *event, vtkCommand *)
 
int HasObserver (unsigned long event, vtkCommand *)
 
int HasObserver (const char *event, vtkCommand *)
 
void RemoveObserver (unsigned long tag)
 
void RemoveObservers (unsigned long event)
 
void RemoveObservers (const char *event)
 
void RemoveAllObservers ()
 
int HasObserver (unsigned long event)
 
int HasObserver (const char *event)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
int InvokeEvent (unsigned long event, void *callData)
 
int InvokeEvent (const char *event, void *callData)
 
int InvokeEvent (unsigned long event)
 
int InvokeEvent (const char *event)
 
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 
virtual void Delete ()
 
virtual void FastDelete ()
 
void Print (ostream &os)
 
virtual void Register (vtkObjectBase *o)
 
void SetReferenceCount (int)
 
void PrintRevisions (ostream &os)
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 
int GetReferenceCount ()
 

Static Public Member Functions

static int IsTypeOf (const char *type)
 
static vtkHomogeneousTransformSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from vtkAbstractTransform
static int IsTypeOf (const char *type)
 
static vtkAbstractTransformSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from vtkObject
static int IsTypeOf (const char *type)
 
static vtkObjectSafeDownCast (vtkObject *o)
 
static vtkObjectNew ()
 
static void BreakOnError ()
 
static void SetGlobalWarningDisplay (int val)
 
static void GlobalWarningDisplayOn ()
 
static void GlobalWarningDisplayOff ()
 
static int GetGlobalWarningDisplay ()
 
- Static Public Member Functions inherited from vtkObjectBase
static int IsTypeOf (const char *name)
 
static vtkObjectBaseNew ()
 

Protected Member Functions

 vtkHomogeneousTransform ()
 
 ~vtkHomogeneousTransform ()
 
void InternalDeepCopy (vtkAbstractTransform *transform)
 
- Protected Member Functions inherited from vtkAbstractTransform
 vtkAbstractTransform ()
 
 ~vtkAbstractTransform ()
 
virtual void InternalUpdate ()
 
- Protected Member Functions inherited from vtkObject
 vtkObject ()
 
virtual ~vtkObject ()
 
virtual void RegisterInternal (vtkObjectBase *, int check)
 
virtual void UnRegisterInternal (vtkObjectBase *, int check)
 
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL)
 
void InternalReleaseFocus ()
 
- Protected Member Functions inherited from vtkObjectBase
 vtkObjectBase ()
 
virtual ~vtkObjectBase ()
 
virtual void CollectRevisions (ostream &os)
 
virtual void ReportReferences (vtkGarbageCollector *)
 
 vtkObjectBase (const vtkObjectBase &)
 
void operator= (const vtkObjectBase &)
 

Protected Attributes

vtkMatrix4x4Matrix
 
- Protected Attributes inherited from vtkAbstractTransform
float InternalFloatPoint [3]
 
double InternalDoublePoint [3]
 
- Protected Attributes inherited from vtkObject
unsigned char Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
int ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

Detailed Description

superclass for homogeneous transformations

vtkHomogeneousTransform provides a generic interface for homogeneous transformations, i.e. transformations which can be represented by multiplying a 4x4 matrix with a homogeneous coordinate.

See Also
vtkPerspectiveTransform vtkLinearTransform vtkIdentityTransform

Definition at line 32 of file vtkHomogeneousTransform.h.

Member Typedef Documentation

Definition at line 36 of file vtkHomogeneousTransform.h.

Constructor & Destructor Documentation

vtkHomogeneousTransform::vtkHomogeneousTransform ( )
protected
vtkHomogeneousTransform::~vtkHomogeneousTransform ( )
protected

Member Function Documentation

virtual const char* vtkHomogeneousTransform::GetClassName ( )
virtual
static int vtkHomogeneousTransform::IsTypeOf ( const char *  type)
static
virtual int vtkHomogeneousTransform::IsA ( const char *  name)
virtual

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkAbstractTransform.

Reimplemented in vtkTransform, vtkPerspectiveTransform, vtkMatrixToHomogeneousTransform, vtkMatrixToLinearTransform, vtkIdentityTransform, and vtkLinearTransform.

static vtkHomogeneousTransform* vtkHomogeneousTransform::SafeDownCast ( vtkObject o)
static
void vtkHomogeneousTransform::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
virtual

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkAbstractTransform.

Reimplemented in vtkTransform, vtkPerspectiveTransform, vtkMatrixToHomogeneousTransform, vtkMatrixToLinearTransform, vtkIdentityTransform, and vtkLinearTransform.

void vtkHomogeneousTransform::TransformPoints ( vtkPoints inPts,
vtkPoints outPts 
)
virtual

Apply the transformation to a series of points, and append the results to outPts.

Reimplemented from vtkAbstractTransform.

Reimplemented in vtkLinearTransform, and vtkIdentityTransform.

virtual void vtkHomogeneousTransform::TransformPointsNormalsVectors ( vtkPoints inPts,
vtkPoints outPts,
vtkDataArray inNms,
vtkDataArray outNms,
vtkDataArray inVrs,
vtkDataArray outVrs 
)
virtual

Apply the transformation to a combination of points, normals and vectors.

Reimplemented from vtkAbstractTransform.

Reimplemented in vtkLinearTransform, and vtkIdentityTransform.

void vtkHomogeneousTransform::GetMatrix ( vtkMatrix4x4 m)

Get a copy of the internal transformation matrix. The transform is Updated first, to guarantee that the matrix is valid.

vtkMatrix4x4* vtkHomogeneousTransform::GetMatrix ( )
inline

Get a pointer to an internal vtkMatrix4x4 that represents the transformation. An Update() is called on the transform to ensure that the matrix is up-to-date when you get it. You should not store the matrix pointer anywhere because it might become stale.

Definition at line 62 of file vtkHomogeneousTransform.h.

vtkHomogeneousTransform* vtkHomogeneousTransform::GetHomogeneousInverse ( )
inline

Just like GetInverse(), but includes typecast to vtkHomogeneousTransform.

Definition at line 67 of file vtkHomogeneousTransform.h.

void vtkHomogeneousTransform::InternalTransformPoint ( const float  in[3],
float  out[3] 
)
virtual

This will calculate the transformation without calling Update. Meant for use only within other VTK classes.

Implements vtkAbstractTransform.

Reimplemented in vtkLinearTransform, and vtkIdentityTransform.

void vtkHomogeneousTransform::InternalTransformPoint ( const double  in[3],
double  out[3] 
)
virtual

This will calculate the transformation without calling Update. Meant for use only within other VTK classes.

Implements vtkAbstractTransform.

Reimplemented in vtkLinearTransform, and vtkIdentityTransform.

void vtkHomogeneousTransform::InternalTransformDerivative ( const float  in[3],
float  out[3],
float  derivative[3][3] 
)
virtual

This will calculate the transformation as well as its derivative without calling Update. Meant for use only within other VTK classes.

Implements vtkAbstractTransform.

Reimplemented in vtkLinearTransform, and vtkIdentityTransform.

void vtkHomogeneousTransform::InternalTransformDerivative ( const double  in[3],
double  out[3],
double  derivative[3][3] 
)
virtual

This will calculate the transformation as well as its derivative without calling Update. Meant for use only within other VTK classes.

Implements vtkAbstractTransform.

Reimplemented in vtkLinearTransform, and vtkIdentityTransform.

void vtkHomogeneousTransform::InternalDeepCopy ( vtkAbstractTransform )
protectedvirtual

Perform any subclass-specific DeepCopy.

Reimplemented from vtkAbstractTransform.

Reimplemented in vtkTransform, vtkPerspectiveTransform, vtkIdentityTransform, vtkMatrixToLinearTransform, and vtkMatrixToHomogeneousTransform.

Member Data Documentation

vtkMatrix4x4* vtkHomogeneousTransform::Matrix
protected

Definition at line 95 of file vtkHomogeneousTransform.h.


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