public override void Draw2D(IMarkGeometryVisualizer2D view, bool shouldShowVertex) { // TODO : please review/optimize this solution // Is it a good idea to use Parallels here? //// stash the current offsets //view.PushOffset(); //view.AddOffset(Offset); int n = GeometricArithmeticModule.Max <int>(new int[] { Points.Count, Arcs.Count, Circles.Count, Lines.Count, Paths.Count }); for (int i = 0; i < n; i++) { if (i < Points.Count) { view.Draw2D(Points[i]); } if (i < Arcs.Count) { view.Draw2D(Arcs[i], shouldShowVertex); } if (i < Circles.Count) { view.Draw2D(Circles[i], shouldShowVertex); } if (i < Lines.Count) { view.Draw2D(Lines[i], shouldShowVertex); } if (i < Paths.Count) { view.Draw2D(Paths[i], shouldShowVertex); } } //// revert to previous offsets //view.PopOffset(); }
public override void Draw2D(IMarkGeometryVisualizer2D view, bool shouldShowVertex) { view.Draw2D( GeometricArithmeticModule.ToLines(Points), shouldShowVertex ); }
public override void Draw2D(IMarkGeometryVisualizer2D view, bool shouldShowVertex) { view.Draw2D(this, shouldShowVertex); }