[
https://issues.apache.org/jira/browse/LUCENE-8364?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16518292#comment-16518292
]
Nicholas Knize commented on LUCENE-8364:
----------------------------------------
Initial patch provides:
* Refactor {{Polygon2D}} into a more descriptive {{GeoEdgeTree}} class (the end
objective will be to make this package private and limit to computing relations
between shapes)
* New {{Circle}} class for encapsulating point distance computations.
* Refactor {{Predicate}} out of {{GeoEncodingUtils}} into its own standalone
package private base class
* Refactor {{DistancePredicate}} out of {{GeoEncodingUtils}} into new
{{Circle}} class
* Refactor {{PolygonPredicate}} out of {{GeoEncodingUtils}} into {{Polygon}}
class
* New {{Geometry}} interface and {{Shape}} class for providing a {{.relate}}
method for computing relation between derived shapes with bounding boxes
* Removed unused {{GeoRelationUtils}} utility class
* Updated and added testing for new and existing geometries along with
relations with bounding boxes
> Refactor and clean up core geo api
> ----------------------------------
>
> Key: LUCENE-8364
> URL: https://issues.apache.org/jira/browse/LUCENE-8364
> Project: Lucene - Core
> Issue Type: Improvement
> Reporter: Nicholas Knize
> Priority: Major
> Attachments: LUCENE-8364.patch
>
>
> The core geo API is quite disorganized and confusing. For example there is
> {{Polygon}} for creating an instance of polygon vertices and holes and
> {{Polygon2D}} for computing relations between points and polygons. There is
> also a {{PolygonPredicate}} and {{DistancePredicate}} in {{GeoUtils}} for
> computing point in polygon and point distance relations, respectively, and a
> {{GeoRelationUtils}} utility class which is no longer used for anything. This
> disorganization is due to the organic improvements of simple {{LatLonPoint}}
> indexing and search features and a little TLC is needed to clean up api to
> make it more approachable and easy to understand.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]