The Math Forum

Ask Dr. Math - Questions and Answers from our Archives
Associated Topics || Dr. Math Home || Search Dr. Math

Great Circle Parametric Equation

Date: 05/25/98 at 09:45:23
From: Gavin Lotter
Subject: Spherical geometry and great circles

I suppose that my question could be phrased in a number of ways:

 What is the formula for a great circle on the surface of a sphere?

  Given two points of longitude and latitude, how can I determine 
  the point that divides the length of the subsequent arc into two 
  equal arcs?

Some head scratching, while pondering over the formulae used for
finding the length of an arc between two points on a sphere, has led
me nowhere. What I really want to do, on a computer, is draw the arc
of a great circle on a sphere, and to do that I need to be able to
calculate the points between the two endpoints.

I know how to calculate the angle subtended by the arc, and then the 
shortest distance between two points along the arc, but how do I 
determine what points actually lie on the arc?

Thanks so much for the help. My spherical geometry is at best a
little sketchy.

Date: 05/26/98 at 08:14:27
From: Doctor Jerry
Subject: Re: Spherical geometry and great circles

Hi Gavin,

Here's one way to do what you want. Start with the spherical 
coordinates of two points (a,p1,t1) and (a,p2,t2) on the earth. Here, 
a is the radius of the (assumed to be) spherical earth, p1 and p2 are 
co-latitudes, and t1 and t2 are measured from Greenwich all the way 
around, from 0 to 2pi.

Convert these to rectangular coordinates (x1,y1,z1) and (x2,y2,z2) 
using the usual spherical to rectangular conversion formulas.

The points (x1,y1,z1) and (x2,y2,z2), together with the center of the 
sphere, determine a plane that cuts the sphere in the great circle of 

Any point r on the line joining (x1,y1,z1) and (x2,y2,z2) can be 
written in the form (I'm thinking in terms of vectors):

   r = {x,y,z} = {x1,y1,z1} + t[{x2,y2,z2} - {x1,y1,z1}]     

What we want, given t in [0,1], is a number g(t), such that the length 
of g(t)*r is a. Solve this equation for g(t). Then g(t)*r is a point 
on the great circle.

-Doctor Jerry,  The Math Forum
Check out our web site!   
Associated Topics:
College Calculus
College Higher-Dimensional Geometry
High School Calculus
High School Higher-Dimensional Geometry

Search the Dr. Math Library:

Find items containing (put spaces between keywords):
Click only once for faster results:

[ Choose "whole words" when searching for a word like age.]

all keywords, in any order at least one, that exact phrase
parts of words whole words

Submit your own question to Dr. Math

[Privacy Policy] [Terms of Use]

Math Forum Home || Math Library || Quick Reference || Math Forum Search

Ask Dr. MathTM
© 1994- The Math Forum at NCTM. All rights reserved.