Esempio n. 1
0
 public void Set(Coordinate offsets)
 {
     Distance = offsets.VectorMagnitude();
     if (Distance == 0)
     {
         X = Y = Z = 0;
     }
     else
     {
         X = offsets.X / Distance;
         Y = offsets.Y / Distance;
         Z = offsets.Z / Distance;
     }
 }
Esempio n. 2
0
 public static Quaternion AxisAngle(Coordinate axis, decimal angle)
 {
     return(axis.VectorMagnitude() == 0
                ? Identity
                : new Quaternion(axis.Normalise() * DMath.Sin(angle / 2), DMath.Cos(angle / 2)).Normalise());
 }