public static Line ReverseTransform(this ITransformation transformation, Line line) { return new Line { Start = transformation.ReverseTransform(line.Start), Finish = transformation.ReverseTransform(line.Finish) }; }
public static IEnumerable<Line> GetLines(this IFrameable frameable) { var lines = new List<Line>(); var tracePoints = frameable.TracePoints; for (var i = 1; i < tracePoints.Length; i++) { var start = tracePoints[i - 1]; var finish = tracePoints[i]; if (!finish.Trace) { continue; } var line = new Line(start.Point, finish.Point); lines.Add(line); } return lines .Select(line => frameable.Transformation.ReverseTransform(line)); ; }
public LineViewModel(Line line) { Line = line; }