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

Gilles Sadowski commented on GEOMETRY-146:
------------------------------------------

{quote}I'm not sure if we can make this work well. We can definitely make it 
work, but without access to the private details of the data structures the 
EntrySetSelector interfaces would be left to iterate through the entire map in 
order to find the correct entries.
{quote}
You asked for a _usage_ example.
The {{EntrySet}} and {{EntrySetSelector}} interfaces mentioned above would 
define the public API. However the actual instance being returned can certainly 
be a private (non-static) inner class that retains all the necessary access to 
the {{PointMap}} data-structure in order to provide an efficient view.

I think that iteration order (ascending vs descending) should be build on top 
of any view (i.e. the result of a "selector").

> PointSet/Map closest points
> ---------------------------
>
>                 Key: GEOMETRY-146
>                 URL: https://issues.apache.org/jira/browse/GEOMETRY-146
>             Project: Commons Geometry
>          Issue Type: New Feature
>            Reporter: Matt Juntunen
>            Priority: Major
>             Fix For: 1.1
>
>
> Add methods to the new {{PointSet}} and {{PointMap}} interfaces to allow 
> querying of points in order of distance from a query point.
> {code:java}
> PointSet<P> {
>     // find the closest point to pt or null if empty 
>     P closest(P pt);
>     // iterate through points in order, with points closest to pt coming first
>     Iterable<P> closestFirst(P pt);
>     // find the farthest point from pt or null if emtpy
>     P farthest(P pt);
>     // iterate through point in order, with points farthest from pt coming 
> first
>     Iterable<P> farthestFirst(P pt);
> }
> {code}
> {{PointMap}} should have similar methods providing access to the map keys and 
> entries.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to