Thanks so much! This is a nice approach, and good enough to use in my case (and seems to close the question as stated) but I am still hunting for a way to draw arcs of ellipses through intersection points. Perhaps I aught to make a new question, but I was hoping a fully general solution would also allow me to create figures like this:
#canvas({
import draw: *
circle((0,0), radius: (8, 4), name: "G")
circle((rel: (-6, 0.4), to: "G.center"), radius: 0.3, name: "A")
hide({
circle("A", radius: 3, name: "inner")
circle("A", radius: 4, name: "outer")
})
intersections("i", "G", "inner")
intersections("o", "G", "outer")
merge-path(
stroke: color.purple + 2pt,
fill: color.purple.transparentize(50%),
close: true,
{
arc-through("i.0", "inner.east", "i.1")
line("i.1", "o.1")
arc-through("o.1", "outer.east", "o.0")
line("o.0", "i.0")
}
)
})
In this case, it has been made with straight line interpolation, but this does not scale well to large radial segments (inner and outer radius 3 and 6 respectively).
Naturally this gets even worse if we cross the center of the ellipse.
If anyone has a solution that allows “highlighting” of arc segments between points, possibly by computing the angle of each intersection from the origin, then I would love to hear it.

