You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
unless I am mistaken, gonum/plot doesn't expose primitives to draw ellipses nor arcs of ellipses. vg.Path exposes a vg.ArcComp but that's only to draw a circular arc.
one can of course draw an ellipse with a combination of vg.CurveComp (quad or cubic ones), according to that paper: Drawing an elliptical arc using polylines, quadratic or cubic Bezier curves", L. Maisonobe
I've already provided such an implementation for Gio.
I could probably provide one for gonum/plot as well.
I'd propose to put it into vg/draw:
package draw
// EArc adds an elliptical arc to the path. The implied ellipse is defined// by its focus points f1 and f2.// The arc starts in the current point and ends angle radians along the ellipse boundary.// The sign of angle determines the direction; positive being counter-clockwise,// negative clockwise.// If path is nil, a new path is created.funcEArc(path*vg.Path, f1, f2 vg.Point, anglefloat64) { ... }
Activity
sbinet commentedon Oct 26, 2020
note that we could also provide other readily usable primitives:
filled or stroked.
some of these primitives could probably already be re-used by a few
plot/plotter.