[jira] [Commented] (LUCENE-8257) GeoComplexPolygon fails when points are near identical

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

[jira] [Commented] (LUCENE-8257) GeoComplexPolygon fails when points are near identical

JIRA jira@apache.org

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

ASF subversion and git services commented on LUCENE-8257:
---------------------------------------------------------

Commit 8b0ac122e652a48c77fab81ba17d3923db16a968 in lucene-solr's branch refs/heads/branch_6x from [~[hidden email]]
[ https://git-wip-us.apache.org/repos/asf?p=lucene-solr.git;h=8b0ac12 ]

LUCENE-8257: All edges have a backing plane, so edge membership doesn't bleed through to the opposite side of the world.


> GeoComplexPolygon fails when points are near identical
> ------------------------------------------------------
>
>                 Key: LUCENE-8257
>                 URL: https://issues.apache.org/jira/browse/LUCENE-8257
>             Project: Lucene - Core
>          Issue Type: Bug
>          Components: modules/spatial3d
>            Reporter: Ignacio Vera
>            Assignee: Karl Wright
>            Priority: Major
>         Attachments: LUCENE-8257.patch
>
>
> When a polygon have two consecutive points very close to each other but not numerically identical, we can get wrong results because planes defining that edge intersects somewhere else on the world. At that point the following check is evaluated to true:
> {code:java}
> if (edge.plane.evaluateIsZero(thePointX, thePointY, thePointZ) && edge.startPlane.isWithin(thePointX, thePointY, thePointZ) && edge.endPlane.isWithin(thePointX, thePointY, thePointZ)) {
>   return false;
> }{code}
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]