26 #include "tnt/tnt_array2d.h" 86 void Solve(
const double x[],
const double y[],
87 const double xp[],
const double yp[],
int n);
92 void Scale(
double scaleFactor);
void Scale(double scaleFactor)
Apply a scale to the current affine transform.
void Translate(double tx, double ty)
Apply a translation to the current affine transform.
double p_y
y value of the (x,y) coordinate
Affine()
Constructs an Affine transform.
void checkDims(const AMatrix &am) const
Checks affine matrix to ensure it is a 3x3 standard form transform.
double p_yp
y' value of the (x',y') coordinate
AMatrix invert(const AMatrix &a) const
Compute the inverse of a matrix.
double yp() const
Returns the computed y'.
double p_x
x value of the (x,y) coordinate
void Rotate(double rot)
Apply a translation to the current affine transform.
double xp() const
Returns the computed x'.
void Identity()
Set the forward and inverse affine transform to the identity.
double y() const
Returns the computed y.
TNT::Array2D< double > AMatrix
Affine Matrix.
double p_xp
x' value of the (x',y') coordinate
void Compute(double x, double y)
Compute (xp,yp) given (x,y).
std::vector< double > Coefficients(int var)
Return the affine coeffients for the entered variable (1 or 2).
AMatrix p_matrix
Affine forward matrix.
AMatrix p_invmat
Affine inverse matrix.
AMatrix Forward() const
Returns the forward Affine matrix.
AMatrix Inverse() const
Returns the inverse Affine matrix.
static AMatrix getIdentity()
Return an Affine identity matrix.
Namespace for ISIS/Bullet specific routines.
std::vector< double > InverseCoefficients(int var)
Return the inverse affine coeffients for the entered variable (1 or 2).
void Solve(const double x[], const double y[], const double xp[], const double yp[], int n)
Given a set of coordinate pairs (n >= 3), compute the affine transform that best fits the points...
double x() const
Returns the computed x.
void ComputeInverse(double xp, double yp)
Compute (x,y) given (xp,yp).
~Affine()
Destroys the Affine object.