示例#1
0
 /// <summary>
 /// Constructs this matrix from a hmat4x2. Non-overwritten fields are from an Identity matrix.
 /// </summary>
 public hmat2(hmat4x2 m)
 {
     this.m00 = m.m00;
     this.m01 = m.m01;
     this.m10 = m.m10;
     this.m11 = m.m11;
 }
示例#2
0
 /// <summary>
 /// Constructs this matrix from a hmat4x2. Non-overwritten fields are from an Identity matrix.
 /// </summary>
 public hmat3x2(hmat4x2 m)
 {
     this.m00 = m.m00;
     this.m01 = m.m01;
     this.m10 = m.m10;
     this.m11 = m.m11;
     this.m20 = m.m20;
     this.m21 = m.m21;
 }
示例#3
0
 /// <summary>
 /// Constructs this matrix from a hmat4x2. Non-overwritten fields are from an Identity matrix.
 /// </summary>
 public hmat2x3(hmat4x2 m)
 {
     this.m00 = m.m00;
     this.m01 = m.m01;
     this.m02 = Half.Zero;
     this.m10 = m.m10;
     this.m11 = m.m11;
     this.m12 = Half.Zero;
 }
示例#4
0
 /// <summary>
 /// Constructs this matrix from a hmat4x2. Non-overwritten fields are from an Identity matrix.
 /// </summary>
 public hmat3(hmat4x2 m)
 {
     this.m00 = m.m00;
     this.m01 = m.m01;
     this.m02 = Half.Zero;
     this.m10 = m.m10;
     this.m11 = m.m11;
     this.m12 = Half.Zero;
     this.m20 = m.m20;
     this.m21 = m.m21;
     this.m22 = Half.One;
 }
示例#5
0
 /// <summary>
 /// Executes a component-wise - (subtract).
 /// </summary>
 public static hmat4x2 CompSub(hmat4x2 A, hmat4x2 B) => new hmat4x2(A.m00 - B.m00, A.m01 - B.m01, A.m10 - B.m10, A.m11 - B.m11, A.m20 - B.m20, A.m21 - B.m21, A.m30 - B.m30, A.m31 - B.m31);
示例#6
0
 /// <summary>
 /// Executes a component-wise + (add).
 /// </summary>
 public static hmat4x2 CompAdd(hmat4x2 A, hmat4x2 B) => new hmat4x2(A.m00 + B.m00, A.m01 + B.m01, A.m10 + B.m10, A.m11 + B.m11, A.m20 + B.m20, A.m21 + B.m21, A.m30 + B.m30, A.m31 + B.m31);
示例#7
0
 /// <summary>
 /// Executes a component-wise / (divide).
 /// </summary>
 public static hmat4x2 CompDiv(hmat4x2 A, hmat4x2 B) => new hmat4x2(A.m00 / B.m00, A.m01 / B.m01, A.m10 / B.m10, A.m11 / B.m11, A.m20 / B.m20, A.m21 / B.m21, A.m30 / B.m30, A.m31 / B.m31);
示例#8
0
 /// <summary>
 /// Executes a component-wise * (multiply).
 /// </summary>
 public static hmat4x2 CompMul(hmat4x2 A, hmat4x2 B) => new hmat4x2(A.m00 * B.m00, A.m01 * B.m01, A.m10 * B.m10, A.m11 * B.m11, A.m20 * B.m20, A.m21 * B.m21, A.m30 * B.m30, A.m31 * B.m31);
示例#9
0
 /// <summary>
 /// Returns true iff this equals rhs component-wise.
 /// </summary>
 public bool Equals(hmat4x2 rhs) => (((m00.Equals(rhs.m00) && m01.Equals(rhs.m01)) && (m10.Equals(rhs.m10) && m11.Equals(rhs.m11))) && ((m20.Equals(rhs.m20) && m21.Equals(rhs.m21)) && (m30.Equals(rhs.m30) && m31.Equals(rhs.m31))));
示例#10
0
 /// <summary>
 /// Returns an enumerator that iterates through all fields.
 /// </summary>
 public static IEnumerator <Half> GetEnumerator(hmat4x2 m) => m.GetEnumerator();
示例#11
0
 /// <summary>
 /// Creates a 1D array with all values (internal order)
 /// </summary>
 public static Half[] Values1D(hmat4x2 m) => m.Values1D;
示例#12
0
 /// <summary>
 /// Creates a 2D array with all values (address: Values[x, y])
 /// </summary>
 public static Half[,] Values(hmat4x2 m) => m.Values;