#include #include #include #include #include typedef CGAL::Simple_cartesian K; typedef CGAL::Visibility_complex_2_segment_traits Gt; typedef Gt::Disk Segment; typedef CGAL::Point_2 Point_2; typedef CGAL::Shortest_path_2 Shp; typedef Shp::Visibility_complex_2 VC; int main() { std::list D; Gt::Make_convex_from_point mcfp; D.push_back(mcfp(Point_2(3,6))); D.push_back(mcfp(Point_2(6,-20))); D.push_back(Segment(Point_2(0,0),Point_2(10,10))); D.push_back(Segment(Point_2(5,2),Point_2(11,5))); D.push_back(Segment(Point_2(-4,-10),Point_2(6,-3))); VC vc(D.begin(),D.end()); Shp shp(vc); shp.compute_shortest_paths(*vc.disks_begin()); shp.get_path_bitangents(vc.disks_begin()[1], std::ostream_iterator(std::cout,"\n")); return 0; }