汪永新 焦學(xué)軍 宋會傳 王文杰
(1.河南省地質(zhì)礦產(chǎn)勘查開發(fā)局 測繪地理信息院,河南 鄭州 450000;2.河南省自然資源衛(wèi)星應(yīng)用技術(shù)中心,河南 鄭州 450000)
生態(tài)環(huán)境修復(fù)意義重大,我國經(jīng)濟(jì)發(fā)展已開始從單純追求效益的發(fā)展向注重社會與環(huán)境利益的協(xié)調(diào)發(fā)展轉(zhuǎn)型。我國礦山開采歷史悠久,開采量巨大,高強(qiáng)度的礦山開采帶來了生態(tài)環(huán)境破壞,甚至引發(fā)了泥石流、山體滑坡等災(zāi)害,迫切需要相關(guān)部門及專業(yè)人士予以重視[1]。傳統(tǒng)礦山環(huán)境恢復(fù)治理基本采用CAD、MapGIS 等二維繪圖軟件進(jìn)行工程布置設(shè)計(jì),視覺效果較抽象、不夠直觀,不易被非測繪專業(yè)人士理解,也不利于為決策者提供決策支持[2]。本文采用三維地理信息技術(shù),結(jié)合露天礦山環(huán)境恢復(fù)治理工程,研發(fā)露天礦山環(huán)境恢復(fù)治理規(guī)劃設(shè)計(jì)平臺,為相關(guān)技術(shù)人員提供視覺逼真、交互性好、可智能三維化設(shè)計(jì)等功能。
本文以Skyline 作為底層三維引擎,采用C#開發(fā)語言、VS2015 開發(fā)工具,利用Skyline 組件針對露天礦山環(huán)境恢復(fù)治理業(yè)務(wù),搭建露天礦山環(huán)境恢復(fù)治理規(guī)劃設(shè)計(jì)平臺。平臺包括標(biāo)題欄、工具欄、菜單欄和數(shù)據(jù)顯示窗口。平臺除具備三維數(shù)據(jù)添加和顯示、場景漫游、空間測量、線和多邊形繪制、對象搜索等三維地理信息功能外,還包括邊坡及平臺設(shè)計(jì)、綠化設(shè)計(jì)、水系設(shè)計(jì)、擋墻設(shè)計(jì)、道路設(shè)計(jì)、地面平整、土方量計(jì)算、多期治理工程對比等露天礦山環(huán)境恢復(fù)治理的專項(xiàng)功能[3]。平臺整體結(jié)構(gòu)如圖1 所示。
為實(shí)現(xiàn)礦山環(huán)境恢復(fù)治理工程的設(shè)計(jì)功能,需研究相應(yīng)的地形修改算法。平臺涉及的算法如下:
圖1 平臺結(jié)構(gòu)圖
在邊坡設(shè)計(jì)中繪制初始設(shè)計(jì)線,再根據(jù)設(shè)計(jì)高差和設(shè)計(jì)坡度完成邊坡工程設(shè)計(jì)。其中,需要程序判斷陡坡位于設(shè)計(jì)線哪一側(cè)。本文首先根據(jù)設(shè)計(jì)高差和設(shè)計(jì)坡度算出設(shè)計(jì)線節(jié)點(diǎn)平面偏移距離。然后在過首節(jié)點(diǎn)垂線上,首節(jié)點(diǎn)左右兩側(cè)依次按偏移距離及偏移距離加i*1/2 倍的偏移距離迭代(i 是迭代次數(shù))取點(diǎn),獲得左右兩側(cè)取點(diǎn)高程集。對比左右側(cè)取點(diǎn)高程集平均值,平均值大的是上坡方向,平均值小的為下坡方向(如果兩側(cè)高程集平均值相等則增加迭代次數(shù),重復(fù)上述過程,直到找到上坡、下坡為止)。以上算法可實(shí)現(xiàn)程序自動尋坡,完成邊坡設(shè)計(jì)。具體過程如圖2 所示。
設(shè)計(jì)線中間節(jié)點(diǎn)偏移點(diǎn)的獲取不同于首尾節(jié)點(diǎn)的垂線偏距取點(diǎn)法,而是過各節(jié)點(diǎn)的設(shè)計(jì)偏距點(diǎn)作該段設(shè)計(jì)線的平行線,取前后設(shè)計(jì)線段平行線的交點(diǎn)為該節(jié)點(diǎn)的偏移點(diǎn)。然后依次連接首節(jié)點(diǎn)、中間節(jié)點(diǎn)、尾節(jié)點(diǎn)三者的偏移點(diǎn),完成設(shè)計(jì)線偏移線的創(chuàng)建。具體算法過程圖解如圖3 所示。
圖2 自動尋坡算法流程圖
圖3 偏距點(diǎn)平行線相交求點(diǎn)法圖解
在園林設(shè)計(jì)功能中,實(shí)現(xiàn)設(shè)計(jì)多邊形范圍內(nèi)根據(jù)栽種間距批量栽種綠植。為保證綠植都在設(shè)計(jì)多邊形范圍內(nèi),需要判斷栽種點(diǎn)是否在多邊形內(nèi)。如果栽種點(diǎn)在設(shè)計(jì)多邊形范圍內(nèi)則符合栽種條件予以保留,不在則舍去。判斷點(diǎn)與多邊形拓?fù)潢P(guān)系的數(shù)學(xué)基礎(chǔ)有多種,本文采用射線法,即從待判斷點(diǎn)引一條射線,統(tǒng)計(jì)射線與多邊形交點(diǎn)個數(shù)。如果交點(diǎn)數(shù)為奇數(shù),則說明點(diǎn)在多邊形內(nèi)部;如果交點(diǎn)數(shù)為偶數(shù),則說明點(diǎn)在多邊形外部[4]。算法流程如圖4 所示。
圖4 多邊形內(nèi)栽種綠植判定法
根據(jù)設(shè)計(jì)參數(shù)對設(shè)計(jì)線節(jié)點(diǎn)進(jìn)行偏移時,在純粹幾何計(jì)算情況下會存在左右兩側(cè)都有偏移點(diǎn)的情況。但實(shí)際規(guī)劃設(shè)計(jì)中往往需要確定偏移點(diǎn)在設(shè)計(jì)線的左側(cè)還是右側(cè)。本文采用計(jì)算幾何中向量叉積進(jìn)行判斷。向量叉積定義如下:矢量P =(X1,Y1),Q =(X2, Y2),則矢量叉積為:P×Q =X1Y2-X2Y1。可以用叉積的符號判斷兩矢量之間的順逆時針關(guān)系:
(1)若P×Q >0,則P 在Q 的順時針方向;
(2)若P×Q <0,則P 在Q 的逆時針方向;
(3)若P×Q = 0,則P 與Q 共線,但可能同向也可能反向。
設(shè)計(jì)行道樹需依據(jù)行道樹設(shè)計(jì)間距在行道樹設(shè)計(jì)線上均勻栽種成排樹木。行道樹設(shè)計(jì)的算法思路如下:
(1)首先獲取行道樹設(shè)計(jì)線長度L,行道樹設(shè)計(jì)線首尾節(jié)點(diǎn)坐標(biāo)A(X1,Y1)、B(X2,Y2),則:
(2)根據(jù)栽種間距d 和行道樹設(shè)計(jì)線長度L,獲得需要栽種樹木的數(shù)量C。①若L/d 能整除,則C=L/d-1;②若L/d 不能被整除,則C=L/d 取整。
(3)根據(jù)步驟②中計(jì)算的樹木栽種數(shù)量C 和栽種設(shè)計(jì)間距d,利用代碼對行道樹設(shè)計(jì)線首節(jié)點(diǎn)A(X1,Y1)進(jìn)行迭代運(yùn)算,依次計(jì)算出樹木的栽種點(diǎn)坐標(biāo),即完成行道樹的自動批量沿線栽種。
圖5 左右側(cè)偏移點(diǎn)判斷法
平臺由工具欄、菜單欄、工程樹、三維數(shù)據(jù)顯示窗口四部分組成。工具欄包括對象選擇、屬性及空間信息查詢、標(biāo)簽顯示、線及多邊形繪制、繪制捕捉、面積及長度量測、剖面圖、實(shí)景三維數(shù)據(jù)、二維矢量數(shù)據(jù)及單體模型添加、對象搜索等工具。菜單欄包括工程管理、邊坡設(shè)計(jì)、綠化設(shè)計(jì)、水系設(shè)計(jì)、擋墻設(shè)計(jì)、道路設(shè)計(jì)、地面平整、土方量計(jì)算、坐標(biāo)統(tǒng)計(jì)、多期工程對比等功能。工程樹是對工程中包含的對象進(jìn)行顯隱、刪除等操作管理。三維數(shù)據(jù)顯示窗口是礦區(qū)真三維場景數(shù)據(jù)展示窗口,在該窗口中進(jìn)行三維場景內(nèi)漫游游覽、交互操作、各種礦山環(huán)境恢復(fù)治理工程的三維可視化等。平臺主界面如圖6 所示,平臺邊坡設(shè)計(jì)功能如圖7 所示,平臺溝渠設(shè)計(jì)功能如圖8 所示。
圖6 平臺主界面
圖7 邊坡設(shè)計(jì)
圖8 溝渠設(shè)計(jì)
本文以Skyline 三維引擎為基礎(chǔ),利用其提供的基礎(chǔ)功能接口,結(jié)合露天礦山環(huán)境恢復(fù)治理業(yè)務(wù),研究可以實(shí)現(xiàn)邊坡設(shè)計(jì)、綠化設(shè)計(jì)、溝渠設(shè)計(jì)、道路設(shè)計(jì)等功能的相關(guān)算法,研發(fā)露天礦山環(huán)境恢復(fù)治理規(guī)劃設(shè)計(jì)平臺。該平臺為相關(guān)技術(shù)人員科學(xué)管理治理區(qū)礦山的二、三維數(shù)據(jù)提供了方便,分析并實(shí)現(xiàn)了關(guān)于礦山環(huán)境恢復(fù)治理工程的三維可視化設(shè)計(jì)和工程量統(tǒng)計(jì)。目前,在地質(zhì)生態(tài)環(huán)境修復(fù)行業(yè)能夠?qū)崿F(xiàn)大場景三維化規(guī)劃設(shè)計(jì)、工程量計(jì)算的平臺并不多,本文研究為露天礦山環(huán)境恢復(fù)治理等生態(tài)環(huán)境修復(fù)類業(yè)務(wù)提供了一種新的工程技術(shù)方案,未來還將深度結(jié)合相關(guān)業(yè)務(wù),在更實(shí)用、更智能的方向,深入研究平臺相關(guān)功能。