GPS Distance calculator

I would like to make a project that caclulates a distance between two GPS coordinates. Ideally it would record a first location (calibration) and then with a simple button log a different gps coordinate and display the distance difference. I would like to store a number of locations so I could plot a number of points relative to the calibrated start point.

Does anyone know of a similar project or component recommndations.

thanks

http://en.wikipedia.org/wiki/Great-circle_distance

if distances are small, and in hilly terrain, you need lat/lon and elevation at each point.

Lots of code 'round the 'net for this math.

The TinyGPS library for Arduino has a great circle distance function built in. Beware that the Arduino environment does not support double precision floating point calculations, so a lot of the available GPS code will not work properly within that framework.

I have a plain C version of TinyGPS for implementation on other processors. It stores GPS coordinates as long integers in units of degrees times 10^6, thus avoiding the issue with type “double” (to some extent).