天天看點

畢業設計——第三章 開發方法及系統實作(5)

3.6.2兩線交點

這裡采用了數學裡面的兩直線的交點的算法。

(1) 問題描述:已知兩直線上的兩點Line1(pt10,pt11),Line2(pt20,pt21),求交點PtX;

(2) 算法描述:先根據直線上的兩點,求出兩直線方程,根據兩直線方程求出其交點。

(3) 算法實作:設定兩直線Line1(pt10,pt11),Line2(pt20,pt21);

(a) 初始時,先檢查兩直線的點是否為特殊點,比如:pt10.X與pt11.X的值是否相同,如果相同,則傳回特殊值;

(b) 根據兩直線方程,利用數學知識上的兩直線交點的求解方式進行求解,求交點。

3.6.3高程求解

使用了資料裡面的相似定律裡面的知識來進行高程求解。

(1) 問題描述:在圖上已知地形的高程點A、B、C,求圖上任意一點的高程坐标E。

(2) 算法描述:先确定使用者在圖上點選坐标點E的二維坐标,即:(E.X,E.Y),根據該點找到離它最近點A,同時找出離它最近的A、B、C三個點,構成一個三角型(如果不能構成三角成,則作為特殊情況來處理),現求出BC邊上的D點的高程坐标,再根據D點坐标,利用直線AD,求出點E過程。

圖 3-1 高程求解

(3) 算法實作:

(a) 求出AE,AC,AB的距離,找出最小的線距AE;

(b) 連接配接AE,BC,構成兩直線,并求出交點D;

(c) 根據如下公式來D點高程Zd:

(d) 在直線AD,利用(3)裡面的公式,計算E點高程。

3.6.4管段資料的存儲

由于管段的資料是根據圖上的标示來表示,同時必須記錄圖上的資訊,由于本系統開發是基于GIS系統開發,同時結合給排水系統的特點,排水系統采用了樹狀結構表示,是以,記錄管段資料時必須必須将樹狀的結構資訊記錄入資料。參考圖論中的無環有相圖來記錄資料,舉例如下:

序号

接入管數

1

2

3

4

5

6

繼續閱讀