13 #ifndef eli_geom_intersect_minimum_distance_line_hpp
14 #define eli_geom_intersect_minimum_distance_line_hpp
18 #include "eli/code_eli.hpp"
26 template<
typename Derived1__,
typename Derived2__,
typename Derived3__>
27 typename Derived1__::Scalar
minimum_distance(
typename Derived1__::Scalar &t,
const Eigen::MatrixBase<Derived1__> &a0,
28 const Eigen::MatrixBase<Derived2__> &a1,
const Eigen::MatrixBase<Derived3__> &pt)
30 Eigen::Matrix<typename Derived1__::Scalar, 1, Eigen::Dynamic> pma0;
31 typename Derived1__::Scalar a1a1;
43 return std::sqrt(std::max(static_cast<typename Derived1__::Scalar>(0), pma0.dot(pma0)-a1a1*t*t));
curve::piecewise< curve1__, data1__, dim1__, tol1__ >::data_type minimum_distance(typename curve::piecewise< curve1__, data1__, dim1__, tol1__ >::data_type &t, const curve::piecewise< curve1__, data1__, dim1__, tol1__ > &pc, const typename curve::piecewise< curve1__, data1__, dim1__, tol1__ >::point_type &pt)
Derived1__::Scalar distance(const Eigen::MatrixBase< Derived1__ > &p1, const Eigen::MatrixBase< Derived2__ > &p2)
Definition: distance.hpp:33