private Rotation3D MultiplyRotation3D(
Rotation3D r2,
Rotation3D r1)
{
Rotation3D oRot =
new Rotation3D(r2.D * r1.A + r2.A * r1.D +
r2.B * r1.C - r2.C * r1.B,
r2.D * r1.B + r2.B * r1.D +
r2.C * r1.A - r2.A * r1.C,
r2.D * r1.C + r2.C * r1.D +
r2.A * r1.B - r2.B * r1.A,
r2.D * r1.D - r2.A * r1.A -
r2.B * r1.B - r2.C * r1.C);
oRot.Normalize();
return oRot;
}
private double GetGunits()