45 FXMat3f(FXfloat a00,FXfloat a01,FXfloat a02,
46 FXfloat a10,FXfloat a11,FXfloat a12,
47 FXfloat a20,FXfloat a21,FXfloat a22);
65 FXMat3f(FXfloat a,FXfloat b,FXfloat c);
71 explicit FXMat3f(
const FXfloat s[]);
85 FXMat3f& operator=(
const FXfloat s[]);
91 FXMat3f&
set(FXfloat a00,FXfloat a01,FXfloat a02,
92 FXfloat a10,FXfloat a11,FXfloat a12,
93 FXfloat a20,FXfloat a21,FXfloat a22);
111 FXMat3f&
set(FXfloat a,FXfloat b,FXfloat c);
117 FXMat3f&
set(
const FXfloat s[]);
123 FXMat3f& operator*=(FXfloat w);
124 FXMat3f& operator/=(FXfloat w);
128 const FXVec3f& operator[](FXint i)
const {
return m[i];}
131 operator FXfloat*(){
return m[0];}
132 operator const FXfloat*()
const {
return m[0];}
135 FXMat3f operator-()
const;
141 FXbool isIdentity()
const;
144 FXMat3f& rot(
const FXQuatf& q);
147 FXMat3f& rot(
const FXVec3f& v,FXfloat c,FXfloat s);
150 FXMat3f& rot(
const FXVec3f& v,FXfloat phi);
153 FXMat3f& xrot(FXfloat c,FXfloat s);
154 FXMat3f& xrot(FXfloat phi);
157 FXMat3f& yrot(FXfloat c,FXfloat s);
158 FXMat3f& yrot(FXfloat phi);
161 FXMat3f& zrot(FXfloat c,FXfloat s);
162 FXMat3f& zrot(FXfloat phi);
165 FXMat3f& scale(FXfloat sx,FXfloat sy,FXfloat sz);
166 FXMat3f& scale(
const FXVec3f& v);
167 FXMat3f& scale(FXfloat s);
170 FXMat3f& mirror(
const FXVec3f& n);
176 FXMat3f transpose()
const;
179 FXMat3f invert()
const;
187 extern FXAPI FXVec2f operator*(
const FXMat3f& m,
const FXVec2f& v);
188 extern FXAPI FXVec3f operator*(
const FXMat3f& m,
const FXVec3f& v);
191 extern FXAPI FXVec2f operator*(
const FXVec2f& v,
const FXMat3f& m);
192 extern FXAPI FXVec3f operator*(
const FXVec3f& v,
const FXMat3f& m);
195 extern FXAPI FXMat3f operator+(
const FXMat3f& a,
const FXMat3f& b);
196 extern FXAPI FXMat3f operator-(
const FXMat3f& a,
const FXMat3f& b);
199 extern FXAPI FXMat3f operator*(
const FXMat3f& a,
const FXMat3f& b);
202 extern FXAPI FXMat3f operator*(FXfloat x,
const FXMat3f& a);
203 extern FXAPI FXMat3f operator*(
const FXMat3f& a,FXfloat x);
204 extern FXAPI FXMat3f operator/(
const FXMat3f& a,FXfloat x);
205 extern FXAPI FXMat3f operator/(FXfloat x,
const FXMat3f& a);
208 extern FXAPI FXbool operator==(
const FXMat3f& a,
const FXMat3f& b);
209 extern FXAPI FXbool operator!=(
const FXMat3f& a,
const FXMat3f& b);
210 extern FXAPI FXbool operator==(
const FXMat3f& a,FXfloat n);
211 extern FXAPI FXbool operator!=(
const FXMat3f& a,FXfloat n);
212 extern FXAPI FXbool operator==(FXfloat n,
const FXMat3f& a);
213 extern FXAPI FXbool operator!=(FXfloat n,
const FXMat3f& a);
216 extern FXAPI FXMat3f orthogonalize(
const FXMat3f& m);
219 extern FXAPI FXStream& operator<<(FXStream& store,
const FXMat3f& m);
222 extern FXAPI FXStream& operator>>(FXStream& store,FXMat3f& m);
~FXMat3f()
Destructor.
Definition: FXMat3f.h:182
Single-precision 3x3 matrix.
Definition: FXMat3f.h:33
FXVec3f & operator[](FXint i)
Indexing.
Definition: FXMat3f.h:127
Definition: FX4Splitter.h:28
Single-precision quaternion.
Definition: FXQuatf.h:32
Single-precision 3-element vector.
Definition: FXVec3f.h:28
Single-precision 4x4 matrix.
Definition: FXMat4f.h:32
Single-precision 2x2 matrix.
Definition: FXMat2f.h:31
FXMat3f()
Default constructor; value is not initialized.
Definition: FXMat3f.h:39