#include #include #include #include #include #include typedef CGAL::Simple_cartesian Kernel; typedef Kernel::Point_3 Point; typedef CGAL::Surface_mesh Mesh; typedef boost::graph_traits::vertex_descriptor vertex_descriptor; int main(int argc, char* argv[]) { Mesh sm; std::ifstream in((argc>1)?argv[1]:"data/prim.off"); in >> sm; CGAL::Properties::Property_map ccmap; ccmap = sm.add_property_map("v:CC").first; int num = connected_components(sm, ccmap); std::cout << num << " connected components" << std::endl; BOOST_FOREACH(vertex_descriptor v, vertices(sm)){ std::cout << v << " is in component " << ccmap[v] << std::endl; } return 0; }