delaunay mesher 编译错误
Compilation error with delaunay mesher
我正在尝试使用 2d 网格化库编写代码。我从文档
的以下示例中复制了语法和包含文件
但是当我添加以下行时
CGAL::refine_Delaunay_mesh_2(cdt, Criteria(0.015625, sq3*a));
我得到一个指向行
的编译错误
#include <CGAL/Delaunay_mesher_2.h>
问题是代码在不调用网格函数的情况下编译得很好。
这里的完整错误太大了 post 但我发现这条线介于
之间
/home/sameer/cgal/gap cvt/gap_cvt.cpp:1505:62: required from here
/usr/include/CGAL/Delaunay_mesher_2.h:166:11: error: ‘class CGAL::Constrained_triangulation_face_base_2<CGAL::Epick, CGAL::Triangulation_face_base_2<CGAL::Epick, CGAL::Triangulation_ds_face_base_2<CGAL::Triangulation_data_structure_2<CGAL::Triangulation_vertex_base_2<CGAL::Epick, CGAL::Triangulation_ds_vertex_base_2<void> >, CGAL::Constrained_triangulation_face_base_2<CGAL::Epick, CGAL::Triangulation_face_base_2<CGAL::Epick, CGAL::Triangulation_ds_face_base_2<void> > > > > > >’ has no member named ‘set_in_domain’
it->set_in_domain(!mark);
除了代码几乎与示例中的参数一样,我没有看到我缺少什么。
2D 网格器 class Delaunay_mesher_2 expect the CDT
template parameter to have a face type model of DelaunayMeshFaceBase_2。您不能使用默认的 Triangulation 数据结构。
在您指出的示例中,CDT 类型声明如下:
typedef CGAL::Exact_predicates_inexact_constructions_kernel K;
typedef CGAL::Triangulation_vertex_base_2<K> Vb;
typedef CGAL::Delaunay_mesh_face_base_2<K> Fb;
typedef CGAL::Triangulation_data_structure_2<Vb, Fb> Tds;
typedef CGAL::Constrained_Delaunay_triangulation_2<K, Tds> CDT;
我正在尝试使用 2d 网格化库编写代码。我从文档
的以下示例中复制了语法和包含文件但是当我添加以下行时
CGAL::refine_Delaunay_mesh_2(cdt, Criteria(0.015625, sq3*a));
我得到一个指向行
的编译错误#include <CGAL/Delaunay_mesher_2.h>
问题是代码在不调用网格函数的情况下编译得很好。
这里的完整错误太大了 post 但我发现这条线介于
之间/home/sameer/cgal/gap cvt/gap_cvt.cpp:1505:62: required from here
/usr/include/CGAL/Delaunay_mesher_2.h:166:11: error: ‘class CGAL::Constrained_triangulation_face_base_2<CGAL::Epick, CGAL::Triangulation_face_base_2<CGAL::Epick, CGAL::Triangulation_ds_face_base_2<CGAL::Triangulation_data_structure_2<CGAL::Triangulation_vertex_base_2<CGAL::Epick, CGAL::Triangulation_ds_vertex_base_2<void> >, CGAL::Constrained_triangulation_face_base_2<CGAL::Epick, CGAL::Triangulation_face_base_2<CGAL::Epick, CGAL::Triangulation_ds_face_base_2<void> > > > > > >’ has no member named ‘set_in_domain’
it->set_in_domain(!mark);
除了代码几乎与示例中的参数一样,我没有看到我缺少什么。
2D 网格器 class Delaunay_mesher_2 expect the CDT
template parameter to have a face type model of DelaunayMeshFaceBase_2。您不能使用默认的 Triangulation 数据结构。
在您指出的示例中,CDT 类型声明如下:
typedef CGAL::Exact_predicates_inexact_constructions_kernel K;
typedef CGAL::Triangulation_vertex_base_2<K> Vb;
typedef CGAL::Delaunay_mesh_face_base_2<K> Fb;
typedef CGAL::Triangulation_data_structure_2<Vb, Fb> Tds;
typedef CGAL::Constrained_Delaunay_triangulation_2<K, Tds> CDT;