[jira] [Commented] (GEOMETRY-100) Invalid result for small spherical polygons

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Commented] (GEOMETRY-100) Invalid result for small spherical polygons

Phil Steitz (Jira)

    [ https://issues.apache.org/jira/browse/GEOMETRY-100?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17153616#comment-17153616 ]

Baljit Singh commented on GEOMETRY-100:
---------------------------------------

I'm a little reluctant to the usage of Euclidean approximation. I think it will just hide the real underlying issue. Also, we will have to be careful with singularities (i.e. poles, antimeridian).

That said, I think the second option could work, but only work if summing the side length of the outer most polygon ring. For polygons with holes, this could be an issue. For example, I can make a small polygon, and makes many small holes inside it. Including the inner sides may inflate the test value/metric.

> Invalid result for small spherical polygons
> -------------------------------------------
>
>                 Key: GEOMETRY-100
>                 URL: https://issues.apache.org/jira/browse/GEOMETRY-100
>             Project: Apache Commons Geometry
>          Issue Type: Bug
>            Reporter: Baljit Singh
>            Priority: Blocker
>             Fix For: 1.0
>
>
> h2. First test case: small spherical rectangle
> * Precision/Tolerance: {{EpsilonDoublePrecisionContext[epsilon= 1.5696101377226165E-12]}}
> * Spherical polygon/rectangle vertices: {{[(5.050647792392463, 0.8263048984534946), (5.050644504477406, 0.8263064367456399), (5.050649564478115, 0.8263123289902004), (5.050652852378331, 0.8263107907013917)]}}
> h4. Centroid:
> * Expected (approximately the average of vertices): {{(5.050648678475973, 0.8263086112510253)}}
> * Actual: {{(5.0506454742491504, 0.8263177505886343)}}
> The difference looks small, however, the actual result is outside the polygon.
> h4. Area (size):
> * Expected: 2.0005645375711432E-11
> * Actual: 1.9971579945377016E-11
> h4. Perimeter (boundary size):
> * Expected: 1.9679779440894825E-5
> * Actual: 1.96697104639384E-5
> h2. Second test case: small circular (sphere) polygon
> * Precision/Tolerance: {{EpsilonDoublePrecisionContext[epsilon= 1.5696101377226165E-12]}}
> * Circle discretized with 100 vertices: center: {{(0.5410520681182421, 1.3962634015954636)}}, radius: {{4.784171699778536E-8}}
> h4. Centroid:
> * Expected (approximately circle center): {{(0.5410520681182421, 1.3962634015954636)}}
> * Actual: {{null}}
> h4. Area (size):
> * Expected: 7.181590857887451E-15
> * Actual: 0.0
> h4. Perimeter (boundary size):
> * Expected: 3.0054894917112657E-7
> * Actual: 3.005489492811408E-7



--
This message was sent by Atlassian Jira
(v8.3.4#803005)