コード例 #1
0
 /// <summary>
 /// Creates new Quaternion i*x + j*y + k*z + w (Based an an coefficients/unit-Axis/Angle)
 /// </summary>
 /// <param name="p">How do you want to create the Quaternion</param>
 /// <param name="v">The (unit) Axis for the Rotation/Imaginary part</param>
 /// <param name="a">The angle (in Radiants)/Real Part</param>
 internal Quaternion(QuaternionParameterType p, Vector3f v, double a)  : base()
 {
     if (p == QuaternionParameterType.ImaginaryReal)
     {
         X = v.X; Y = v.Y; Z = v.Z; W = a;
     }
     else if (p == QuaternionParameterType.UnitAxisAngle)
     {
         this.SetFromAxisAngle(v, a);
     }
 }
コード例 #2
0
 /// <summary>
 /// Creates new Quaternion i*x + j*y + k*z + w (Based an an coefficients/unit-Axis/Angle)
 /// </summary>
 /// <param name="p">How do you want to create the Quaternion</param>
 /// <param name="x">X-Imaginary Part/X-Axis</param>
 /// <param name="y">Y-Imaginary Part/Y-Axis</param>
 /// <param name="z">Z-Imaginary Part/Z-Axis</param>
 /// <param name="w">RealPart/Angle</param>
 internal Quaternion(QuaternionParameterType p, double x, double y, double z, double w) : base()
 {
     if (p == QuaternionParameterType.ImaginaryReal)
     {
         X = x; Y = y; Z = z; W = w;
     }
     else if (p == QuaternionParameterType.UnitAxisAngle)
     {
         this.SetFromAxisAngle(new Vector3f(x, y, z), w);
     }
 }