iPlug2 - C++ Audio Plug-in Framework
Public Member Functions | Public Attributes | List of all members
IMatrix Struct Reference

Used to store transformation matrices. More...

#include <IGraphicsStructs.h>

Public Member Functions

 IMatrix (double xx, double yx, double xy, double yy, double tx, double ty)
 Create an IMatrix, specifying the values. More...
 
 IMatrix ()
 Create an identity matrix.
 
IMatrixTranslate (float x, float y)
 Set the matrix for a translation transform. More...
 
IMatrixScale (float x, float y)
 Set the matrix for a scale transform. More...
 
IMatrixRotate (float a)
 Set the matrix for a rotation transform. More...
 
IMatrixSkew (float xa, float ya)
 Set the matrix for a skew transform. More...
 
void TransformPoint (double &x, double &y, double x0, double y0) const
 Transforms the point x, y. More...
 
void TransformPoint (double &x, double &y) const
 Transforms the point x, y with the matrix. More...
 
IMatrixTransform (const IRECT &before, const IRECT &after)
 
IMatrixTransform (const IMatrix &m)
 Transform this matrix with another. More...
 
IMatrixInvert ()
 Changes the matrix to be the inverse of its original value. More...
 

Public Attributes

double mXX
 
double mYX
 
double mXY
 
double mYY
 
double mTX
 
double mTY
 

Detailed Description

Used to store transformation matrices.

Definition at line 1996 of file IGraphicsStructs.h.

Constructor & Destructor Documentation

IMatrix::IMatrix ( double  xx,
double  yx,
double  xy,
double  yy,
double  tx,
double  ty 
)
inline

Create an IMatrix, specifying the values.

Parameters
xxxx component of the affine transformation
yxyx component of the affine transformation
xyxy component of the affine transformation
yyyy component of the affine transformation
txX translation component of the affine transformation
tyY translation component of the affine transformation

Definition at line 2005 of file IGraphicsStructs.h.

Member Function Documentation

IMatrix& IMatrix::Invert ( )
inline

Changes the matrix to be the inverse of its original value.

Returns
IMatrix& The changed matrix

Definition at line 2104 of file IGraphicsStructs.h.

Referenced by IGraphicsCanvas::PathFill().

IMatrix& IMatrix::Rotate ( float  a)
inline

Set the matrix for a rotation transform.

Parameters
aThe angle of rotation in degrees
Returns
IMatrix& The matrix

Definition at line 2034 of file IGraphicsStructs.h.

Referenced by IGraphics::CalculateTextRotation().

IMatrix& IMatrix::Scale ( float  x,
float  y 
)
inline

Set the matrix for a scale transform.

Parameters
xThe scale for x
yThe scale for y
Returns
IMatrix& The matrix

Definition at line 2026 of file IGraphicsStructs.h.

Referenced by IGraphicsCanvas::DoDrawText().

IMatrix& IMatrix::Skew ( float  xa,
float  ya 
)
inline

Set the matrix for a skew transform.

Parameters
xaThe angle to skew x coordinates in degrees
yaThe angle to skew y coordinates in degrees
Returns
IMatrix& The matrix

Definition at line 2047 of file IGraphicsStructs.h.

IMatrix& IMatrix::Transform ( const IRECT before,
const IRECT after 
)
inline
Todo:
Parameters
before

Definition at line 2075 of file IGraphicsStructs.h.

References IRECT::H(), IRECT::L, IRECT::T, and IRECT::W().

Referenced by IGraphicsCanvas::DoDrawText().

IMatrix& IMatrix::Transform ( const IMatrix m)
inline

Transform this matrix with another.

Parameters
mThe matrix with which to transform this one
Returns
IMatrix& The result of the transform

Definition at line 2088 of file IGraphicsStructs.h.

void IMatrix::TransformPoint ( double &  x,
double &  y,
double  x0,
double  y0 
) const
inline

Transforms the point x, y.

Todo:
Parameters
xThe x coordinate to transform
yThe y coordinate to transform
x0

Definition at line 2057 of file IGraphicsStructs.h.

Referenced by IGraphics::CalculateTextRotation(), and IGraphicsCanvas::PathFill().

void IMatrix::TransformPoint ( double &  x,
double &  y 
) const
inline

Transforms the point x, y with the matrix.

Parameters
xThe x coordinate to transform
yThe y coordinate to transform

Definition at line 2066 of file IGraphicsStructs.h.

IMatrix& IMatrix::Translate ( float  x,
float  y 
)
inline

Set the matrix for a translation transform.

Parameters
xThe translation for x values
yThe translation for y values
Returns
IMatrix& The matrix

Definition at line 2017 of file IGraphicsStructs.h.

Referenced by IGraphicsCanvas::DoDrawText().


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