VTK
|
represent and manipulate 3x3 transformation matrices More...
#include <vtkMatrix3x3.h>
Public Types | |
typedef vtkObject | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkMatrix3x3 * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
void | SetElement (int i, int j, double value) |
double * | operator[] (const unsigned int i) |
const double * | operator[] (unsigned int i) const |
bool | operator== (const vtkMatrix3x3 &) |
bool | operator!= (const vtkMatrix3x3 &) |
void | Adjoint (vtkMatrix3x3 &in, vtkMatrix3x3 &out) |
double | Determinant (vtkMatrix3x3 &in) |
double | Determinant (vtkMatrix3x3 *in) |
void | Invert (vtkMatrix3x3 &in, vtkMatrix3x3 &out) |
void | Transpose (vtkMatrix3x3 &in, vtkMatrix3x3 &out) |
bool | IsIdentity () |
double * | GetData () |
void | DeepCopy (const double Elements[9]) |
void | MultiplyPoint (const float in[3], float out[3]) |
void | MultiplyPoint (const double in[3], double out[3]) |
double | GetElement (int i, int j) const |
Static Public Member Functions | |
static vtkMatrix3x3 * | New () |
static int | IsTypeOf (const char *type) |
static vtkMatrix3x3 * | SafeDownCast (vtkObjectBase *o) |
static void | MultiplyPoint (const double Elements[9], const float in[3], float out[3]) |
static void | MultiplyPoint (const double Elements[9], const double in[3], double out[3]) |
static void | PointMultiply (const double Elements[9], const float in[3], float out[3]) |
static void | PointMultiply (const double Elements[9], const double in[3], double out[3]) |
static void | Multiply3x3 (vtkMatrix3x3 *a, vtkMatrix3x3 *b, vtkMatrix3x3 *c) |
static void | Multiply3x3 (const double a[9], const double b[9], double c[9]) |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkMatrix3x3 () | |
~vtkMatrix3x3 () | |
Protected Attributes | |
double | Element [3][3] |
static void | DeepCopy (double Elements[9], vtkMatrix3x3 *source) |
static void | DeepCopy (double Elements[9], const double newElements[9]) |
void | DeepCopy (vtkMatrix3x3 *source) |
static void | Zero (double Elements[9]) |
void | Zero () |
static void | Identity (double Elements[9]) |
void | Identity () |
static void | Invert (vtkMatrix3x3 *in, vtkMatrix3x3 *out) |
static void | Invert (const double inElements[9], double outElements[9]) |
void | Invert () |
static void | Transpose (vtkMatrix3x3 *in, vtkMatrix3x3 *out) |
static void | Transpose (const double inElements[9], double outElements[9]) |
void | Transpose () |
static void | Adjoint (const double inElements[9], double outElements[9]) |
void | Adjoint (vtkMatrix3x3 *in, vtkMatrix3x3 *out) |
static double | Determinant (const double Elements[9]) |
double | Determinant () |
represent and manipulate 3x3 transformation matrices
vtkMatrix3x3 is a class to represent and manipulate 3x3 matrices. Specifically, it is designed to work on 3x3 transformation matrices found in 2D rendering using homogeneous coordinates [x y w].
Definition at line 35 of file vtkMatrix3x3.h.
typedef vtkObject vtkMatrix3x3::Superclass |
Reimplemented from vtkObject.
Definition at line 50 of file vtkMatrix3x3.h.
vtkMatrix3x3::vtkMatrix3x3 | ( | ) | [protected] |
vtkMatrix3x3::~vtkMatrix3x3 | ( | ) | [protected] |
static vtkMatrix3x3* vtkMatrix3x3::New | ( | ) | [static] |
Construct a 3x3 identity matrix.
Reimplemented from vtkObject.
static int vtkMatrix3x3::IsTypeOf | ( | const char * | name | ) | [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 vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
virtual int vtkMatrix3x3::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 vtkObject.
static vtkMatrix3x3* vtkMatrix3x3::SafeDownCast | ( | vtkObjectBase * | o | ) | [static] |
Reimplemented from vtkObject.
virtual vtkObjectBase* vtkMatrix3x3::NewInstanceInternal | ( | ) | const [protected, virtual] |
Reimplemented from vtkObject.
vtkMatrix3x3* vtkMatrix3x3::NewInstance | ( | ) | const |
Reimplemented from vtkObject.
void vtkMatrix3x3::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) | [virtual] |
void vtkMatrix3x3::DeepCopy | ( | vtkMatrix3x3 * | source | ) | [inline] |
Set the elements of the matrix to the same values as the elements of the source Matrix.
Definition at line 56 of file vtkMatrix3x3.h.
static void vtkMatrix3x3::DeepCopy | ( | double | Elements[9], |
vtkMatrix3x3 * | source | ||
) | [inline, static] |
Set the elements of the matrix to the same values as the elements of the source Matrix.
Definition at line 59 of file vtkMatrix3x3.h.
static void vtkMatrix3x3::DeepCopy | ( | double | Elements[9], |
const double | newElements[9] | ||
) | [static] |
Set the elements of the matrix to the same values as the elements of the source Matrix.
void vtkMatrix3x3::DeepCopy | ( | const double | Elements[9] | ) | [inline] |
Non-static member function. Assigns from elements array
Definition at line 67 of file vtkMatrix3x3.h.
void vtkMatrix3x3::Zero | ( | ) | [inline] |
Set all of the elements to zero.
Definition at line 73 of file vtkMatrix3x3.h.
static void vtkMatrix3x3::Zero | ( | double | Elements[9] | ) | [static] |
Set all of the elements to zero.
void vtkMatrix3x3::Identity | ( | ) | [inline] |
Set equal to Identity matrix
Definition at line 82 of file vtkMatrix3x3.h.
static void vtkMatrix3x3::Identity | ( | double | Elements[9] | ) | [static] |
Set equal to Identity matrix
static void vtkMatrix3x3::Invert | ( | vtkMatrix3x3 * | in, |
vtkMatrix3x3 * | out | ||
) | [inline, static] |
Matrix Inversion (adapted from Richard Carling in "Graphics Gems," Academic Press, 1990).
Definition at line 92 of file vtkMatrix3x3.h.
void vtkMatrix3x3::Invert | ( | ) | [inline] |
Matrix Inversion (adapted from Richard Carling in "Graphics Gems," Academic Press, 1990).
Definition at line 94 of file vtkMatrix3x3.h.
static void vtkMatrix3x3::Invert | ( | const double | inElements[9], |
double | outElements[9] | ||
) | [static] |
Matrix Inversion (adapted from Richard Carling in "Graphics Gems," Academic Press, 1990).
static void vtkMatrix3x3::Transpose | ( | vtkMatrix3x3 * | in, |
vtkMatrix3x3 * | out | ||
) | [inline, static] |
Transpose the matrix and put it into out.
Definition at line 104 of file vtkMatrix3x3.h.
void vtkMatrix3x3::Transpose | ( | ) | [inline] |
Transpose the matrix and put it into out.
Definition at line 106 of file vtkMatrix3x3.h.
static void vtkMatrix3x3::Transpose | ( | const double | inElements[9], |
double | outElements[9] | ||
) | [static] |
Transpose the matrix and put it into out.
void vtkMatrix3x3::MultiplyPoint | ( | const float | in[3], |
float | out[3] | ||
) | [inline] |
Multiply a homogeneous coordinate by this matrix, i.e. out = A*in. The in[3] and out[3] can be the same array.
Definition at line 116 of file vtkMatrix3x3.h.
void vtkMatrix3x3::MultiplyPoint | ( | const double | in[3], |
double | out[3] | ||
) | [inline] |
Multiply a homogeneous coordinate by this matrix, i.e. out = A*in. The in[3] and out[3] can be the same array.
Definition at line 118 of file vtkMatrix3x3.h.
static void vtkMatrix3x3::MultiplyPoint | ( | const double | Elements[9], |
const float | in[3], | ||
float | out[3] | ||
) | [static] |
static void vtkMatrix3x3::MultiplyPoint | ( | const double | Elements[9], |
const double | in[3], | ||
double | out[3] | ||
) | [static] |
static void vtkMatrix3x3::Multiply3x3 | ( | vtkMatrix3x3 * | a, |
vtkMatrix3x3 * | b, | ||
vtkMatrix3x3 * | c | ||
) | [inline, static] |
Multiplies matrices a and b and stores the result in c (c=a*b).
Definition at line 131 of file vtkMatrix3x3.h.
static void vtkMatrix3x3::Multiply3x3 | ( | const double | a[9], |
const double | b[9], | ||
double | c[9] | ||
) | [static] |
Multiplies matrices a and b and stores the result in c (c=a*b).
void vtkMatrix3x3::Adjoint | ( | vtkMatrix3x3 * | in, |
vtkMatrix3x3 * | out | ||
) | [inline] |
Compute adjoint of the matrix and put it into out.
Definition at line 141 of file vtkMatrix3x3.h.
static void vtkMatrix3x3::Adjoint | ( | const double | inElements[9], |
double | outElements[9] | ||
) | [static] |
Compute adjoint of the matrix and put it into out.
double vtkMatrix3x3::Determinant | ( | ) | [inline] |
Compute the determinant of the matrix and return it.
Definition at line 150 of file vtkMatrix3x3.h.
static double vtkMatrix3x3::Determinant | ( | const double | Elements[9] | ) | [static] |
Compute the determinant of the matrix and return it.
void vtkMatrix3x3::SetElement | ( | int | i, |
int | j, | ||
double | value | ||
) | [inline] |
Sets the element i,j in the matrix.
Definition at line 208 of file vtkMatrix3x3.h.
double vtkMatrix3x3::GetElement | ( | int | i, |
int | j | ||
) | const [inline] |
Returns the element i,j from the matrix.
Definition at line 161 of file vtkMatrix3x3.h.
Definition at line 166 of file vtkMatrix3x3.h.
Definition at line 168 of file vtkMatrix3x3.h.
bool vtkMatrix3x3::operator== | ( | const vtkMatrix3x3 & | other | ) | [inline] |
Definition at line 232 of file vtkMatrix3x3.h.
bool vtkMatrix3x3::operator!= | ( | const vtkMatrix3x3 & | other | ) | [inline] |
Definition at line 247 of file vtkMatrix3x3.h.
void vtkMatrix3x3::Adjoint | ( | vtkMatrix3x3 & | in, |
vtkMatrix3x3 & | out | ||
) | [inline] |
Definition at line 172 of file vtkMatrix3x3.h.
double vtkMatrix3x3::Determinant | ( | vtkMatrix3x3 & | in | ) | [inline] |
Definition at line 174 of file vtkMatrix3x3.h.
double vtkMatrix3x3::Determinant | ( | vtkMatrix3x3 * | in | ) | [inline] |
Definition at line 176 of file vtkMatrix3x3.h.
void vtkMatrix3x3::Invert | ( | vtkMatrix3x3 & | in, |
vtkMatrix3x3 & | out | ||
) | [inline] |
Definition at line 178 of file vtkMatrix3x3.h.
void vtkMatrix3x3::Transpose | ( | vtkMatrix3x3 & | in, |
vtkMatrix3x3 & | out | ||
) | [inline] |
Definition at line 180 of file vtkMatrix3x3.h.
static void vtkMatrix3x3::PointMultiply | ( | const double | Elements[9], |
const float | in[3], | ||
float | out[3] | ||
) | [static] |
static void vtkMatrix3x3::PointMultiply | ( | const double | Elements[9], |
const double | in[3], | ||
double | out[3] | ||
) | [static] |
bool vtkMatrix3x3::IsIdentity | ( | ) | [inline] |
Definition at line 217 of file vtkMatrix3x3.h.
double* vtkMatrix3x3::GetData | ( | ) | [inline] |
Return a pointer to the first element of the matrix (double[9]).
Definition at line 193 of file vtkMatrix3x3.h.
double vtkMatrix3x3::Element[3][3] [protected] |
Definition at line 200 of file vtkMatrix3x3.h.