Exemple #1
0
 /// <summary>
 /// Multiplacation of a <see cref="Scale__x3t__"/> with a <see cref="V__x4t__"/>.
 /// </summary>
 public static V__x4t__ Multiply(Scale__x3t__ scale, V__x4t__ vec)
 {
     return(new V__x4t__(scale.X * vec.X,
                         scale.Y * vec.Y,
                         scale.Z * vec.Z,
                         vec.W));
 }
 /// <summary>
 /// Creates new Identity <see cref="M4__x4t__"/> with <see cref="Scale__x3t__"/> for scaling.
 /// </summary>
 /// <param name="scale"></param>
 /// <returns>A <see cref="M4__x4t__"/> scaling matrix.</returns>
 public static M4__x4t__ Scale(Scale__x3t__ scale)
 {
     return(new M4__x4t__(scale.X, 0, 0, 0,
                          0, scale.Y, 0, 0,
                          0, 0, scale.Z, 0,
                          0, 0, 0, 1));
 }
 public static M3__x3t__ Multiply(M3__x3t__ m, Scale__x3t__ s)
 {
     return(new M3__x3t__(
                m.M00 * s.X, m.M01 * s.Y, m.M02 * s.Z,
                m.M10 * s.X, m.M11 * s.Y, m.M12 * s.Z,
                m.M20 * s.X, m.M21 * s.Y, m.M22 * s.Z
                ));
 }
Exemple #4
0
 public override bool Equals(object obj)
 {
     if (obj is Scale__x3t__)
     {
         Scale__x3t__ scalingVector = (Scale__x3t__)obj;
         return((X == scalingVector.X) && (Y == scalingVector.Y) && (Z == scalingVector.Z));
     }
     return(false);
 }
Exemple #5
0
        /// <summary>
        /// Multiplacation of a <see cref="Scale__x3t__"/> with a <see cref="M2__x2t__"/>.
        /// </summary>
        public static M3__x3t__ Multiply(Scale__x3t__ scale, M2__x2t__ mat)
        {
            return(new M3__x3t__(scale.X * mat.M00,
                                 scale.X * mat.M01,
                                 0,

                                 scale.Y * mat.M10,
                                 scale.Y * mat.M11,
                                 0,

                                 0,
                                 0,
                                 scale.Z));
        }
Exemple #6
0
        /// <summary>
        /// Multiplacation of a <see cref="Scale__x3t__"/> with a <see cref="M3__x3t__"/>.
        /// </summary>
        public static M3__x3t__ Multiply(Scale__x3t__ scale, M3__x3t__ mat)
        {
            return(new M3__x3t__(scale.X * mat.M00,
                                 scale.X * mat.M01,
                                 scale.X * mat.M02,

                                 scale.Y * mat.M10,
                                 scale.Y * mat.M11,
                                 scale.Y * mat.M12,

                                 scale.Z * mat.M20,
                                 scale.Z * mat.M21,
                                 scale.Z * mat.M22));
        }
Exemple #7
0
        public static M3__x3t__ Multiply(M2__x2t__ matrix, Scale__x3t__ scale)
        {
            return(new M3__x3t__(matrix.M00 * scale.X,
                                 matrix.M01 * scale.Y,
                                 0,

                                 matrix.M10 * scale.X,
                                 matrix.M11 * scale.Y,
                                 0,

                                 0,
                                 0,
                                 scale.Z));
        }
Exemple #8
0
        /// <summary>
        /// Multiplacation of a <see cref="Scale__x3t__"/> with a <see cref="Shift__x3t__"/>.
        /// </summary>
        public static M3__x4t__ Multiply(Scale__x3t__ scale, Shift__x3t__ shift)
        {
            return(new M3__x4t__(
                       scale.X,
                       0,
                       0,
                       scale.X * shift.X,

                       0,
                       scale.Y,
                       0,
                       scale.Y * shift.Y,

                       0,
                       0,
                       scale.Z,
                       scale.Z * shift.Z

                       ));
        }
