You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Nicholas Knize (JIRA)" <ji...@apache.org> on 2015/12/29 15:15:49 UTC

[jira] [Updated] (LUCENE-6951) GeoPointInPolygonQuery can be improved

     [ https://issues.apache.org/jira/browse/LUCENE-6951?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Nicholas Knize updated LUCENE-6951:
-----------------------------------
    Attachment: LUCENE-6951.patch

Patch includes:

* Updated line crossing algorithm to use point orientation
* Updated GPTQ ConstantScoreWrapper MultiValue check to add doc when 1 point is found within the poly - avoids superflous pip checking if the doc is already a match
* Tests indicate up to 45% boost in GeoPointInPolygonQuery performance

> GeoPointInPolygonQuery can be improved
> --------------------------------------
>
>                 Key: LUCENE-6951
>                 URL: https://issues.apache.org/jira/browse/LUCENE-6951
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Nicholas Knize
>         Attachments: LUCENE-6951.patch
>
>
> {{GeoRelationutils}} uses a basic algebraic approach for computing if (and where) a rectangle crosses a polygon by checking the line segments of both the polygon and rectangle. The current suboptimal line crossing approach can be greatly improved by exploiting the orientation of the lines and endpoints. If the endpoints of one line are on different "sides" of the line segment then  the two may cross. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org