65 matrix(
double m11,
double m12,
double m13,
double m14,
double m21,
double m22,
double m23,
double m24,
double m31,
double m32,
double m33,
double m34,
double m41,
double m42,
double m43,
double m44);
72 void set(
double m11,
double m12,
double m13,
double m14,
double m21,
double m22,
double m23,
double m24,
double m31,
double m32,
double m33,
double m34,
double m41,
double m42,
double m43,
double m44);
102 void invert(
bool *invertible = 0);
119 void translate(
double x,
double y,
double z);
124 void scale(
const vector &);
129 void scale(
double x,
double y,
double z);
134 void scale(
double factor);
144 void rotate(
double angle,
double x,
double y,
double z = 0.0f);
146 matrix inverted(
bool *invertible = 0)
const;
147 matrix transposed()
const;
149 matrix translated(
double x,
double y,
double z)
const;
151 matrix scaled(
double x,
double y,
double z)
const;
152 matrix scaled(
double factor)
const;
154 matrix rotated(
double angle,
double x,
double y,
double z)
const;
161 double at(
int row,
int column)
const;
164 const double & operator()(
int row,
int column)
const;
165 double & operator()(
int row,
int column);
170 matrix& operator *=(
double);
171 bool operator ==(
const matrix &)
const;
172 bool operator !=(
const matrix &)
const;
183 const double *data()
const;
211 std::ostream & operator<<(std::ostream &,
const rt::matrix & m);
212 std::ostream & operator<<(std::ostream &,
const rt::vector & v);
void transpose()
Transpose the matrix.
Definition: matrix.cpp:204
Definition: matrix.hpp:39
void rotate(double angle, const vector &)
Rotate the matrix.
Definition: matrix.cpp:290
Format
Matrix format enum.
Definition: matrix.hpp:38
matrix()
Construct a Identity matrix.
Definition: matrix.cpp:12
void invert(bool *invertible=0)
Invert the matrix.
Definition: matrix.cpp:136
double determinant() const
Compute matrix determinant.
Definition: matrix.cpp:132
void translate(const vector &)
Translate the matrix.
Definition: matrix.cpp:215
3D vector
Definition: vector.hpp:28
void setToIdentity()
set matrix to identity.
Definition: matrix.cpp:90
bool isIdentity() const
Definition: matrix.cpp:96
void optimize()
Optimize the matrix.
Definition: matrix.cpp:58
4x4 matrix
Definition: matrix.hpp:33
Definition: matrix.hpp:40
color operator*(double f, const color &c)
Same as color::operator*(double).