From commits-return-3300-apmail-sis-commits-archive=sis.apache.org@sis.apache.org Thu Dec 19 14:39:25 2013
Return-Path:
X-Original-To: apmail-sis-commits-archive@www.apache.org
Delivered-To: apmail-sis-commits-archive@www.apache.org
Received: from mail.apache.org (hermes.apache.org [140.211.11.3])
by minotaur.apache.org (Postfix) with SMTP id EAD07105E4
for ; Thu, 19 Dec 2013 14:39:25 +0000 (UTC)
Received: (qmail 25041 invoked by uid 500); 19 Dec 2013 14:38:42 -0000
Delivered-To: apmail-sis-commits-archive@sis.apache.org
Received: (qmail 24854 invoked by uid 500); 19 Dec 2013 14:38:33 -0000
Mailing-List: contact commits-help@sis.apache.org; run by ezmlm
Precedence: bulk
List-Help:
List-Unsubscribe:
List-Post:
List-Id:
Reply-To: sis-dev@sis.apache.org
Delivered-To: mailing list commits@sis.apache.org
Received: (qmail 24669 invoked by uid 500); 19 Dec 2013 14:38:25 -0000
Delivered-To: apmail-incubator-sis-commits@incubator.apache.org
Received: (qmail 24474 invoked by uid 99); 19 Dec 2013 14:38:11 -0000
Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28)
by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 19 Dec 2013 14:38:11 +0000
Date: Thu, 19 Dec 2013 14:38:11 +0000 (UTC)
From: "Martin Desruisseaux (JIRA)"
To: sis-commits@incubator.apache.org
Message-ID:
In-Reply-To:
References:
Subject: [jira] [Updated] (SIS-155) Area calculation on ellipsoid
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394
[ https://issues.apache.org/jira/browse/SIS-155?page=3Dcom.atlassian.j=
ira.plugin.system.issuetabpanels:all-tabpanel ]
Martin Desruisseaux updated SIS-155:
------------------------------------
Description:=20
We need a method for calculating the area inside a polygon on the ellipsoid=
. Some useful references:
* [Algorithm to find the area of a polygon|http://www.mathopenref.com/coord=
polygonarea2.html] in Cartesian coordinate system.
* [Ellipsoidal area computations of large terrestrial objects|http://www.ge=
odyssey.com/papers/ggelare.html]
* [Some algorithms for polygons on a sphere|http://trs-new.jpl.nasa.gov/dsp=
ace/bitstream/2014/40409/3/JPL%20Pub%2007-3%20%20w%20Errata.pdf]
* [Addenda for C. F. F. Karney, Algorithms for Geodesics|http://geographicl=
ib.sourceforge.net/geod-addenda.html]
This algorithm for Cartesian coordinate system can be adapted to spherical =
coordinate systems by replacing the area sum by (note that this replacement=
uses vertical strips instead than horizontal ones):
{code:java}
s +=3D (=CE=BB2 - =CE=BB1) * (2 + sin(=CF=861) + sin(=CF=862));
{code}
and the final answer by:
{code:java}
area =3D abs(s * r=C2=B2 / 2);
{code}
The _r_ value could be approximated to the authalic radius (the radius of a=
hypothetical sphere having the same surface than the ellipsoid). However t=
he _Ellipsoidal Area Computations of Large Terrestrial Objects_ article see=
ms to use a more local approximation, where _a_ and _b_ are semi-major and =
semi-minor axis lengths:
{code:java}
s =3D sin(=CF=86)
c =3D cos(=CF=86)
r =3D (a=C2=B2b) / (a=C2=B2c=C2=B2 + b=C2=B2s=C2=B2)
{code}
This task is for writing down some ideas. We probably need to read the abov=
e-cited article and other internet resources more carefully. In particular =
we need some more analytical analysis for determining how [rhumb lines|http=
://en.wikipedia.org/wiki/Rhumb_line] are handled in the above-cited resourc=
es. This would affect polygon segments of more than 100 km.
was:
We need a method for calculating the area inside a polygon on the ellipsoid=
. Some useful references:
* [Algorithm to find the area of a polygon|http://www.mathopenref.com/coord=
polygonarea2.html] in Cartesian coordinate system.
* [Ellipsoidal area computations of large terrestrial objects|http://www.ge=
odyssey.com/papers/ggelare.html]
* [Some algorithms for polygons on a sphere|http://trs-new.jpl.nasa.gov/dsp=
ace/bitstream/2014/40409/3/JPL%20Pub%2007-3%20%20w%20Errata.pdf]
This algorithm for Cartesian coordinate system can be adapted to spherical =
coordinate systems by replacing the area sum by (note that this replacement=
uses vertical strips instead than horizontal ones):
{code:java}
s +=3D (=CE=BB2 - =CE=BB1) * (2 + sin(=CF=861) + sin(=CF=862));
{code}
and the final answer by:
{code:java}
area =3D abs(s * r=C2=B2 / 2);
{code}
The _r_ value could be approximated to the authalic radius (the radius of a=
hypothetical sphere having the same surface than the ellipsoid). However t=
he _Ellipsoidal Area Computations of Large Terrestrial Objects_ article see=
ms to use a more local approximation, where _a_ and _b_ are semi-major and =
semi-minor axis lengths:
{code:java}
s =3D sin(=CF=86)
c =3D cos(=CF=86)
r =3D (a=C2=B2b) / (a=C2=B2c=C2=B2 + b=C2=B2s=C2=B2)
{code}
This task is for writing down some ideas. We probably need to read the abov=
e-cited article and other internet resources more carefully. In particular =
we need some more analytical analysis for determining how [rhumb lines|http=
://en.wikipedia.org/wiki/Rhumb_line] are handled in the above-cited resourc=
es. This would affect polygon segments of more than 100 km.
> Area calculation on ellipsoid
> -----------------------------
>
> Key: SIS-155
> URL: https://issues.apache.org/jira/browse/SIS-155
> Project: Spatial Information Systems
> Issue Type: New Feature
> Components: Referencing
> Affects Versions: 0.3
> Reporter: Martin Desruisseaux
>
> We need a method for calculating the area inside a polygon on the ellipso=
id. Some useful references:
> * [Algorithm to find the area of a polygon|http://www.mathopenref.com/coo=
rdpolygonarea2.html] in Cartesian coordinate system.
> * [Ellipsoidal area computations of large terrestrial objects|http://www.=
geodyssey.com/papers/ggelare.html]
> * [Some algorithms for polygons on a sphere|http://trs-new.jpl.nasa.gov/d=
space/bitstream/2014/40409/3/JPL%20Pub%2007-3%20%20w%20Errata.pdf]
> * [Addenda for C. F. F. Karney, Algorithms for Geodesics|http://geographi=
clib.sourceforge.net/geod-addenda.html]
> This algorithm for Cartesian coordinate system can be adapted to spherica=
l coordinate systems by replacing the area sum by (note that this replaceme=
nt uses vertical strips instead than horizontal ones):
> {code:java}
> s +=3D (=CE=BB2 - =CE=BB1) * (2 + sin(=CF=861) + sin(=CF=862));
> {code}
> and the final answer by:
> {code:java}
> area =3D abs(s * r=C2=B2 / 2);
> {code}
> The _r_ value could be approximated to the authalic radius (the radius of=
a hypothetical sphere having the same surface than the ellipsoid). However=
the _Ellipsoidal Area Computations of Large Terrestrial Objects_ article s=
eems to use a more local approximation, where _a_ and _b_ are semi-major an=
d semi-minor axis lengths:
> {code:java}
> s =3D sin(=CF=86)
> c =3D cos(=CF=86)
> r =3D (a=C2=B2b) / (a=C2=B2c=C2=B2 + b=C2=B2s=C2=B2)
> {code}
> This task is for writing down some ideas. We probably need to read the ab=
ove-cited article and other internet resources more carefully. In particula=
r we need some more analytical analysis for determining how [rhumb lines|ht=
tp://en.wikipedia.org/wiki/Rhumb_line] are handled in the above-cited resou=
rces. This would affect polygon segments of more than 100 km.
--
This message was sent by Atlassian JIRA
(v6.1.4#6159)