基于CGAL的Delaunay三角网应用

1. 背景

  本应用基于CGAL中的Delaunay进行三角网构建, 通过PyQt5和vtk进行界面展示

1.1 CGAL

  CGAL是Computational Geometry Algorithms Library(计算几何算法库)的缩写,用C++语言提供高效、可靠的算法库。被广泛应用于几何计算相关的领域,如信息可视化系统,计算机辅助设计,分子生物学,医学图像处理,计算机图形学,机器人设计等。(CGAL百度百科)

1.2 cgal-bindings(Python包)

  cgal-bindings(Python包)是CGAL通过swig进行的Python绑定, 让Python用户可以使用CGAL库.

本应用使用CGAL.CGAL_Triangulation_2.Delaunay_triangulation_2库进行Delaunay三角化.

1.3 vtk-python

  Vtk(visualization toolkit)是一个开源的免费软件系统,主要用于三维计算机图形学、图像处理和可视化。(vtk百度百科)

本应用使用vtk的python包进行三维格网展示. (vtk-python)

1.4 PyQt5

  PyQt5是Qt5的Python绑定. 用于传统桌面程序开发.

2. 功能设计

2.1 基本目标

  1. 使用PyQt5 + vtk, 建立应用程序框架;
  2. 使用Delaunay_triangulation_2进行离散点Delaunay三角构网;
  3. 在界面中显示构网成果;

2.2 待实现目标

  1. 将2d点扩展到3d点(2.5d化);
  2. 指定点,查询在高程;
  3. 指定多义线, 查询多义线在三角网上的竖直方向投影多义线;
  4. 构网成果保存为obj文件;

3. 功能实现

  基本目标已初始实现, 代码见https://gitee.com/y15399909481/yDelaunator

参考:

  1. CGAL百度百科
  2. CGAL维基百科
  3. vtk百度百科
  4. vtk-python
  5. PyQt5
  6. https://gitee.com/y15399909481/yDelaunator
posted @ 2018-11-30 21:49  一花一世界,一叶一乾坤  阅读(3446)  评论(0编辑  收藏  举报