Beispiel #1
0
 public void MultiplyTransform(MatrixX matrix, MatrixOrderX order)
 {
     if (this.matrix == null)
     {
         this.matrix = new MatrixX();
     }
     this.matrix.Multiply(matrix, order);
 }
Beispiel #2
0
 public void Multiply(MatrixX m, MatrixOrderX order)
 {
     if (order == MatrixOrderX.Prepend)
     {
         MatrixFP m1 = new MatrixFP(m.matrix);
         m1.Multiply(matrix);
         matrix = m1;
     }
     else
     {
         matrix.Multiply(m.matrix);
     }
 }
Beispiel #3
0
 public void Translate(float offsetX, float offsetY, MatrixOrderX order)
 {
     if (order == MatrixOrderX.Prepend)
     {
         MatrixFP m = MatrixFP.Identity();
         m.Translate(SingleFP.FromFloat(offsetX), SingleFP.FromFloat(offsetY));
         m.Multiply(matrix);
         matrix = m;
     }
     else
     {
         matrix.Translate(SingleFP.FromFloat(offsetX), SingleFP.FromFloat(offsetY));
     }
 }
Beispiel #4
0
 public void Shear(float shearX, float shearY, MatrixOrderX order)
 {
     if (order == MatrixOrderX.Prepend)
     {
         MatrixFP m = MatrixFP.Identity();
         m.RotateSkew(SingleFP.FromFloat(shearX), SingleFP.FromFloat(shearY));
         m.Multiply(matrix);
         matrix = m;
     }
     else
     {
         matrix.RotateSkew(SingleFP.FromFloat(shearX), SingleFP.FromFloat(shearY));
     }
 }
Beispiel #5
0
 public void Scale(float scaleX, float scaleY, MatrixOrderX order)
 {
     if (order == MatrixOrderX.Prepend)
     {
         MatrixFP m = MatrixFP.Identity();
         m.Scale(SingleFP.FromFloat(scaleX), SingleFP.FromFloat(scaleY));
         m.Multiply(matrix);
         matrix = m;
     }
     else
     {
         matrix.Scale(SingleFP.FromFloat(scaleX), SingleFP.FromFloat(scaleY));
     }
 }
Beispiel #6
0
 public void Rotate(float angle, MatrixOrderX order)
 {
     if (order == MatrixOrderX.Prepend)
     {
         MatrixFP m = MatrixFP.Identity();
         m.Rotate(MathFP.ToRadians(SingleFP.FromFloat(angle)));
         m.Multiply(matrix);
         matrix = m;
     }
     else
     {
         matrix.Rotate(MathFP.ToRadians(SingleFP.FromFloat(angle)));
     }
 }
Beispiel #7
0
 public void RotateAt(float angle, PointF point, MatrixOrderX order)
 {
     if (order == MatrixOrderX.Prepend)
     {
         MatrixFP m = MatrixFP.Identity();
         m.Translate(SingleFP.FromFloat(-point.X), SingleFP.FromFloat(-point.Y));
         m.Rotate(MathFP.ToRadians(SingleFP.FromFloat(angle)));
         m.Multiply(matrix);
         m.Translate(SingleFP.FromFloat(point.X), SingleFP.FromFloat(point.Y));
         matrix = m;
     }
     else
     {
         matrix.Translate(SingleFP.FromFloat(-point.X), SingleFP.FromFloat(-point.Y));
         matrix.Rotate(MathFP.ToRadians(SingleFP.FromFloat(angle)));
         matrix.Translate(SingleFP.FromFloat(point.X), SingleFP.FromFloat(point.Y));
     }
 }
Beispiel #8
0
 public void TranslateTransform(float dx, float dy, MatrixOrderX order)
 {
     matrix.Translate(dx, dy, order);
 }
Beispiel #9
0
 public void ScaleTransform(float sx, float sy, MatrixOrderX order)
 {
     matrix.Scale(sx, sy, order);
 }
Beispiel #10
0
 public void RotateTransform(float angle, MatrixOrderX order)
 {
     matrix.Rotate(angle, order);
 }
Beispiel #11
0
 public void MultiplyTransform(MatrixX matrix, MatrixOrderX order)
 {
     this.matrix.Multiply(matrix, order);
 }