Address Sebastien's todos

This commit is contained in:
Andreas Fabri 2025-03-21 15:55:42 +01:00
parent 337094c297
commit 159249987f
2 changed files with 16 additions and 9 deletions

View File

@ -79,7 +79,6 @@ auto toCurve(const PointRange& point_range, const Traits& traits)
using Filtered_traits = std::pair<AT,ET>;
return Curve<Filtered_traits, true>(point_range, traits);
//return Curve<Traits, false>(point_range, traits);
}
}
else
@ -104,8 +103,10 @@ auto toCurve(const PointRange& point_range, const Traits& traits)
}
else
{
//TODO: not implemented
return Curve<Traits, false>(point_range, traits);
using AT = Frechet_distance::internal::Frechet_distance_traits<CGAL::Interval_nt_advanced, Traits::Dimension::value>;
using ET = Traits;
using Filtered_traits = std::tuple<typename Traits::Point_d,AT,ET>;
return Curve<Filtered_traits, true>(point_range, traits);
}
}
}
@ -135,8 +136,11 @@ auto toCurve(const PointRange& point_range, const Traits& traits)
}
else
{
//TODO: not implemented @SL ??
return Curve<Traits, false>(point_range, traits);
using AT = Frechet_distance::internal::Frechet_distance_traits<CGAL::Interval_nt_advanced, Traits::Dimension::value>;
using ET = Frechet_distance::internal::Frechet_distance_traits<CGAL::Exact_rational, Traits::Dimension::value>;
using Filtered_traits = std::pair<AT,ET>;
return Curve<Filtered_traits, true>(point_range, traits);
}
}
else
@ -161,8 +165,12 @@ auto toCurve(const PointRange& point_range, const Traits& traits)
}
else
{
//TODO: not implemented
return Curve<Traits, false>(point_range, traits);
// static_assert(false, "not implemented");
using AT = Frechet_distance::internal::Frechet_distance_traits<CGAL::Interval_nt_advanced, Traits::Dimension::value>;
using ET = Traits;
using Filtered_traits = std::tuple<typename Traits::Point_d,AT,ET>;
return Curve<Filtered_traits, true>(point_range, traits);
}
}
}

View File

@ -124,7 +124,6 @@ public:
{
if constexpr (Approximate_traits::Dimension::value<=3)
{
// TODO: this assumes that input interval are all tight --> need a PM! @SL
using I2R = Cartesian_converter< typename Kernel_traits<Point>::Kernel,
typename Kernel_traits<Rational_point>::Kernel, NT_converter<distance_t,double>>;
I2R convert;
@ -189,7 +188,7 @@ public:
else if constexpr (dim==3)
this->points.emplace_back(coords[0], coords[1], coords[2]);
else
this->points.emplace_back(coords.begin(), coords.end());
this->points.emplace_back(coords);
}
else
{