Exemple #9
0
        /// <summary>
        /// Multiplacation of a <see cref="M4__x4t__"/> with a <see cref="Scale__x3t__"/>.
        /// </summary>
        public static M4__x4t__ Multiply(M4__x4t__ matrix, Scale__x3t__ scale)
        {
            return(new M4__x4t__(
                       matrix.M00 * scale.X,
                       matrix.M01 * scale.Y,
                       matrix.M02 * scale.Z,
                       matrix.M03,

                       matrix.M10 * scale.X,
                       matrix.M11 * scale.Y,
                       matrix.M12 * scale.Z,
                       matrix.M13,

                       matrix.M20 * scale.X,
                       matrix.M21 * scale.Y,
                       matrix.M22 * scale.Z,
                       matrix.M23,

                       matrix.M30 * scale.X,
                       matrix.M31 * scale.Y,
                       matrix.M32 * scale.Z,
                       matrix.M33
                       ));
        }
Exemple #10
0
        /// <summary>
        /// Multiplacation of a <see cref="Scale__x3t__"/> with a <see cref="M4__x4t__"/>.
        /// </summary>
        public static M4__x4t__ Multiply(Scale__x3t__ scale, M4__x4t__ mat)
        {
            return(new M4__x4t__(
                       scale.X * mat.M00,
                       scale.X * mat.M01,
                       scale.X * mat.M02,
                       scale.X * mat.M03,

                       scale.Y * mat.M10,
                       scale.Y * mat.M11,
                       scale.Y * mat.M12,
                       scale.Y * mat.M13,

                       scale.Z * mat.M20,
                       scale.Z * mat.M21,
                       scale.Z * mat.M22,
                       scale.Z * mat.M23,

                       mat.M30,
                       mat.M31,
                       mat.M32,
                       mat.M33
                       ));
        }
Exemple #11
0
 /// <summary>
 /// Calculates the division of a <see cref="Scale__x3t__"/> with a __ft__ scalar.
 /// </summary>
 public static Scale__x3t__ operator /(Scale__x3t__ scale, __ft__ value)
 {
     return(Scale__x3t__.Divide(scale, value));
 }
Exemple #12
0
 /// <summary>
 /// Calculates the multiplacation of a <see cref="Scale__x3t__"/> with a <see cref="Shift__x3t__"/>.
 /// </summary>
 public static M3__x4t__ operator *(Scale__x3t__ scale, Shift__x3t__ shift)
 {
     return(Scale__x3t__.Multiply(scale, shift));
 }
Exemple #13
0
 /// <summary>
 /// Calculates the multiplacation of a <see cref="V__x3t__"/> with a <see cref="Scale__x3t__"/>.
 /// </summary>
 public static V__x3t__ operator *(V__x3t__ vector, Scale__x3t__ scale)
 {
     return(Scale__x3t__.Multiply(scale, vector));
 }
Exemple #14
0
 /// <summary>
 /// Calculates the multiplacation of a <see cref="Scale__x3t__"/> with a <see cref="Scale__x3t__"/>.
 /// </summary>
 public static Scale__x3t__ operator *(Scale__x3t__ scale1, Scale__x3t__ scale2)
 {
     return(Scale__x3t__.Multiply(scale1, scale2));
 }
Exemple #15
0
 /// <summary>
 /// Calculates the multiplacation of a <see cref="Scale__x3t__"/> with a __ft__ scalar.
 /// </summary>
 public static Scale__x3t__ operator *(__ft__ scalar, Scale__x3t__ scale)
 {
     return(Scale__x3t__.Multiply(scale, scalar));
 }
Exemple #16
0
 public static M3__x3t__ Multiply(Scale__x3t__ scale, Rot__x2t__ rot)
 {
     return(Scale__x3t__.Multiply(scale, (M2__x2t__)rot));
 }
Exemple #17
0
 /// <summary>
 /// Calculates the multiplacation of a <see cref="Scale__x3t__"/> with a <see cref="M4__x4t__"/>.
 /// </summary>
 public static M4__x4t__ operator *(Scale__x3t__ scale, M4__x4t__ matrix)
 {
     return(Scale__x3t__.Multiply(scale, matrix));
 }
