33#ifdef OGDF_INCLUDE_CGAL
39# include <CGAL/IO/io.h>
40# include <CGAL/Ray_2.h>
48template<
typename kernel>
49using Ray_t = CGAL::Ray_2<kernel>;
51template<
typename kernel,
typename type>
53 return r.source() +
r.to_vector() *
l;
56template<
typename kernel>
60 return (
r.source() - p).squared_length() /
r.to_vector().squared_length();
63template<
typename kernel>
67 auto result = CGAL::intersection(
l,
r);
70 std::numeric_limits<unsigned int>::max());
74 auto s = boost::get<Ray_t<kernel>>(&*result);
75 intersection = s->point(0);
77 intersection = *boost::get<Point_t<kernel>>(&*result);
#define OGDF_ASSERT(expr)
Assert condition expr. See doc/build.md for more information.
static MultilevelBuilder * getDoubleFactoredZeroAdjustedMerger()
The namespace for all OGDF objects.