/** * Matrix multiplication. all matrices are stored in standard row format. * the digit refers to the argument that is transposed: <br> * 0: A = B * C (sizes: A:p*r B:p*q C:q*r) <br> * 1: A = B' * C (sizes: A:p*r B:q*p C:q*r) <br> * 2: A = B * C' (sizes: A:p*r B:p*q C:r*q) <br> * case 1,2 are equivalent to saying that the operation is A=B*C but B or C * are stored in standard column format. * <p> * This method is equivalent to dMultiply0(A, B, C, 3, 3, 3). * @param A A * @param B B * @param C C */ public static void dMultiply0(DMatrix3 A, final DMatrix3C B, final DMatrix3C C) { A.eqMul(B, C); }
/** * Matrix multiplication. all matrices are stored in standard row format. * the digit refers to the argument that is transposed: * 0: A = B * C (sizes: A:p*r B:p*q C:q*r) * 1: A = B' * C (sizes: A:p*r B:q*p C:q*r) * 2: A = B * C' (sizes: A:p*r B:p*q C:r*q) * case 1,2 are equivalent to saying that the operation is A=B*C but * B or C are stored in standard column format. * @param B source B * @param C source C */ public void dMultiply0 (final DMatrix3C B, final DMatrix3C C) { eqMul(B, C); } public void eqMul (final DMatrix3C B,
/** * Matrix multiplication. all matrices are stored in standard row format. * the digit refers to the argument that is transposed: * 0: A = B * C (sizes: A:p*r B:p*q C:q*r) * 1: A = B' * C (sizes: A:p*r B:q*p C:q*r) * 2: A = B * C' (sizes: A:p*r B:p*q C:r*q) * case 1,2 are equivalent to saying that the operation is A=B*C but * B or C are stored in standard column format. * @param B source B * @param C source C */ public void dMultiply0 (final DMatrix3C B, final DMatrix3C C) { eqMul(B, C); } public void eqMul (final DMatrix3C B,
/** * Matrix multiplication. all matrices are stored in standard row format. * the digit refers to the argument that is transposed: <br> * 0: A = B * C (sizes: A:p*r B:p*q C:q*r) <br> * 1: A = B' * C (sizes: A:p*r B:q*p C:q*r) <br> * 2: A = B * C' (sizes: A:p*r B:p*q C:r*q) <br> * case 1,2 are equivalent to saying that the operation is A=B*C but B or C * are stored in standard column format. * <p> * This method is equivalent to dMultiply0(A, B, C, 3, 3, 3). * @param A A * @param B B * @param C C */ public static void dMultiply0(DMatrix3 A, final DMatrix3C B, final DMatrix3C C) { A.eqMul(B, C); }
dRFromAxisAndAngle (R2,dRandReal()-0.5,dRandReal()-0.5, dRandReal()-0.5,dRandReal()-0.5); R3.eqMul(R1, R2);//dMultiply0 (R3,R1,R2,3,3,3); dBodySetRotation (body[0],R3);
dRFromAxisAndAngle (R2,dRandReal()-0.5,dRandReal()-0.5, dRandReal()-0.5,dRandReal()-0.5); R3.eqMul(R1, R2);//dMultiply0 (R3,R1,R2,3,3,3); body[0].setRotation (R3);
dRFromAxisAndAngle (R2,dRandReal()-0.5,dRandReal()-0.5, dRandReal()-0.5,dRandReal()-0.5); R3.eqMul(R1, R2);//dMultiply0 (R3,R1,R2,3,3,3); body[0].setRotation(R3);
dRFromAxisAndAngle (R2,dRandReal()-0.5,dRandReal()-0.5, dRandReal()-0.5,dRandReal()-0.5); R3.eqMul(R1, R2);//dMultiply0 (R3,R1,R2,3,3,3); body[0].setRotation (R3);
dRFromAxisAndAngle (R2,dRandReal()-0.5,dRandReal()-0.5, dRandReal()-0.5,dRandReal()-0.5); R3.eqMul(R1, R2);//dMultiply0 (R3,R1,R2,3,3,3); dBodySetRotation (body[0],R3);
dRFromAxisAndAngle (R2,dRandReal()-0.5,dRandReal()-0.5, dRandReal()-0.5,dRandReal()-0.5); R3.eqMul(R1, R2);//dMultiply0 (R3,R1,R2,3,3,3); dBodySetRotation (body[0],R3);