示例#1
0
 /// <summary>
 /// Divides rotation by scalar value.
 /// </summary>
 public static Rot2d operator /(Rot2d rot, double val)
 {
     return(Rot2d.Divide(rot, val));
 }
示例#2
0
 /// <summary>
 /// Transforms a position vector.
 /// </summary>
 public V2d InvTransformPos(V2d v)
 {
     return(Rot2d.InvTransformPos(this, v));
 }
示例#3
0
 /// <summary>
 /// </summary>
 public static M34d operator *(Rot2d rot, Shift3d shift)
 {
     return(Rot2d.Multiply(rot, shift));
 }
示例#4
0
 /// <summary>
 /// Subtracts rotation from a scalar.
 /// </summary>
 public static Rot2d Subtract(double angle, Rot2d rot)
 {
     return(new Rot2d(angle - rot.Angle));
 }
示例#5
0
 public static M22d Multiply(Rot2d rot, M22d mat)
 {
     return((M22d)rot * mat);
 }
示例#6
0
 /// <summary>
 /// Adds 2 rotations.
 /// </summary>
 public static Rot2d Add(Rot2d r0, Rot2d r1)
 {
     return(new Rot2d(r0.Angle + r1.Angle));
 }
示例#7
0
 /// <summary>
 /// Subtracts 2 rotations.
 /// </summary>
 public static Rot2d Subtract(Rot2d r0, Rot2d r1)
 {
     return(new Rot2d(r0.Angle - r1.Angle));
 }
示例#8
0
 /// <summary>
 /// Subtracts a rotation from a scalar value.
 /// </summary>
 public static Rot2d operator -(double angle, Rot2d rot)
 {
     return(Rot2d.Subtract(angle, rot));
 }
示例#9
0
 /// <summary>
 /// Multiplies rotation with scalar value.
 /// </summary>
 public static Rot2d operator *(double val, Rot2d rot)
 {
     return(Rot2d.Multiply(rot, val));
 }
示例#10
0
 /// <summary>
 /// Subtracts 2 rotations.
 /// </summary>
 public static Rot2d operator -(Rot2d r0, Rot2d r1)
 {
     return(Rot2d.Subtract(r0, r1));
 }
示例#11
0
 /// <summary>
 /// Subtracts a rotation from a scalar value.
 /// </summary>
 public static Rot2d operator -(Rot2d rot, double angle)
 {
     return(Rot2d.Subtract(rot, angle));
 }
示例#12
0
 /// <summary>
 /// Adds a rotation and a scalar value.
 /// </summary>
 public static Rot2d operator +(double angle, Rot2d rot)
 {
     return(Rot2d.Add(rot, angle));
 }
示例#13
0
 /// <summary>
 /// Adds 2 rotations.
 /// </summary>
 public static Rot2d operator +(Rot2d r0, Rot2d r1)
 {
     return(Rot2d.Add(r0, r1));
 }
示例#14
0
 /// <summary>
 /// Negates the rotation.
 /// </summary>
 public static Rot2d operator -(Rot2d rot)
 {
     return(Rot2d.Negate(rot));
 }
示例#15
0
 public static bool ApproxEqual(Rot2d r0, Rot2d r1)
 {
     return(ApproxEqual(r0, r1, Constant <double> .PositiveTinyValue));
 }
示例#16
0
 /// <summary>
 /// </summary>
 public static V4d operator *(Rot2d rot, V4d vec)
 {
     return(Rot2d.Multiply(rot, vec));
 }
示例#17
0
 // [todo ISSUE 20090225 andi : andi] Wir sollten auch folgendes ber�cksichtigen -q == q, weil es die selbe rotation definiert.
 // [todo ISSUE 20090427 andi : andi] use an angle-tolerance
 // [todo ISSUE 20090427 andi : andi] add Rot3d.ApproxEqual(Rot3d other);
 public static bool ApproxEqual(Rot2d r0, Rot2d r1, double tolerance)
 {
     return((r0.Angle - r1.Angle).Abs() <= tolerance);
 }
示例#18
0
 /// <summary>
 /// </summary>
 public static M44d operator *(Rot2d rot, M44d mat)
 {
     return(Rot2d.Multiply(rot, mat));
 }
示例#19
0
 /// <summary>
 /// Adds scalar to a rotation.
 /// </summary>
 public static Rot2d Add(Rot2d rot, double val)
 {
     return(new Rot2d(rot.Angle + val));
 }
示例#20
0
 /// <summary>
 /// </summary>
 public static M33d operator *(Rot2d rot2, Rot3d rot3)
 {
     return(Rot2d.Multiply(rot2, rot3));
 }
示例#21
0
 /// <summary>
 /// Subtracts scalar from a rotation.
 /// </summary>
 public static Rot2d Subtract(Rot2d rot, double angle)
 {
     return(new Rot2d(rot.Angle - angle));
 }
示例#22
0
 /// <summary>
 /// </summary>
 public static Rot2d operator *(Rot2d r0, Rot2d r1)
 {
     return(Rot2d.Multiply(r0, r1));
 }
示例#23
0
 /// <summary>
 /// Multiplies scalar with a rotation.
 /// </summary>
 public static Rot2d Multiply(Rot2d rot, double val)
 {
     return(new Rot2d(rot.Angle * val));
 }
示例#24
0
 /// <summary>
 /// </summary>
 public static M33d operator *(Rot2d rot, Scale3d scale)
 {
     return(Rot2d.Multiply(rot, scale));
 }
示例#25
0
 public static M33d Multiply(Rot2d rot2, Rot3d rot3)
 {
     return(Rot2d.Multiply(rot2, (M33d)rot3));
 }
示例#26
0
 /// <summary>
 /// Transforms a direction vector.
 /// </summary>
 public V2d InvTransformDir(V2d v)
 {
     return(Rot2d.InvTransformDir(this, v));
 }