Implementation Spherical Polygon Area Computation

From BemlarGroup

Jump to: navigation, search

05/17/2008

With the longitude and latitude of several points available, we can create a polygon and compute the area inside the polygon. Note that, here I only consider simple polygons (convex or concave) but excluding complex ones that cross itself.

Step 1: Transform longitude and latitude into 3-D Euclidean space coordinate. The earth is approximated consider a sphere. The origin of the sphere is the center of the earth and it set to be O = (0, 0, 0). The transformation is done using plane trignometry with longitude and latitude treated as angles.

Step 2. Taking three points on a sphere, say A , B and C, we want to compute the area of this spherical triangle. First, consider the the angle between two vectors, OA and OB, may be computed using the cosine formula in plane trignometry. The computation of all three angles yields results of excess. With the excess avaialble, a sherical triangle can be computed Using L'Huilier's Formula in spherical trignometry. (See Paul R Rider 1959 page 200.)

Step 3. Area of a spherical trapezoid can be computed by obtain triangle area based on step 2. Taking a reference line using the minimum z coordinate, a concave polygon can be decomposed to trapezoids and computed. (See PPT reference by Chamberlain and Duquette for a 2-D demonstration.)

Personal tools