use*_*651 3 2d delaunay triangulation cgal
我是使用 CGAL 的新手,我想知道 CGAL 是否支持使用任意平面对 3D 点进行 2D Delaunay 三角剖分。CGAL 文档中的示例仅列出了Projection_traits_xy_3<R>、Projection_traits_yz_3<R>和Projection_traits_xz_3<R>,换句话说,是在 xy 平面、yz 平面和 xz 平面上的投影。有什么方法可以定义任意投影平面而不是使用 xy、yz 和 xz 平面?
谢谢,
有一个template < class Kernel > class Triangulation_2_projection_traits_3未记录在标题中的定义:CGAL/Triangulation_2_projection_traits_3.h。
您从平面法线构造特征类并将特征传递给三角剖分。
像下面这样的东西应该工作:
typedef CGAL::Exact_predicates_inexact_constructions_kernel K;
typedef CGAL::Triangulation_2_projection_traits_3<K> P_traits;
typedef CGAL::Delaunay_triangulation_2< P_traits > DT2;
std::vector< K::Point_3 > points
P_traits traits( K::Vector_3(1,1,1) );
DT2 dt2(traits);
dt2.insert(points.begin(), points.end());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
273 次 |
| 最近记录: |