CGAL::Point_set_3 成员函数自查表 参考来源CGAL 6.1.1 - 3D Point Set: CGAL::Point_set_3 Point, Vector Class Template Reference一、基础构造 / 容量返回值函数名作用小 demoPoint_set_3()构造空点集Point_set ps;size_tnumber_of_points()获取点数auto n ps.number_of_points();boolis_empty()是否为空if(ps.is_empty())voidclear()清空所有数据ps.clear();二、点 / 法向量 访问返回值函数名作用小 demoPointpoint(idx)获取点坐标auto p ps.point(idx);Vectornormal(idx)获取法向量auto n ps.normal(idx);Point_mappoint_map()获取点属性映射auto pm ps.point_map();Vector_mapnormal_map()获取法向量映射auto nm ps.normal_map();三、法向量属性管理返回值函数名作用小 demopairVecMap,booladd_normal_map()添加法向量属性ps.add_normal_map();boolhas_normal_map()是否存在法向量if(ps.has_normal_map())boolremove_normal_map()删除法向量属性ps.remove_normal_map();四、自定义属性核心返回值函数名作用小 demopairPropMap,booladd_property_mapT(name)添加自定义属性ps.add_property_mapint(id);optionalPropMapproperty_mapT(name)获取属性auto pm ps.property_mapColor(color);boolhas_property_mapT(name)是否存在该属性ps.has_property_mapColor(color)boolremove_property_map(pm)删除属性ps.remove_property_map(pm);vectorstringproperties()获取所有属性名auto props ps.properties();五、插入点返回值函数名作用小 demoiteratorinsert(p)插入点ps.insert(Point(0,0,0));iteratorinsert(p,n)插入点 法向量ps.insert(p, n);六、迭代器遍历返回值函数名作用小 demoiteratorbegin()开始迭代器for(auto idx : ps)iteratorend()结束迭代器range-for自动使用七、删除点标记式返回值函数名作用小 demovoidremove(idx/it)标记删除ps.remove(idx);boolis_removed(idx)是否被标记删除if(ps.is_removed(idx))voidcollect_garbage()真正删除内存ps.collect_garbage();八、高级 IO 专用返回值函数名作用小 demoPoint_push_mappoint_push_map()用于写入点read_points(...,ps.point_push_map())Vector_push_mapnormal_push_map()用于写入法向量ps.normal_push_map()Index_back_inserterindex_back_inserter()索引插入迭代器ps.index_back_inserter()point_set_3的用户手册我也整理了参见CGAL 3D Point Set 用户手册-CSDN博客