示例#1
0
文件: Vector.cs 项目: xbloke/sledge
 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;
     }
 }
示例#2
0
文件: Vector.cs 项目: silky/sledge
 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;
     }
 }
示例#3
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());
 }
示例#4
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();
 }