基於CGAL的Delaunay三角網應用
阿新 • • 發佈:2018-11-30
目錄
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 基本目標
- 使用PyQt5 + vtk, 建立應用程式框架;
- 使用Delaunay_triangulation_2進行離散點Delaunay三角構網;
- 在介面中顯示構網成果;
2.2 待實現目標
- 將2d點擴充套件到3d點(2.5d化);
- 指定點,查詢在高程;
- 指定多義線, 查詢多義線在三角網上的豎直方向投影多義線;
- 構網成果儲存為obj檔案;
3. 功能實現
基本目標已初始實現, 程式碼見https://gitee.com/y15399909481/yDelaunator