Blender V2.61 - r43446
Functions

IK_QSegment.cpp File Reference

#include "IK_QSegment.h"
#include <cmath>

Go to the source code of this file.

Functions

static MT_Matrix3x3 RotationMatrix (MT_Scalar sine, MT_Scalar cosine, int axis)
static MT_Matrix3x3 RotationMatrix (MT_Scalar angle, int axis)
static MT_Scalar EulerAngleFromMatrix (const MT_Matrix3x3 &R, int axis)
static MT_Scalar safe_acos (MT_Scalar f)
static MT_Scalar ComputeTwist (const MT_Matrix3x3 &R)
static MT_Matrix3x3 ComputeTwistMatrix (MT_Scalar tau)
static void RemoveTwist (MT_Matrix3x3 &R)
static MT_Vector3 SphericalRangeParameters (const MT_Matrix3x3 &R)
static MT_Matrix3x3 ComputeSwingMatrix (MT_Scalar ax, MT_Scalar az)
static MT_Vector3 MatrixToAxisAngle (const MT_Matrix3x3 &R)
static bool EllipseClamp (MT_Scalar &ax, MT_Scalar &az, MT_Scalar *amin, MT_Scalar *amax)

Detailed Description

Definition in file IK_QSegment.cpp.


Function Documentation

static MT_Matrix3x3 ComputeSwingMatrix ( MT_Scalar  ax,
MT_Scalar  az 
) [static]

Definition at line 136 of file IK_QSegment.cpp.

References sqrt().

Referenced by IK_QSwingSegment::UpdateAngle(), and IK_QSphericalSegment::UpdateAngle().

static MT_Scalar ComputeTwist ( const MT_Matrix3x3 R) [static]
static MT_Matrix3x3 ComputeTwistMatrix ( MT_Scalar  tau) [static]
static bool EllipseClamp ( MT_Scalar ax,
MT_Scalar az,
MT_Scalar amin,
MT_Scalar amax 
) [static]

Definition at line 163 of file IK_QSegment.cpp.

References MT_fuzzyZero(), and sqrt().

Referenced by IK_QSwingSegment::UpdateAngle(), and IK_QSphericalSegment::UpdateAngle().

static MT_Scalar EulerAngleFromMatrix ( const MT_Matrix3x3 R,
int  axis 
) [static]

Definition at line 61 of file IK_QSegment.cpp.

References KDL::atan2(), MT_EPSILON(), and sqrt().

Referenced by IK_QElbowSegment::SetBasis(), and IK_QRevoluteSegment::SetBasis().

static MT_Vector3 MatrixToAxisAngle ( const MT_Matrix3x3 R) [static]
static void RemoveTwist ( MT_Matrix3x3 R) [static]
static MT_Matrix3x3 RotationMatrix ( MT_Scalar  angle,
int  axis 
) [static]

Definition at line 55 of file IK_QSegment.cpp.

References cos(), RotationMatrix(), and sin().

static MT_Matrix3x3 RotationMatrix ( MT_Scalar  sine,
MT_Scalar  cosine,
int  axis 
) [static]
static MT_Scalar safe_acos ( MT_Scalar  f) [static]

Definition at line 76 of file IK_QSegment.cpp.

References acos(), and MT_PI().

Referenced by MatrixToAxisAngle().

static MT_Vector3 SphericalRangeParameters ( const MT_Matrix3x3 R) [static]