mirror of https://github.com/CGAL/cgal
drop 'continuous_'
This commit is contained in:
parent
d717a0317b
commit
8896b77d6b
|
|
@ -30,9 +30,9 @@ The Fréchet distance is a metric and hence two polylines that are equal (disreg
|
|||
|
||||
The package provides one function to approximate the Fréchet distance and one function to decide whether the Fréchet distance is at most a given value.
|
||||
|
||||
The function `continuous_Frechet_distance()` computes an approximation of the Fréchet distance between two polylines,
|
||||
The function `Frechet_distance()` computes an approximation of the Fréchet distance between two polylines,
|
||||
up to a given approximation error. It returns an interval.
|
||||
The function `continuous_Frechet_distance_less_than()` decides if the Fréchet distance
|
||||
The function `Frechet_distance_less_than()` decides if the Fréchet distance
|
||||
between two polylines is smaller than a given bound.
|
||||
|
||||
Both functions have as template parameter a traits class defining the dimension and the point type.
|
||||
|
|
@ -50,13 +50,13 @@ the algorithm switches to the usage of square root extensions.
|
|||
|
||||
\subsection subsecFrechetDistanceFirstExample Decision for 2D Polylines
|
||||
|
||||
The following example shows how we can use `continuous_Frechet_distance_less_than()` to decide whether the Fréchet distance between two polylines in the Euclidean plane is at most a given value.
|
||||
The following example shows how we can use `Frechet_distance_less_than()` to decide whether the Fréchet distance between two polylines in the Euclidean plane is at most a given value.
|
||||
|
||||
\cgalExample{Frechet_distance/Frechet_distance_2.cpp}
|
||||
|
||||
\subsection subsecFrechetDistanceSecondExample Distance Computation for 3D Polylines
|
||||
|
||||
The following example shows how we can compute the Fréchet distance up to a given precision on two polylines in 3-dimensional Euclidean space using `continuous_Frechet_distance()`.
|
||||
The following example shows how we can compute the Fréchet distance up to a given precision on two polylines in 3-dimensional Euclidean space using `Frechet_distance()`.
|
||||
|
||||
\cgalExample{Frechet_distance/Frechet_distance_3.cpp}
|
||||
|
||||
|
|
|
|||
|
|
@ -39,6 +39,6 @@ This package ....
|
|||
- `CGAL::Frechet_distance_traits_d`
|
||||
|
||||
\cgalCRPSection{Functions}
|
||||
- `CGAL::continuous_Frechet_distance()`
|
||||
- `CGAL::continuous_Frechet_distance_less_than()`
|
||||
- `CGAL::Frechet_distance()`
|
||||
- `CGAL::Frechet_distance_less_than()`
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ using Point = Traits::Point;
|
|||
int main(int argc, char* argv[])
|
||||
{
|
||||
std::vector<Point> A, B;
|
||||
bool res = CGAL::continuous_Frechet_distance_less_than<Traits>(A, B, 0.001);
|
||||
bool res = CGAL::Frechet_distance_less_than<Traits>(A, B, 0.001);
|
||||
std::cout << std::boolalpha << res << std::endl;
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ using Point = Traits::Point;
|
|||
int main(int argc, char* argv[])
|
||||
{
|
||||
std::vector<Point> A, B;
|
||||
std::pair<double> res = CGAL::continuous_Frechet_distance<Traits>(A, B, 0.000001);
|
||||
std::pair<double> res = CGAL::Frechet_distance<Traits>(A, B, 0.000001);
|
||||
std::cout << "The Frechet distance between the polylines is between " << res.first << " and " << res.second << std::endl;
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,6 +12,6 @@ using Point = Traits::Point;
|
|||
int main(int argc, char* argv[])
|
||||
{
|
||||
std::vector<Point> A, B;
|
||||
bool res = CGAL::continuous_Frechet_distance_less_than<Traits>(A, B, 0.001);
|
||||
bool res = CGAL::Frechet_distance_less_than<Traits>(A, B, 0.001);
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ namespace CGAL
|
|||
* with `Traits::Point` as value type.
|
||||
*/
|
||||
template < class Traits, class PointRange>
|
||||
bool continuous_Frechet_distance_less_than(const PointRange& polyline1,
|
||||
bool Frechet_distance_less_than(const PointRange& polyline1,
|
||||
const PointRange& polyline2,
|
||||
const double distance,
|
||||
const Traits& traits = Traits())
|
||||
|
|
@ -67,7 +67,7 @@ bool continuous_Frechet_distance_less_than(const PointRange& polyline1,
|
|||
* with `Traits::Point` as value type.
|
||||
*/
|
||||
template <class Traits,class PointRange>
|
||||
std::pair<double,double> continuous_Frechet_distance(const PointRange& polyline1,
|
||||
std::pair<double,double> Frechet_distance(const PointRange& polyline1,
|
||||
const PointRange& polyline2,
|
||||
const double precision,
|
||||
const Traits& traits = Traits())
|
||||
|
|
|
|||
|
|
@ -75,7 +75,7 @@ auto FrechetDistanceNearNeighborsDS<PointRange, Traits>::get_close_curves(
|
|||
auto result = kd_tree.search(curve, distance);
|
||||
|
||||
auto predicate = [&](PolylineID id) {
|
||||
return ! continuous_Frechet_distance_less_than<Traits, PointRange>(
|
||||
return ! Frechet_distance_less_than<Traits, PointRange>(
|
||||
curve, curves[id], distance);
|
||||
};
|
||||
auto new_end = std::remove_if(result.begin(), result.end(), predicate);
|
||||
|
|
|
|||
|
|
@ -168,14 +168,14 @@ void testFrechetDistance()
|
|||
for (auto const& query : queries) {
|
||||
/*
|
||||
std::cout
|
||||
<< CGAL::continuous_Frechet_distance<TestCurve,
|
||||
<< CGAL::Frechet_distance<TestCurve,
|
||||
TestTraits>(
|
||||
curves[query.id1], curves[query.id2], 0.001)
|
||||
<< std::endl;
|
||||
*/
|
||||
timer.start();
|
||||
auto decision =
|
||||
CGAL::continuous_Frechet_distance_less_than<TestTraits>(
|
||||
CGAL::Frechet_distance_less_than<TestTraits>(
|
||||
curves[query.id1], curves[query.id2], query.distance);
|
||||
timer.stop();
|
||||
if (decision != query.decision) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue