public Parser.TikzMatrix GetTikzToScreenTransform() { Parser.TikzMatrix AbsTikzToScreen = new Parser.TikzMatrix(); AbsTikzToScreen.m[0, 0] = View.Resolution; AbsTikzToScreen.m[1, 1] = -View.Resolution; AbsTikzToScreen.m[0, 2] = -View.Resolution * View.BB.X; AbsTikzToScreen.m[1, 2] = View.Resolution * (View.BB.Height + View.BB.Y); Parser.TikzMatrix total = AbsTikzToScreen * View.CoordinateTransform; return(total); }
public static double RotationFromMatrix(Parser.TikzMatrix M) { return(Math.Atan2(M.m[1, 0], M.m[0, 0])); }