private Point Translate(Point e) { Matrix m = new Matrix(1, 0, 0, 1, 0, 0); m.Scale(Magnification, Magnification); m.Invert(); Point[] p = new Point[] { e }; m.TransformPoints(p); p[0].Offset(OffsetX, OffsetY); return p[0]; }