I’ve got an array of points that include location information, as well as information that defines a geographical ellipse. Although I can plot the points via lat/lon, I’m not sure how to draw an ellipse with the data.

The data includes the following information, per point (which is the center of the ellipse):

Latitude

Longitude

Ellipse Bearing (bearing of the major axis of the ellipse from true north)

Major (width in meters of the ellipse along the major axis)

Minor (width in meters of the ellipse along the perpendicular axis)

Sample data set:

[{“lat”: 33.678265, “lon”: -86.337571, “bearing”: 76, “major”: 465, “minor”: 411},

{“lat”: 33.6779101, “lon”: -86.3448787, “bearing”: 130, “major”: 599, “minor”: 481}]

It would appear from what I’ve looked at online that there are two possible solutions…either calculate a polygon that emulates the ellipse, or to draw it with a library like DOJO. I’m not skilled at custom programming, and I’m wondering if someone could help me come up with a function that accomplishes either giving a polygon that I can add to the map to emulate the ellipse, or a function that utilizes DOJO to accurately draw the ellipse to scale on the map. Thank you for any suggestions.

Here's a Python implementation that should be mostly portable to JavaScript:

Helpful links:

The Most Marvelous Theorem in Mathematics

Parametric Equation of an Ellipse - Math Open Reference