43 FXMat2d(FXdouble a00,FXdouble a01,
44 FXdouble a10,FXdouble a11);
62 explicit FXMat2d(
const FXdouble s[]);
72 FXMat2d& operator=(
const FXdouble s[]);
78 FXMat2d&
set(FXdouble a00,FXdouble a01,
79 FXdouble a10,FXdouble a11);
91 FXMat2d&
set(FXdouble a,FXdouble b);
97 FXMat2d&
set(
const FXdouble s[]);
103 FXMat2d& operator*=(FXdouble s);
104 FXMat2d& operator/=(FXdouble s);
108 const FXVec2d& operator[](FXint i)
const {
return m[i];}
111 operator FXdouble*(){
return m[0];}
112 operator const FXdouble*()
const {
return m[0];}
115 FXMat2d operator-()
const;
121 FXbool isIdentity()
const;
124 FXMat2d& rot(FXdouble c,FXdouble s);
125 FXMat2d& rot(FXdouble phi);
128 FXMat2d& scale(FXdouble sx,FXdouble sy);
129 FXMat2d& scale(FXdouble s);
132 FXdouble det()
const;
135 FXMat2d transpose()
const;
138 FXMat2d invert()
const;
146 extern FXAPI FXVec2d operator*(
const FXMat2d& m,
const FXVec2d& v);
149 extern FXAPI FXVec2d operator*(
const FXVec2d& v,
const FXMat2d& m);
152 extern FXAPI FXMat2d operator+(
const FXMat2d& a,
const FXMat2d& b);
153 extern FXAPI FXMat2d operator-(
const FXMat2d& a,
const FXMat2d& b);
156 extern FXAPI FXMat2d operator*(
const FXMat2d& a,
const FXMat2d& b);
159 extern FXAPI FXMat2d operator*(FXdouble x,
const FXMat2d& a);
160 extern FXAPI FXMat2d operator*(
const FXMat2d& a,FXdouble x);
161 extern FXAPI FXMat2d operator/(
const FXMat2d& a,FXdouble x);
162 extern FXAPI FXMat2d operator/(FXdouble x,
const FXMat2d& a);
165 extern FXAPI FXbool operator==(
const FXMat2d& a,
const FXMat2d& b);
166 extern FXAPI FXbool operator!=(
const FXMat2d& a,
const FXMat2d& b);
167 extern FXAPI FXbool operator==(
const FXMat2d& a,FXdouble n);
168 extern FXAPI FXbool operator!=(
const FXMat2d& a,FXdouble n);
169 extern FXAPI FXbool operator==(FXdouble n,
const FXMat2d& a);
170 extern FXAPI FXbool operator!=(FXdouble n,
const FXMat2d& a);
173 extern FXAPI FXMat2d orthogonalize(
const FXMat2d& m);
176 extern FXAPI FXStream& operator<<(FXStream& store,
const FXMat2d& m);
179 extern FXAPI FXStream& operator>>(FXStream& store,FXMat2d& m);
Double-precision 2x2 matrix.
Definition: FXMat2d.h:31
FXVec2d & operator[](FXint i)
Indexing.
Definition: FXMat2d.h:107
FXMat2d()
Default constructor; value is not initialized.
Definition: FXMat2d.h:37
Definition: FX4Splitter.h:28
~FXMat2d()
Destructor.
Definition: FXMat2d.h:141
Double-precision 2-element vector.
Definition: FXVec2d.h:28
Double-precision 3x3 matrix.
Definition: FXMat3d.h:33