我在PolyMesh上有halfedge_descriptor
边界,我需要用另一种颜色标记(比如红色)。假设文件流in
是包含off的网格的文件,没有任何颜色属性。以下是CGAL代码的一部分:
typedef CGAL::Simple_cartesian<double> Kernel;
typedef CGAL::Polyhedron_3<Kernel> PolyMesh;
PolyMesh sm;
typedef boost::graph_traits<PolyMesh>::halfedge_descriptor halfedge_descriptor;
typedef boost::graph_traits<PolyMesh>::vertex_descriptor vertex_descriptor;
in >> fs;
halfedge_descriptor bhd = CGAL::Polygon_mesh_processing::longest_border(sm).first;
BOOST_FOREACH(vertex_descriptor ved, CGAL::vertices_around_target(bhd,sm))
{
// Need to do something here
}
我不确定在迭代器块中需要做什么,以便我可以更改边界bhd
上的顶点的颜色属性。
答案 0 :(得分:0)
您没有提供有关您要执行的操作的足够信息,因为您显示的是没有颜色属性的空多面体,因此它的顶点都没有任何颜色。我通常做的是提供多面体信息到我的绘图API,(我使用OpenGL)迭代边缘,并为边框边缘提供另一种颜色。但这不是CGAL那样做的,它是OpenGL。