Exemple #18
0
 /// <summary>
 /// Multiplication of two <see cref="Scale__x3t__"/>s.
 /// </summary>
 public static Scale__x3t__ Multiply(Scale__x3t__ scale0, Scale__x3t__ scale1)
 {
     return(new Scale__x3t__(scale0.X * scale1.X, scale0.Y * scale1.Y, scale0.Z * scale1.Z));
 }
Exemple #19
0
 /// <summary>
 /// Multiplacation of a <see cref="Scale__x3t__"/> with a <see cref="V__x3t__"/>.
 /// </summary>
 public static V__x3t__ Multiply(Scale__x3t__ scale, V__x3t__ v)
 {
     return(new V__x3t__(scale.X * v.X, scale.Y * v.Y, scale.Z * v.Z));
 }
Exemple #20
0
 /// <summary>
 /// Negates all values of a <see cref="Scale__x3t__"/>.
 /// </summary>
 public static Scale__x3t__ Negate(Scale__x3t__ scale)
 {
     return(new Scale__x3t__(-scale.X, -scale.Y, -scale.Z));
 }
Exemple #21
0
 /// <summary>
 /// Division of a __ft__ scalar with a <see cref="Scale__x3t__"/>.
 /// </summary>
 public static Scale__x3t__ Divide(__ft__ val, Scale__x3t__ scale)
 {
     return(Multiply(Reciprocal(scale), val));
 }
Exemple #22
0
 /// <summary>
 /// Division of a <see cref="Scale__x3t__"/> instance with a __ft__ scalar.
 /// </summary>
 public static Scale__x3t__ Divide(Scale__x3t__ scale, __ft__ val)
 {
     return(Multiply(scale, 1 / val));
 }
Exemple #23
0
 /// <summary>
 /// Calculates the division of a __ft__ scalar with a <see cref="Scale__x3t__"/>.
 /// </summary>
 public static Scale__x3t__ operator /(__ft__ value, Scale__x3t__ scale)
 {
     return(Scale__x3t__.Divide(value, scale));
 }
Exemple #24
0
 /// <summary>
 /// Multiplacation of a <see cref="Scale__x3t__"/> with a <see cref="V__x2t__"/>.
 /// </summary>
 public static V__x2t__ Multiply(Scale__x3t__ scale, V__x2t__ v)
 {
     return(new V__x2t__(v.X * scale.X, v.Y * scale.Y));
 }
Exemple #25
0
 /// <summary>
 /// </summary>
 public static M3__x3t__ operator *(Scale__x3t__ scale, Rot__x3t__ quaternion)
 {
     return(Scale__x3t__.Multiply(scale, quaternion));
 }
Exemple #26
0
 /// <summary>
 /// Calculates the reciprocal of a <see cref="Scale__x3t__"/>.
 /// </summary>
 public static Scale__x3t__ Reciprocal(Scale__x3t__ scale)
 {
     return(new Scale__x3t__(1 / scale.X, 1 / scale.Y, 1 / scale.Z));
 }
Exemple #27
0
 /// <summary>
 /// </summary>
 public static M3__x3t__ operator *(Scale__x3t__ scale, Rot__x2t__ rotation)
 {
     return(Scale__x3t__.Multiply(scale, rotation));
 }
Exemple #28
0
 /// <summary>
 /// Negates the values of a <see cref="Scale__x3t__"/> instance.
 /// </summary>
 public static Scale__x3t__ operator -(Scale__x3t__ scalingVector)
 {
     return(Scale__x3t__.Negate(scalingVector));
 }
Exemple #29
0
 /// <summary>
 /// Multiplacation of a __ft__ scalar with a <see cref="Scale__x3t__"/>.
 /// </summary>
 public static Scale__x3t__ Multiply(Scale__x3t__ scale, __ft__ value)
 {
     return(new Scale__x3t__(scale.X * value, scale.Y * value, scale.Z * value));
 }