-
Notifications
You must be signed in to change notification settings - Fork 199
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
getting one of the closest point for Closest::Indeterminate
#1167
Comments
I'm sorry but I don't understand your question. Can you try to rephrase it or give a more specific example? The docs for Indeterminate if you haven't seen them: https://docs.rs/geo/latest/geo/enum.Closest.html#variant.Indeterminate |
Sorry, some words got missing in my issue. When there is an "infinite number of closest points", is there a way a method that retrieves one of those? My real use case was:
extract from my code // licence: AGPLv3
let arp_pt = airport.to_point();
let Closest::SinglePoint(closest_point) = polygon.closest_point(&arp_pt) else {
panic!("no closest point")
};
let distance_m = arp_pt.haversine_distance(&closest_point) as usize; In case of of |
I'm wondering if we should get rid of the Here's where it's currently used in the euclidean implementation:
Arguably we could do something like: if line_length == F::zero() {
// if we've got a zero length line, technically the entire line
// is the closest point...
- return Closest::Indeterminate;
+ return Closest::SinglePoint(line.start_point());
} A more interesting third case would be to accumulate multiple points if there are multiple distinct points that are closest. |
There remains a need to handle empty geometries - so I guess Indeterminate is still useful there. We could express that case as Taking that, and the ability for multiple points to be closest, we could end up with something like:
Also, note that technically the If it's there to support higher dimension arguments like: That would entail further augmenting our return, since the closest thing might not be a point, but a contiguous segment (or a contiguous area if we're talking polygons). To be frank, I think we should get rid of the Rhs argument. Or if we go that route, rename the method to |
Hello, thanks for the great lib!
When using geo::algorithm::closest_point::ClosestPoint, is there a one of the closest point when the result is
Closest:: Indeterminate
? If definedThe text was updated successfully, but these errors were encountered: