天天看點

java生成三角網_源碼:基于離散點的構TIN算法(三角網)

【執行個體簡介】含實驗報告以及測試資料

基于離散點的構TIN算法

一、算法思想

(1)首先,找出離散點集中相距最近的兩點,連接配接這兩點形成TI、的初始基線。

(2) 然後,找出包含此基線的另外一個點構成三角形。尋找第三點的方法:

△按Delaunav三角形的判斷法則乎找第三點。

△或者.按距離基線中點最近的原則擠找第三點。

(3)連接配接孰點與基線的兩個端點形成兩條新邊,構成三角形。

(4)抓這兩條新邊為基線,重複上述過程。直到兩條新邊擴充完成。

(5)重複上述過程,依次循環處理所有新邊。直到所有離散點均成為TIN的端點。

【執行個體截圖】

java生成三角網_源碼:基于離散點的構TIN算法(三角網)
java生成三角網_源碼:基于離散點的構TIN算法(三角網)
java生成三角網_源碼:基于離散點的構TIN算法(三角網)
java生成三角網_源碼:基于離散點的構TIN算法(三角網)
java生成三角網_源碼:基于離散點的構TIN算法(三角網)
java生成三角網_源碼:基于離散點的構TIN算法(三角網)
java生成三角網_源碼:基于離散點的構TIN算法(三角網)
java生成三角網_源碼:基于離散點的構TIN算法(三角網)
java生成三角網_源碼:基于離散點的構TIN算法(三角網)

【核心代碼】

└─三角網生成算法

│  三角網生成算法實驗報告.doc

├─DrawTIN

│  │  DrawTIN.iml

│  │

│  ├─.idea

│  │  │  compiler.xml

│  │  │  misc.xml

│  │  │  modules.xml

│  │  │  workspace.xml

│  │  │

│  │  └─copyright

│  │          profiles_settings.xml

│  │

│  ├─out

│  │  └─production

│  │      └─DrawTIN

│  │          └─com

│  │              └─tin

│  │                  └─qjz

│  │                      │  Main.class

│  │                      │

│  │                      ├─menuitemlistener

│  │                      │      DrawTINListener.class

│  │                      │      LargeTwoTimesListener.class

│  │                      │      OpenFileListener$1.class

│  │                      │      OpenFileListener.class

│  │                      │      ScaleTwoTimesListener.class

│  │                      │

│  │                      ├─model

│  │                      │      Line.class

│  │                      │      Point.class

│  │                      │      Triangle.class

│  │                      │

│  │                      ├─ui

│  │                      │      DrawArrowHead.class

│  │                      │      DrawCanvas$1.class

│  │                      │      DrawCanvas.class

│  │                      │      DrawFrame$1.class

│  │                      │      DrawFrame.class

│  │                      │      DrawTIN.class

│  │                      │      MyProgressBar.class

│  │                      │

│  │                      └─util

│  │                              FileUtil.class

│  │

│  └─src

│      └─com

│          └─tin

│              └─qjz

│                  │  Main.java

│                  │

│                  ├─menuitemlistener

│                  │      DrawTINListener.java

│                  │      LargeTwoTimesListener.java

│                  │      OpenFileListener.java

│                  │      ScaleTwoTimesListener.java

│                  │

│                  ├─model

│                  │      Line.java

│                  │      Point.java

│                  │      Triangle.java

│                  │

│                  ├─ui

│                  │      DrawArrowHead.java

│                  │      DrawCanvas.java

│                  │      DrawFrame.java

│                  │      DrawTIN.java

│                  │      MyProgressBar.java

│                  │

│                  └─util

│                          FileUtil.java

└─資料

DEM.txt

DEM練習資料.txt

README.txt

點資料2000.txt