[
https://issues.apache.org/jira/browse/LUCENE-8583?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16706270#comment-16706270
]
Robert Muir commented on LUCENE-8583:
-------------------------------------
And maybe it should be moved back to a private method in Polygon2D where it was
originally? I think there is a danger in making such methods public, then we
feel the need to cater to every use-case and stuff gets slow. I'd like for the
Polygon2D stuff to stay fast for finding points within a polygon.
> Make GeoUtils#orientation method more stable
> --------------------------------------------
>
> Key: LUCENE-8583
> URL: https://issues.apache.org/jira/browse/LUCENE-8583
> Project: Lucene - Core
> Issue Type: Improvement
> Components: core/other
> Reporter: Ignacio Vera
> Priority: Major
> Attachments: LUCENE-8583.patch
>
>
> The method GeoUtils#orient is problematic when called with points that are
> almost collinear but not quite. In that case the sign of the determinant is
> not reliable, so for example calling the method with points (a, b, c) and
> with (c, b, a) gives the same orientation.
> There is a complex implementation described here
> (https://www.cs.cmu.edu/~quake/robust.html) where the method becomes more
> reliable. I have been playing with such implementation and still is not 100%
> reliable.
> My proposal is not to be fully precise and define a precision constant for
> this method. Therefore whenever the value of determinant is small to that
> precision, we consider the points to be collinear. In this case the results
> of the method are reliable.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]