CGAL 2D Conforming Mesh 是否支持固定点?
Does CGAL 2D Conforming Mesh support fix points?
在我的网格划分应用程序中,我必须在域内指定固定点。这个想法是,固定点也必须是域被网格化后的元素点。
此外,固定点周围的元素应该更密集。一般的概念是,对于固定点,这些点周围应该存在一个半径 r
,这样 r
内部的网格大小与 r
外部的网格大小不同。 r
内部和外部的网格大小应该是可指定的。
这两件事在CGAL 2D Mesh algorithm中可行吗?
是的,网格器不会从三角剖分中移除任何点。
但是请注意,如果您插入的点离约束太近,这将导致约束的细化,而它不是 Gabriel。
用你的措辞,初始约束Delaunay三角剖分的所有输入点都是固定点,因为二维网格生成器只会在三角剖分中插入新点:它永远不会删除任何点。
关于密度,可以复制、粘贴、修改一个标准class,比如CGAL::Delaunay_mesh_size_criteria_2<CDT>
,使固定点附近的局部大小上限变小。
现在,困难在于如何实施新的尺寸政策。您的条件 class 可以存储对另一个 Delaunay_triangulation_2
的 const 引用,它只包含您想要的固定点。然后,对于每个三角形查询,您可以调用 nearest_vertex
然后实际检查查询点之间的距离是否小于圆的半径范围。对于三角形,您可以只验证其重心,也可以验证三角形的所有三个点。然后,根据 that/those 查询的结果,您可以在 CGAL::Delaunay_mesh_size_criteria_2<CDT>
.
副本的代码中修改大小限制
在我的网格划分应用程序中,我必须在域内指定固定点。这个想法是,固定点也必须是域被网格化后的元素点。
此外,固定点周围的元素应该更密集。一般的概念是,对于固定点,这些点周围应该存在一个半径 r
,这样 r
内部的网格大小与 r
外部的网格大小不同。 r
内部和外部的网格大小应该是可指定的。
这两件事在CGAL 2D Mesh algorithm中可行吗?
是的,网格器不会从三角剖分中移除任何点。 但是请注意,如果您插入的点离约束太近,这将导致约束的细化,而它不是 Gabriel。
用你的措辞,初始约束Delaunay三角剖分的所有输入点都是固定点,因为二维网格生成器只会在三角剖分中插入新点:它永远不会删除任何点。
关于密度,可以复制、粘贴、修改一个标准class,比如CGAL::Delaunay_mesh_size_criteria_2<CDT>
,使固定点附近的局部大小上限变小。
现在,困难在于如何实施新的尺寸政策。您的条件 class 可以存储对另一个 Delaunay_triangulation_2
的 const 引用,它只包含您想要的固定点。然后,对于每个三角形查询,您可以调用 nearest_vertex
然后实际检查查询点之间的距离是否小于圆的半径范围。对于三角形,您可以只验证其重心,也可以验证三角形的所有三个点。然后,根据 that/those 查询的结果,您可以在 CGAL::Delaunay_mesh_size_criteria_2<CDT>
.