public PointF Untransform(PointF p, PointF origin) { if (!initialized) { return(p); } return(mapping.Forward(WorldToCalibrated(p, origin))); }
private void DrawDistortedLine(Graphics canvas, Pen pen, PointF a, PointF b, ProjectiveMapping projectiveMapping, DistortionHelper distorter, IImageToViewportTransformer transformer) { a = projectiveMapping.Forward(a); b = projectiveMapping.Forward(b); if (distorter != null && distorter.Initialized) { a = distorter.Distort(a); b = distorter.Distort(b); List <PointF> curve = distorter.DistortLine(a, b); List <Point> transformed = transformer.Transform(curve); canvas.DrawCurve(penEdges, transformed.ToArray()); } else { canvas.DrawLine(pen, transformer.Transform(a), transformer.Transform(b)); } }