Fix GetMinDistance
This commit is contained in:
parent
a3dd9c3e57
commit
1c80584206
@ -143,19 +143,25 @@ class StaticRTree
|
|||||||
return 0.;
|
return 0.;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const FixedPointCoordinate upper_left(max_lat, min_lon);
|
||||||
|
const FixedPointCoordinate upper_right(max_lat, max_lon);
|
||||||
|
const FixedPointCoordinate lower_right(min_lat, max_lon);
|
||||||
|
const FixedPointCoordinate lower_left(min_lat, min_lon);
|
||||||
|
|
||||||
float min_dist = std::numeric_limits<float>::max();
|
float min_dist = std::numeric_limits<float>::max();
|
||||||
min_dist = std::min(min_dist,
|
min_dist = std::min(min_dist,
|
||||||
FixedPointCoordinate::ApproximateEuclideanDistance(
|
FixedPointCoordinate::ComputePerpendicularDistance(
|
||||||
location.lat, location.lon, max_lat, min_lon));
|
upper_left, upper_right, location));
|
||||||
min_dist = std::min(min_dist,
|
min_dist = std::min(min_dist,
|
||||||
FixedPointCoordinate::ApproximateEuclideanDistance(
|
FixedPointCoordinate::ComputePerpendicularDistance(
|
||||||
location.lat, location.lon, max_lat, max_lon));
|
upper_right, lower_right, location));
|
||||||
min_dist = std::min(min_dist,
|
min_dist = std::min(min_dist,
|
||||||
FixedPointCoordinate::ApproximateEuclideanDistance(
|
FixedPointCoordinate::ComputePerpendicularDistance(
|
||||||
location.lat, location.lon, min_lat, max_lon));
|
lower_right, lower_left, location));
|
||||||
min_dist = std::min(min_dist,
|
min_dist = std::min(min_dist,
|
||||||
FixedPointCoordinate::ApproximateEuclideanDistance(
|
FixedPointCoordinate::ComputePerpendicularDistance(
|
||||||
location.lat, location.lon, min_lat, min_lon));
|
lower_left, upper_left, location));
|
||||||
|
|
||||||
return min_dist;
|
return min_dist;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -163,10 +169,10 @@ class StaticRTree
|
|||||||
{
|
{
|
||||||
float min_max_dist = std::numeric_limits<float>::max();
|
float min_max_dist = std::numeric_limits<float>::max();
|
||||||
// Get minmax distance to each of the four sides
|
// Get minmax distance to each of the four sides
|
||||||
FixedPointCoordinate upper_left(max_lat, min_lon);
|
const FixedPointCoordinate upper_left(max_lat, min_lon);
|
||||||
FixedPointCoordinate upper_right(max_lat, max_lon);
|
const FixedPointCoordinate upper_right(max_lat, max_lon);
|
||||||
FixedPointCoordinate lower_right(min_lat, max_lon);
|
const FixedPointCoordinate lower_right(min_lat, max_lon);
|
||||||
FixedPointCoordinate lower_left(min_lat, min_lon);
|
const FixedPointCoordinate lower_left(min_lat, min_lon);
|
||||||
|
|
||||||
min_max_dist = std::min(
|
min_max_dist = std::min(
|
||||||
min_max_dist,
|
min_max_dist,
|
||||||
|
Loading…
Reference in New Issue
Block a user