10#define _USE_MATH_DEFINES
56 static void setIdentity(
double *m );
90 void translatef(
const double &x,
const double &y,
const double &z );
92 void translatev(
const vec3d &v );
222 void rotatealongX(
const vec3d &dir1 );
224 void zeroTranslations();
299 void scalex(
const double &scalex );
301 void scaley(
const double &scaley );
303 void scalez(
const double &scalez );
309 void getMat(
double *m )
const;
311 void matMult(
const double *m );
313 void postMult(
const double *m );
315 void matMult(
const Matrix4d &m );
317 void postMult(
const Matrix4d &m );
320 void initMat(
const double *m );
322 void initMat(
const Matrix4d &m );
324 void mult(
const double in[ 4 ],
double out[ 4 ] )
const;
453 void xformvec( std::vector < vec3d > &in )
const;
455 void xformmat( std::vector < std::vector < vec3d > > &in )
const;
459 void xformnormvec( std::vector < vec3d > &in )
const;
461 void xformnormmat( std::vector < std::vector < vec3d > > &in )
const;
498 vec3d getTranslation()
const;
515 void setBasis(
const vec3d &xdir,
const vec3d &ydir,
const vec3d &zdir );
517 void toQuat(
double &qw,
double &qx,
double &qy,
double &qz,
double &tx,
double &ty,
double &tz )
const;
void rotate(const double &angle, const vec3d &axis)
void rotateX(const double &ang)
void rotateY(const double &ang)
vec3d xform(const vec3d &in) const
void buildXForm(const vec3d &pos, const vec3d &rot, const vec3d ¢_rot)
void scale(const double &scale)
void rotateZ(const double &ang)
void translatef(const double &x, const double &y, const double &z)
double angle(const vec3d &a, const vec3d &b)