Geometry – Points on an Ellipse

conic sectionsgeometry

For an app, I want to equally distribute a certain number of points on the perimeter of a known ellipse, and, to draw them, I need to know, for every point, the angle of the line that connects it to the center of the ellipse.

Here is an horrible drawing of what I must achieve: number of the points is known, distance of the points on the ellipse is constant (or at least should be) but unknown (well, it is circumference/number of points), horizontal and vertical radiuses are known, I look for the angles a0-an

ellipse

I already know that this is a not easy problem, that does not have a finite solution. The fact is that I don't need perfection in the points distribution, but I need speed in the calculation of the positioning.

Is there a way or an easy formula that approximates the real solution? Some altorithm that makes it possible to be implemented?

Thank you in advance.

Best Answer

For a small eccentricity $e$,

\begin{align*} e^2 &= 1-\frac{b^2}{a^2}\\ \theta(t) &= t+\left( \frac{e^2}{8}+\frac{e^4}{16}+\frac{71e^6}{2048} \right) \sin 2t+ \left( \frac{5e^4}{256}+\frac{5e^6}{256} \right) \sin 4t+ \frac{29e^6}{6144} \sin 6t+O(e^{8}) \\ \begin{bmatrix} x \\ y \end{bmatrix} &= \begin{bmatrix} a\cos \theta(t) \\ b\sin \theta(t) \end{bmatrix} \end{align*}

the arclength spacing is approximately equal for uniform spacing of $t\in [0,2\pi]$.

enter image description here

See also my newer post here.

Related Question