TransformationMatrix
Representerar 3x3 transformationsmatris | AB 0 | | CD 0 | | TX TY 1 |. Transformerar koordinater på följande sätt: x1 = Ax + Cy + TX; y1 = Bx + Dy + TY.
public class TransformationMatrix : ICloneable
Konstruktörer
| namn | Beskrivning |
|---|
| TransformationMatrix() | Skapar standard 1 till 1 transformationsmatris: [ ABCD TX TY ] = [ 1, 0, 0, 1, 0, 0]. |
| TransformationMatrix(double[]) | Accepterar en transformationsmatris med följande arrayrepresentation: [ ABCD TX TY ]. |
Egenskaper
| namn | Beskrivning |
|---|
| A { get; set; } | Hämtar eller ställer in ett transformationsmatrisvärde. |
| B { get; set; } | Hämtar eller sätter B-transformationsmatrisvärdet. |
| C { get; set; } | Hämtar eller ställer in C-transformationsmatrisvärdet. |
| D { get; set; } | Hämtar eller ställer in D-transformationsmatrisvärdet. |
| Item { get; } | Ger tillgång till underliggande array. |
| TX { get; set; } | Hämtar eller ställer in TX-transformationsmatrisvärdet. |
| TY { get; set; } | Hämtar eller ställer in TY-transformationsmatrisvärdet. |
Metoder
| namn | Beskrivning |
|---|
| Multiply(TransformationMatrix) | Multiplicerar med en annan transformationsmatris. Ändrar inte den ursprungliga transformationsmatrisen, returnerar ett nytt TransformationMatrix-objekt. |
| Scale(double, double, out double, out double) | Skalar x och y med transformationsmatrisen: x1 = Ax + Cy; y1 = Bx + Dy. |
| ToArray() | Allokerar ny array, kopierar transformationsmatrisen och returnerar den. |
| Transform(double, double, out double, out double) | Transformerar x och y med transformationsmatrisen: x1 = Ax + Cy + TX; y1 = Bx + Dy + TY. |
| UnScale(double, double, out double, out double) | Skalar tillbaka x1 och y1 och returnerar x och y före transformationsmatrisen. |
| UnTransform(double, double, out double, out double) | Transformerar tillbaka x1 och y1 och returnerar x och y före transformationsmatrisen. |
Se även