95 float r1, r2, r3, r4, r5, r6, r7, r8,
r9;
150 void SetMat(
Mat3d &matrix,
float r1,
float r2,
float r3,
float r4,
float r5,
float r6,
float r7,
float r8,
float r9);
void MulVecTransposedVec(const Vec3d &vector1, const Vec3d &vector2, Mat3d &result)
void RotateVec(const Vec3d &vec, const Vec3d &rotation, Vec3d &result)
float SquaredLength(const Vec3d &vec)
void SetVec(Vec3d &vec, const Vec3d &sourceVector)
void CrossProduct(const Vec3d &vector1, const Vec3d &vector2, Vec3d &result)
void RotateVecQuaternion(const Vec3d &vec, const Vec3d &axis, float theta, Vec3d &result)
void Invert(const Transformation3d &input, Transformation3d &result)
void GetAxisAndAngle(const Mat3d &R, Vec3d &axis, float &angle)
void AddToMat(Mat3d &matrix, const Mat3d &matrixToAdd)
void RotateVecYZX(const Vec3d &vec, const Vec3d &rotation, Vec3d &result)
void Transpose(const Mat3d &matrix, Mat3d &result)
float ScalarProduct(const Vec3d &vector1, const Vec3d &vector2)
void Average(const Vec3d &vector1, const Vec3d &vector2, Vec3d &result)
CDynamicArrayTemplate< Vec3d > CVec3dArray
Data structure for the representation of a 3D vector.
void SetRotationMatAxis(Mat3d &matrix, const Vec3d &axis, float theta)
float Length(const Vec3d &vec)
float Angle(const Vec3d &vector1, const Vec3d &vector2, const Vec3d &axis)
std::vector< Vec3d > Vec3dList
Data structure for the representation of a quaternion.
void SetRotationMatZ(Mat3d &matrix, float theta)
void SetRotationMatYZX(Mat3d &matrix, const Vec3d &rotation)
void MulTransVec(const Transformation3d &transformation, const Vec3d &vec, Vec3d &result)
void MulVecScalar(const Vec3d &vec, float scalar, Vec3d &result)
float SquaredDistance(const Vec3d &vector1, const Vec3d &vector2)
void SubtractMatMat(const Mat3d &matrix1, const Mat3d &matrix2, Mat3d &result)
void AddVecVec(const Vec3d &vector1, const Vec3d &vector2, Vec3d &result)
void MulMatMat(const Mat3d &matrix1, const Mat3d &matrix2, Mat3d &result)
void AddToVec(Vec3d &vec, const Vec3d &vectorToAdd)
void MulMatScalar(const Mat3d &matrix, float scalar, Mat3d &result)
GLclampf GLclampf GLclampf alpha
void TransformVec(const Vec3d &vec, const Vec3d &rotation, const Vec3d &translation, Vec3d &result)
Efficient mathematic functions operating on the data types Vec3d, Mat3d, Transformation3d, and Quaternion.
bool SaveToFile(const Transformation3d &transformation, const char *pFilePath)
void MulQuatQuat(const Quaternion &quat1, const Quaternion &quat2, Quaternion &result)
void Mean(const Vec3d *pVectors, int nVectors, Vec3d &result)
void TransformVecYZX(const Vec3d &vec, const Vec3d &rotation, const Vec3d &translation, Vec3d &result)
void AddMatMat(const Mat3d &matrix1, const Mat3d &matrix2, Mat3d &matrix)
GLenum GLenum GLenum input
void RotateVecAngleAxis(const Vec3d &vec, const Vec3d &axis, float theta, Vec3d &result)
void SetRotationMatY(Mat3d &matrix, float theta)
void SubtractFromVec(Vec3d &vec, const Vec3d &vectorToSubtract)
void NormalizeVec(Vec3d &vec)
void MulMatVec(const Mat3d &matrix, const Vec3d &vector1, const Vec3d &vector2, Vec3d &result)
bool LoadFromFile(Transformation3d &transformation, const char *pFilePath)
float EvaluateForm(const Vec3d &matrix1, const Mat3d &matrix2)
void SetTransformation(Transformation3d &transformation, const Transformation3d &sourceTransformation)
void SubtractVecVec(const Vec3d &vector1, const Vec3d &vector2, Vec3d &result)
void SetRotationMat(Mat3d &matrix, const Vec3d &rotation)
float Det(const Mat3d &matrix)
void SetRotationMatX(Mat3d &matrix, float theta)
float Distance(const Vec3d &vector1, const Vec3d &vector2)
Data structure for the representation of a 3x3 matrix.
void MulTransTrans(const Transformation3d &transformation1, const Transformation3d &transformation2, Transformation3d &result)
void SetMat(Mat3d &matrix, const Mat3d &sourceMatrix)