50 for (
int i = 0; i < 4; i++)
51 for (
int j = 0; j < 4; j++)
58 for (i = 0; i < 4; i++)
59 for (j = 0; j < 4; j++)
60 val[i][j] =
m[i * 4 + j];
66 for (i = 0; i < 4; i++)
67 for (j = 0; j < 4; j++)
68 val[i][j] =
m.val[i][j];
79 for (i = 0; i < 4; i++)
80 for (j = 0; j < 4; j++)
96 void set(
int i,
int j,
double d)
102 double get(
int i,
int j)
const
109 void fromQuat(
const float,
const float,
const float,
const float);
132 m1.
set(0, 0,
v.vec[0]);
133 m1.
set(1, 1,
v.vec[1]);
134 m1.
set(2, 2,
v.vec[2]);
143 m1.
set(0, 0, 1 /
v.vec[0]);
144 m1.
set(1, 1, 1 /
v.vec[1]);
145 m1.
set(2, 2, 1 /
v.vec[2]);
154 coMatrix rotationX(
const double)
const;
155 coMatrix invRotationX(
const double)
const;
157 coMatrix rotationY(
const double)
const;
158 coMatrix invRotationY(
const double)
const;
160 coMatrix rotationZ(
const double)
const;
161 coMatrix invRotationZ(
const double)
const;
166 double sinx = sin(
v.vec[0]);
167 double siny = sin(
v.vec[1]);
168 double sinz = sin(
v.vec[2]);
170 double cosx = cos(
v.vec[0]);
171 double cosy = cos(
v.vec[1]);
172 double cosz = cos(
v.vec[2]);
174 m1.
val[0][0] = cosy * cosz;
175 m1.
val[0][1] = cosy * sinz;
176 m1.
val[0][2] = -siny;
178 m1.
val[1][0] = cosz * sinx * siny - cosx * sinz;
179 m1.
val[1][1] = cosx * cosz + sinx * siny * sinz;
180 m1.
val[1][2] = cosy * sinx;
182 m1.
val[2][0] = cosx * cosz * siny + sinx * sinz;
183 m1.
val[2][1] = -(cosz * sinx) + cosx * siny * sinz;
184 m1.
val[2][2] = cosx * cosy;
194 double sinx = sin(-
v.vec[0]);
195 double siny = sin(-
v.vec[1]);
196 double sinz = sin(-
v.vec[2]);
198 double cosx = cos(-
v.vec[0]);
199 double cosy = cos(-
v.vec[1]);
200 double cosz = cos(-
v.vec[2]);
202 m1.
val[0][0] = cosy * cosz;
203 m1.
val[0][1] = cosz * sinx * siny + cosx * sinz;
204 m1.
val[0][2] = -(cosx * cosz * siny) + sinx * sinz;
206 m1.
val[1][0] = -(cosy * sinz);
207 m1.
val[1][1] = cosx * cosz - sinx * siny * sinz;
208 m1.
val[1][2] = cosz * sinx + cosx * siny * sinz;
211 m1.
val[2][1] = -(cosy * sinx);
212 m1.
val[2][2] = cosx * cosy;
223 for (
int i = 0; i < 4; i++)
224 for (
int j = 0; j < 4; j++)
225 f[i][j] = (
float)
val[i][j];
231 fprintf(
f,
"%s{ %f %f %f %f ",
n ?
n :
"",
val[0][0],
val[0][1],
val[0][2],
val[0][3]);
232 fprintf(
f,
"%f %f %f %f ",
val[1][0],
val[1][1],
val[1][2],
val[1][3]);
233 fprintf(
f,
"%f %f %f %f ",
val[2][0],
val[2][1],
val[2][2],
val[2][3]);
234 fprintf(
f,
"%f %f %f %f } ",
val[3][0],
val[3][1],
val[3][2],
val[3][3]);
246 O <<
m.val[0][0] <<
" " <<
m.val[0][1] <<
" " <<
m.val[0][2] <<
" " <<
m.val[0][3] <<
","
247 <<
m.val[1][0] <<
" " <<
m.val[1][1] <<
" " <<
m.val[1][2] <<
" " <<
m.val[1][3] <<
","
248 <<
m.val[2][0] <<
" " <<
m.val[2][1] <<
" " <<
m.val[2][2] <<
" " <<
m.val[2][3] <<
","
249 <<
m.val[3][0] <<
" " <<
m.val[3][1] <<
" " <<
m.val[3][2] <<
" " <<
m.val[3][3];
#define UTILEXPORT
Definition: coExport.h:206
GLdouble n
Definition: khronos-glext.h:8447
const GLdouble * v
Definition: khronos-glext.h:6442
GLfloat f
Definition: khronos-glext.h:8258
GLsizei GLboolean transpose
Definition: khronos-glext.h:6768
GLfloat angle
Definition: khronos-glext.h:12122
GLuint GLfloat * val
Definition: khronos-glext.h:7898
const GLfloat * m
Definition: khronos-glext.h:12117
__host__ __device__ float2 operator*(float2 a, float2 b)
Definition: cutil_math.h:736
__host__ __device__ float2 operator-(float2 &a)
Definition: cutil_math.h:252
__host__ __device__ float2 operator+(float2 a, float2 b)
Definition: cutil_math.h:281
list of all chemical elements
Definition: coConfig.h:27
INLINE bool operator==(const coObjID &a, const coObjID &b)
Definition: coObjID.h:166
Definition: coMatrix.h:36
coMatrix(double *m)
Definition: coMatrix.h:55
coMatrix(const coMatrix &m)
Definition: coMatrix.h:63
int changed
Definition: coMatrix.h:43
void set(int i, int j, double d)
Definition: coMatrix.h:96
void get(float f[4][4])
Definition: coMatrix.h:221
coMatrix invScaleS(const double &d)
Definition: coMatrix.h:122
friend ostream & operator<<(ostream &O, const coMatrix &m)
Definition: coMatrix.h:244
coMatrix invScale(const coVector &v) const
Definition: coMatrix.h:140
~coMatrix()
Definition: coMatrix.h:71
double & operator()(int i, int j)
Definition: coMatrix.h:86
coMatrix rotation(const coVector &v) const
Definition: coMatrix.h:163
coMatrix & operator=(const coMatrix &m)
Definition: coMatrix.h:76
coMatrix scaleS(const double &d) const
Definition: coMatrix.h:115
void print(FILE *f, char *n=0)
Definition: coMatrix.h:229
double val[4][4]
Definition: coMatrix.h:40
coMatrix scale(const coVector &v) const
Definition: coMatrix.h:129
void unity()
Definition: coMatrix.h:237
double get(int i, int j) const
Definition: coMatrix.h:102
coMatrix()
Definition: coMatrix.h:48
coMatrix invRotation(const coVector &v) const
Definition: coMatrix.h:191
Definition: coVector.h:42