CGAL中的Point_set是一个数据结构,它并不具有颜色属性。如果你想给Point_set中的点赋予颜色,可以使用CGAL中的Visualization模块。

首先,你需要在程序中引入Visualization模块:

#include <CGAL/visualization/Basic_viewer_qt.h>
#include <CGAL/visualization/Point_set_3.h>

然后,你需要创建一个Basic_viewer_qt对象,它是一个基于Qt的3D可视化器。你可以使用它来显示你的Point_set,并为其设置颜色:

CGAL::visualization::Basic_viewer_qt viewer;
viewer.set_title("My Point Set");

// 创建一个Point_set_3对象
CGAL::Point_set_3<Kernel::Point_3> point_set;

// 向Point_set_3对象中添加点
point_set.insert(Kernel::Point_3(0, 0, 0));
point_set.insert(Kernel::Point_3(1, 0, 0));
point_set.insert(Kernel::Point_3(0, 1, 0));
point_set.insert(Kernel::Point_3(0, 0, 1));

// 设置点的颜色
point_set.color(CGAL::Color(255, 0, 0));

// 将Point_set_3对象添加到viewer中
viewer.add_point_set(point_set);

// 显示viewer
viewer.show();

在上面的代码中,我们创建了一个Point_set_3对象,并向其中添加了四个点。然后,我们使用color()方法将所有点的颜色设置为红色。最后,我们将Point_set_3对象添加到viewer中,并显示它。

注意:如果你想在一个已经存在的viewer中添加Point_set_3对象,可以使用add_point_set()方法。如果你想在同一个viewer中添加多个Point_set_3对象,可以使用add_point_set_from_range()方法


原文地址: https://www.cveoy.top/t/topic/cIPB 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录