Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages

# vtkLinearTransform Class Reference

`#include <vtkLinearTransform.h>`

Inheritance diagram for vtkLinearTransform:

[legend]
Collaboration diagram for vtkLinearTransform:

[legend]
List of all members.

## Detailed Description

abstract superclass for linear transformations

Date:
  2002/01/22 15:25:34

Revision:
  1.33

vtkLinearTransform provides a generic interface for linear (affine or 12 degree-of-freedom) geometric transformations.

See also:
  vtkTransform vtkIdentityTransform

Created by:
  - Gobbi, David

CVS contributions (if > 5%):
  - Gobbi, David (84%)
  - Geveci, Berk (7%)

CVS logs (CVSweb):
  - .`cxx` (`/Common/vtkLinearTransform.cxx)`
  - .`h` (`/Common/vtkLinearTransform.h)`

Definition at line 44 of file vtkLinearTransform.h.

## Public Types

typedef vtkHomogeneousTransform | Superclass

## Public Methods

virtual const char * | GetClassName ()
virtual int | IsA (const char *type)
void | PrintSelf (ostream &os, vtkIndent indent)
void | TransformPoints (vtkPoints *inPts, vtkPoints *outPts)
virtual void | TransformNormals (vtkDataArray *inNms, vtkDataArray *outNms)
virtual void | TransformVectors (vtkDataArray *inVrs, vtkDataArray *outVrs)
void | TransformNormal (const float in[3], float out[3])
void | TransformNormal (const double in[3], double out[3])
double * | TransformNormal (double x, double y, double z)
double * | TransformNormal (const double normal[3])
float * | TransformFloatNormal (float x, float y, float z)
float * | TransformFloatNormal (const float normal[3])
double * | TransformDoubleNormal (double x, double y, double z)
double * | TransformDoubleNormal (const double normal[3])
double * | TransformVector (double x, double y, double z)
double * | TransformVector (const double normal[3])
void | TransformVector (const float in[3], float out[3])
void | TransformVector (const double in[3], double out[3])
float * | TransformFloatVector (float x, float y, float z)
float * | TransformFloatVector (const float vec[3])
double * | TransformDoubleVector (double x, double y, double z)
double * | TransformDoubleVector (const double vec[3])
void | TransformPointsNormalsVectors (vtkPoints *inPts, vtkPoints *outPts, vtkDataArray *inNms, vtkDataArray *outNms, vtkDataArray *inVrs, vtkDataArray *outVrs)
vtkLinearTransform * | GetLinearInverse ()
void | InternalTransformPoint (const float in[3], float out[3])
void | InternalTransformPoint (const double in[3], double out[3])
virtual void | InternalTransformNormal (const float in[3], float out[3])
virtual void | InternalTransformNormal (const double in[3], double out[3])
virtual void | InternalTransformVector (const float in[3], float out[3])
virtual void | InternalTransformVector (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])

## Static Public Methods

int | IsTypeOf (const char *type)
vtkLinearTransform * | SafeDownCast (vtkObject *o)

## Protected Methods

| vtkLinearTransform ()
| ~vtkLinearTransform ()

## Member Typedef Documentation

typedef vtkHomogeneousTransform vtkLinearTransform::Superclass

| Reimplemented from vtkHomogeneousTransform. Reimplemented in vtkIdentityTransform, vtkMatrixToLinearTransform, vtkTransform, vtkIterativeClosestPointTransform, and vtkLandmarkTransform. Definition at line 48 of file vtkLinearTransform.h.

## Constructor & Destructor Documentation

vtkLinearTransform::vtkLinearTransform | ( |  | ) | `[inline, protected]`

| Definition at line 210 of file vtkLinearTransform.h.

vtkLinearTransform::~vtkLinearTransform | ( |  | ) | `[inline, protected]`

| Definition at line 211 of file vtkLinearTransform.h.

## Member Function Documentation

virtual const char* vtkLinearTransform::GetClassName | ( |  | ) | `[virtual]`

| Reimplemented from vtkHomogeneousTransform. Reimplemented in vtkIdentityTransform, vtkMatrixToLinearTransform, vtkTransform, vtkIterativeClosestPointTransform, and vtkLandmarkTransform.

int vtkLinearTransform::IsTypeOf | ( | const char * | type | ) | `[static]`

| Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h. Reimplemented from vtkHomogeneousTransform. Reimplemented in vtkIdentityTransform, vtkMatrixToLinearTransform, vtkTransform, vtkIterativeClosestPointTransform, and vtkLandmarkTransform.

virtual int vtkLinearTransform::IsA | ( | const char * | type | ) | `[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 vtkTypeRevisionMacro found in vtkSetGet.h. Reimplemented from vtkHomogeneousTransform. Reimplemented in vtkIdentityTransform, vtkMatrixToLinearTransform, vtkTransform, vtkIterativeClosestPointTransform, and vtkLandmarkTransform.

vtkLinearTransform* vtkLinearTransform::SafeDownCast | ( | vtkObject * | o | ) | `[static]`

| Reimplemented from vtkHomogeneousTransform. Reimplemented in vtkIdentityTransform, vtkMatrixToLinearTransform, vtkTransform, vtkIterativeClosestPointTransform, and vtkLandmarkTransform.

void vtkLinearTransform::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 vtkHomogeneousTransform.

Reimplemented in vtkIdentityTransform, vtkMatrixToLinearTransform, vtkTransform, vtkIterativeClosestPointTransform, and vtkLandmarkTransform.

void vtkLinearTransform::TransformNormal | ( | const float | in[3],
|  | float | out[3]
| ) | `[inline]`

| Apply the transformation to a normal. You can use the same array to store both the input and output. Definition at line 54 of file vtkLinearTransform.h. References vtkAbstractTransform::Update().

void vtkLinearTransform::TransformNormal | ( | const double | in[3],
|  | double | out[3]
| ) | `[inline]`

| Apply the transformation to a double-precision normal. You can use the same array to store both the input and output. Definition at line 61 of file vtkLinearTransform.h. References vtkAbstractTransform::Update().

double* vtkLinearTransform::TransformNormal | ( | double | x,
|  | double | y,
|  | double | z
| ) | `[inline]`

| Synonymous with TransformDoubleNormal(x,y,z). Use this if you are programming in python, tcl or Java. Definition at line 68 of file vtkLinearTransform.h.

double* vtkLinearTransform::TransformNormal | ( | const double | normal[3] | ) | `[inline]`

| Synonymous with TransformDoubleNormal(x,y,z). Use this if you are programming in python, tcl or Java. Definition at line 70 of file vtkLinearTransform.h.

float* vtkLinearTransform::TransformFloatNormal | ( | float | x,
|  | float | y,
|  | float | z
| ) | `[inline]`

| Apply the transformation to an (x,y,z) normal. Use this if you are programming in python, tcl or Java. Definition at line 77 of file vtkLinearTransform.h.

float* vtkLinearTransform::TransformFloatNormal | ( | const float | normal[3] | ) | `[inline]`

| Apply the transformation to an (x,y,z) normal. Use this if you are programming in python, tcl or Java. Definition at line 83 of file vtkLinearTransform.h.

double* vtkLinearTransform::TransformDoubleNormal | ( | double | x,
|  | double | y,
|  | double | z
| ) | `[inline]`

| Apply the transformation to a double-precision (x,y,z) normal. Use this if you are programming in python, tcl or Java. Definition at line 90 of file vtkLinearTransform.h.

double* vtkLinearTransform::TransformDoubleNormal | ( | const double | normal[3] | ) | `[inline]`

| Apply the transformation to a double-precision (x,y,z) normal. Use this if you are programming in python, tcl or Java. Definition at line 96 of file vtkLinearTransform.h.

double* vtkLinearTransform::TransformVector | ( | double | x,
|  | double | y,
|  | double | z
| ) | `[inline]`

| Synonymous with TransformDoubleVector(x,y,z). Use this if you are programming in python, tcl or Java. Definition at line 103 of file vtkLinearTransform.h.

double* vtkLinearTransform::TransformVector | ( | const double | normal[3] | ) | `[inline]`

| Synonymous with TransformDoubleVector(x,y,z). Use this if you are programming in python, tcl or Java. Definition at line 105 of file vtkLinearTransform.h.

void vtkLinearTransform::TransformVector | ( | const float | in[3],
|  | float | out[3]
| ) | `[inline]`

| Apply the transformation to a vector. You can use the same array to store both the input and output. Definition at line 112 of file vtkLinearTransform.h. References vtkAbstractTransform::Update().

void vtkLinearTransform::TransformVector | ( | const double | in[3],
|  | double | out[3]
| ) | `[inline]`

| Apply the transformation to a double-precision vector. You can use the same array to store both the input and output. Definition at line 119 of file vtkLinearTransform.h. References vtkAbstractTransform::Update().

float* vtkLinearTransform::TransformFloatVector | ( | float | x,
|  | float | y,
|  | float | z
| ) | `[inline]`

| Apply the transformation to an (x,y,z) vector. Use this if you are programming in python, tcl or Java. Definition at line 126 of file vtkLinearTransform.h.

float* vtkLinearTransform::TransformFloatVector | ( | const float | vec[3] | ) | `[inline]`

| Apply the transformation to an (x,y,z) vector. Use this if you are programming in python, tcl or Java. Definition at line 132 of file vtkLinearTransform.h.

double* vtkLinearTransform::TransformDoubleVector | ( | double | x,
|  | double | y,
|  | double | z
| ) | `[inline]`

| Apply the transformation to a double-precision (x,y,z) vector. Use this if you are programming in python, tcl or Java. Definition at line 139 of file vtkLinearTransform.h.

double* vtkLinearTransform::TransformDoubleVector | ( | const double | vec[3] | ) | `[inline]`

| Apply the transformation to a double-precision (x,y,z) vector. Use this if you are programming in python, tcl or Java. Definition at line 145 of file vtkLinearTransform.h.

void vtkLinearTransform::TransformPoints | ( | vtkPoints * | inPts,
|  | vtkPoints * | outPts
| ) | `[virtual]`

| Apply the transformation to a series of points, and append the results to outPts. Reimplemented from vtkHomogeneousTransform. Reimplemented in vtkIdentityTransform.

virtual void vtkLinearTransform::TransformNormals | ( | vtkDataArray * | inNms,
|  | vtkDataArray * | outNms
| ) | `[virtual]`

| Apply the transformation to a series of normals, and append the results to outNms. Reimplemented in vtkIdentityTransform.

virtual void vtkLinearTransform::TransformVectors | ( | vtkDataArray * | inVrs,
|  | vtkDataArray * | outVrs
| ) | `[virtual]`

| Apply the transformation to a series of vectors, and append the results to outVrs. Reimplemented in vtkIdentityTransform.

void vtkLinearTransform::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 vtkHomogeneousTransform. Reimplemented in vtkIdentityTransform.

vtkLinearTransform* vtkLinearTransform::GetLinearInverse | ( |  | ) | `[inline]`

| Just like GetInverse, but it includes a typecast to vtkLinearTransform. Definition at line 175 of file vtkLinearTransform.h. References vtkAbstractTransform::GetInverse().

void vtkLinearTransform::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. Reimplemented from vtkHomogeneousTransform. Reimplemented in vtkIdentityTransform.

void vtkLinearTransform::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. Reimplemented from vtkHomogeneousTransform. Reimplemented in vtkIdentityTransform.

virtual void vtkLinearTransform::InternalTransformNormal | ( | const float | in[3],
|  | float | out[3]
| ) | `[virtual]`

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

virtual void vtkLinearTransform::InternalTransformNormal | ( | const double | in[3],
|  | double | out[3]
| ) | `[virtual]`

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

virtual void vtkLinearTransform::InternalTransformVector | ( | const float | in[3],
|  | float | out[3]
| ) | `[virtual]`

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

virtual void vtkLinearTransform::InternalTransformVector | ( | const double | in[3],
|  | double | out[3]
| ) | `[virtual]`

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

void vtkLinearTransform::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. Reimplemented from vtkHomogeneousTransform. Reimplemented in vtkIdentityTransform.

void vtkLinearTransform::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. Reimplemented from vtkHomogeneousTransform. Reimplemented in vtkIdentityTransform.

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

- Common/vtkLinearTransform.h