[Proj] Area of a spherical polygon

Karney, Charles ckarney at Sarnoff.com
Wed Sep 22 12:24:24 EST 2010


> From: Karney, Charles
> Sent: Tuesday, September 21, 2010 16:45
>
> > From: Mikael Rittri [Mikael.Rittri at carmenta.com]
> > Sent: Tuesday, September 21, 2010 05:06
> >
> > There is an article
> >
> > Robert D. Miller, Computing the area of a spherical polygon, Graphic
> > Gems IV, chapter II.4, pages 132 - 137.
>
> Thanks for the pointer.  I have located the code that implements this
> algorithm at
>
> http://people.sc.fsu.edu/~jburkardt/cpp_src/geometry/geometry.html
>
> routine, sphere_polygon_area_3d, in geometry.C.  This uses L'Huilier's
> theorem.
>
> My expectation is that this will yield more accurate results than
> Miller's method.  I will benchmark both approaches...

I tested Miller's method for spherical areas (based on L'Huilier's
theorem) against my formula:

  tan(S12/2) = tan(lambda12/2) * ( tan(phi1/2) + tan(phi2/2) )
                           / ( 1 + tan(phi1/2) * tan(phi2/2) )

I used a sphere of radius 20.0e6/pi m and equilateral triangles of area
0.001 m^2 thru 1.0e11 m^2 (sides 48 mm thru 480 km) at a variety of
positions and orientations.  I did not use triangles which included a
pole because both methods need to be used with care in this case.  I
also fixed Miller's broken implementation of the haversine function.

The maximum absolute error in the area is

  Miller: 9.0e5 m^2 (approx 900 m square)
  Karney: 0.004 m^2 (approx 60 mm square)

--
Charles Karney <ckarney at sarnoff.com>
Sarnoff Corporation, Princeton, NJ 08543-5300

Tel: +1 609 734 2312
Fax: +1 609 734 2662



This message (and any attachments) contains Sarnoff proprietary information. Such information may be subject to the terms of confidentiality or other agreements. If you are not the named addressee, you should not disseminate, distribute, or copy this email. If you have received this email by mistake, please notify the sender immediately by email and delete this email from your system. If you are not the intended recipient, you are notified that disclosing, copying, distributing, or taking any action in reliance on the contents of this information is strictly prohibited.


More information about the Proj mailing list