# Drawing a Great Circle between two given points on Earth

I need to draw a great circle arc between two latitude and longitude points.

For sake of example we will use the coordinates for LAX and JFK.

• JFK is 40.64°N / 73.78°W
• LAX is 33.94°N / 118.41°W

My function for drawing an arc requires me to get:

• The center point of the circle.
• The radius of the circle.
• The start angle of the circle.
• The end angle of the circle.

By definitions here, I can figure out every point on the arc. I'm just having a hard time figuring out how to find those 4 particular variables.

-
The great circle is a 3D thing. So, in order to fully specify it (or draw it), you need some 3D information. Specifically, you need a 3D coordinate system, or two 3D vectors (to be used as X and Y axes), or something like that. The terms "start angle" and "end angle" don't make sense unless you have some reference coordinate axes. – bubba Jan 6 '13 at 4:40
If you have a choice, the easiest coordinate system to use is the one whose origin is the center of the earth, with X-axis passing through JFK. Then center is known, radius = radius of earth, start angle = 0, and end angle is easy to compute. – bubba Jan 6 '13 at 4:44
(Google says the radius of the Earth is 6378.1 km) – Eric Stucky Jan 6 '13 at 4:58
The page I posted doesn't say anything about it being a "3D thing". Additionally the start / end angle where the circle will stop drawing. For instance if I defined the start as 0 and the end as 90 you would see the top right of the circle. – endy Jan 6 '13 at 5:07
The great circle is not a "3D thing". I don't understand what you mean by 3D points. The great circle's purpose is to show the shortest path between two points on the globe. The Z axis does not change the shortest path and therefore does not effect the great circle. – endy Jan 6 '13 at 7:36