org.ode4j.ode
Class DRotation

java.lang.Object
  extended by org.ode4j.ode.OdeConstants
      extended by org.ode4j.ode.internal.ErrorHandler
          extended by org.ode4j.ode.internal.Common
              extended by org.ode4j.ode.DMisc
                  extended by org.ode4j.ode.DMatrix
                      extended by org.ode4j.ode.DRotation
Direct Known Subclasses:
OdeMath

public class DRotation
extends DMatrix

Port of rotation.h in ode API.

Author:
Tilmann Zaeschke

Nested Class Summary
 
Nested classes/interfaces inherited from class org.ode4j.ode.internal.Common
org.ode4j.ode.internal.Common.DMatrix4
 
Nested classes/interfaces inherited from class org.ode4j.ode.internal.ErrorHandler
org.ode4j.ode.internal.ErrorHandler.dMessageFunction
 
Field Summary
 
Fields inherited from class org.ode4j.ode.internal.Common
d_ERR_IASSERT, d_ERR_LCP, d_ERR_UASSERT, d_ERR_UNKNOWN, d_MEMORY_OK, d_MEMORY_OUT_OF_MEMORY, dATOMICS_ENABLED, DBL_EPSILON, dDOUBLE, dEpsilon, dNODEBUG, dSINGLE, dTLS_ENABLED, dTRIMESH_16BIT_INDICES, dTRIMESH_ENABLED, dTRIMESH_GIMPACT, dTRIMESH_OPCODE, dTRIMESH_OPCODE_USE_OLD_TRIMESH_TRIMESH_COLLIDER, dUSE_MALLOC_FOR_ALLOCA, M_PI, M_SQRT1_2, MAX_FLOAT
 
Fields inherited from class org.ode4j.ode.OdeConstants
CONTACTS_UNIMPORTANT, dAllocateMaskAll, dContactApprox0, dContactApprox1, dContactApprox1_1, dContactApprox1_2, dContactBounce, dContactFDir1, dContactMotion1, dContactMotion2, dContactMotionN, dContactMu2, dContactSlip1, dContactSlip2, dContactSoftCFM, dContactSoftERP, dInfinity
 
Constructor Summary
DRotation()
           
 
Method Summary
static void dQFromAxisAndAngle(DQuaternion q, double ax, double ay, double az, double angle)
           
static void dQfromR(DQuaternion q, DMatrix3C R)
           
static void dQMultiply0(DQuaternion qa, DQuaternionC qb, DQuaternionC qc)
          Quaternion multiplication, analogous to the matrix multiplication routines.
static void dQMultiply1(DQuaternion qa, DQuaternionC qb, DQuaternionC qc)
          Quaternion multiplication, analogous to the matrix multiplication routines.
static void dQMultiply2(DQuaternion qa, DQuaternionC qb, DQuaternionC qc)
          Quaternion multiplication, analogous to the matrix multiplication routines.
static void dQMultiply3(DQuaternion qa, DQuaternionC qb, DQuaternionC qc)
          Quaternion multiplication, analogous to the matrix multiplication routines.
static void dRFromAxisAndAngle(DMatrix3 R, double ax, double ay, double az, double angle)
           
static void dRFromAxisAndAngle(DMatrix3 R, DVector3C a, double angle)
           
static void dRFromEulerAngles(DMatrix3 R, double phi, double theta, double psi)
           
static void dRfromQ(DMatrix3 R, DQuaternionC q)
           
static void dRFromZAxis(DMatrix3 R, DVector3C a)
           
static void dRSetIdentity(DMatrix3 R)
           
 
Methods inherited from class org.ode4j.ode.DMatrix
dFactorCholesky, dFactorCholesky, dFactorLDLT, dInvertPDMatrix, dInvertPDMatrix, dIsPositiveDefinite, dIsPositiveDefinite, dLDLTAddTL, dLDLTRemove, dMultiply0, dMultiply0, dMultiply0, dMultiply0, dMultiply1, dMultiply1, dMultiply1, dMultiply2, dMultiply2, dMultiply2, dRemoveRowCol, dSetValue, dSetZero, dSolveCholesky, dSolveCholesky, dSolveLDLT, dVectorScale
 
Methods inherited from class org.ode4j.ode.DMisc
dClearUpperTriangle, dClearUpperTriangle, dMakeRandomMatrix, dMakeRandomMatrix, dMakeRandomVector, dMakeRandomVector, dMakeRandomVector, dMaxDifference, dMaxDifference, dMaxDifference, dMaxDifference, dMaxDifferenceLowerTriangle, dPrintMatrix, dRand, dRandGetSeed, dRandInt, dRandReal, dRandSetSeed, dTestRand
 
Methods inherited from class org.ode4j.ode.internal.Common
dAASSERT, dAASSERT, dAtan2, dCeil, dCopysign, dCopySign, dCos, dDEBUGMSG, dFabs, dFloor, dFMod, dIASSERT, dIsNan, dIVERIFY, dNextAfter, dPAD, dRecip, dRecipSqrt, dSin, dSqrt, dUASSERT
 
Methods inherited from class org.ode4j.ode.internal.ErrorHandler
dDebug, dError, dGetDebugHandler, dGetErrorHandler, dGetMessageHandler, dMessage, dSetDebugHandler, dSetErrorHandler, dSetMessageHandler
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DRotation

public DRotation()
Method Detail

dRSetIdentity

public static void dRSetIdentity(DMatrix3 R)

dRFromAxisAndAngle

public static void dRFromAxisAndAngle(DMatrix3 R,
                                      double ax,
                                      double ay,
                                      double az,
                                      double angle)

dRFromAxisAndAngle

public static void dRFromAxisAndAngle(DMatrix3 R,
                                      DVector3C a,
                                      double angle)

dRFromEulerAngles

public static void dRFromEulerAngles(DMatrix3 R,
                                     double phi,
                                     double theta,
                                     double psi)

dRFromZAxis

public static void dRFromZAxis(DMatrix3 R,
                               DVector3C a)

dQFromAxisAndAngle

public static void dQFromAxisAndAngle(DQuaternion q,
                                      double ax,
                                      double ay,
                                      double az,
                                      double angle)

dQMultiply0

public static void dQMultiply0(DQuaternion qa,
                               DQuaternionC qb,
                               DQuaternionC qc)
Quaternion multiplication, analogous to the matrix multiplication routines. qa = rotate by qc, then qb


dQMultiply1

public static void dQMultiply1(DQuaternion qa,
                               DQuaternionC qb,
                               DQuaternionC qc)
Quaternion multiplication, analogous to the matrix multiplication routines. qa = rotate by qc, then by inverse of qb


dQMultiply2

public static void dQMultiply2(DQuaternion qa,
                               DQuaternionC qb,
                               DQuaternionC qc)
Quaternion multiplication, analogous to the matrix multiplication routines. qa = rotate by inverse of qc, then by qb


dQMultiply3

public static void dQMultiply3(DQuaternion qa,
                               DQuaternionC qb,
                               DQuaternionC qc)
Quaternion multiplication, analogous to the matrix multiplication routines. qa = rotate by inverse of qc, then by inverse of qb


dRfromQ

public static void dRfromQ(DMatrix3 R,
                           DQuaternionC q)

dQfromR

public static void dQfromR(DQuaternion q,
                           DMatrix3C R)