public void RotateQuadrants() { var matrix = new Matrix (); Action<double, double, double, double, double> prove = (angle, m11, m12, m21, m22) => { matrix.SetIdentity (); matrix.Rotate (angle); CheckMatrix (new Matrix (m11, m12, m21, m22, 0, 0), matrix); }; prove (90, 0, 1, -1, 0); prove (-90, 0, -1, 1, 0); prove (180, -1, 0, 0, -1); prove (-180, -1, 0, 0, -1); prove (270, 0, -1, 1, 0); prove (-270, 0, 1, -1, 0); prove (0, 1, 0, 0, 1); prove (360, 1, 0, 0, 1); prove (-360, 1, 0, 0, 1); prove (360 + 90, 0, 1, -1, 0); }
public void Rotate () { var m = new Matrix (1, 2, 3, 4, 5, 6); m.Rotate (33); CheckMatrix (new Matrix (2.47258767299051, 3.85589727595096, 1.97137266882125, 2.26540420175164, 5, 6), m); }
public void Rotate() { var m = Matrix.Identity; m.Rotate (45); CheckMatrix (new Matrix (0.707106781186548, 0.707106781186547, -0.707106781186547, 0.707106781186548, 0, 0), m); m = new Matrix (1, 2, 3, 4, 5, 6); m.Rotate (33); CheckMatrix (new Matrix (-0.25060750208463, 2.22198017090588, 0.337455563776164, 4.98859937682678, 0.925518629636958, 7.75521858274768), m); }