999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于ArcEngine的管線碰撞分析算法設計與實現

2014-06-26 07:41:18廉光偉寇付友翟林趙虎川
城市勘測 2014年6期
關鍵詞:分析

廉光偉 ,寇付友,翟林,趙虎川

(天津市測繪院,天津 300381)

1 引 言

隨著城市的現代化進程不斷加快,城市地下管網變得越來越復雜,與人們的生活也越來越密切,由于深埋于地下,且種類繁多,規模龐大,再加上經常施工引發的變動、記載資料不全等原因,城市地下管線具有隱蔽性、復雜性和多變性等特性,使得設計新的地下管線和維護現有管線比較困難。本文提出基于ArcEngine的管線碰撞分析算法為解決地下管網規劃設計和管線外業測量提供了技術保障。

2 國內外研究現狀

近20 多年來,國內外的研究人員在碰撞檢測領域中做了很多的工作,取了一定的成果,提出了一些較成熟的算法,并開發了相應的程序。碰撞分析算法總體上可以歸為兩類:①靜態碰撞檢測算法。主要用于檢測靜止狀態中各物體之間是否發生碰撞,如管線碰撞檢測,這類算法的實時性要求不高,但對精度要求較高。②動態碰撞檢測算法。針對的是場景中物體的相對位置隨相間不斷變化的情況,如機械零件的加工過程以及機械系統的運動仿真等[1]。本文主要闡述靜態碰撞檢測算法的研究現狀。

Palmer、Hubbard[7]等提出基于層次包圍盒法的碰撞檢測算法,其目標盡可能地減少需進行相交測試的幾何對象的數目及提高算法的實時性。碰撞檢測領域研究最多的包圍盒有:包圍球,沿坐標軸的軸向包圍盒,方向包圍盒,固定方向凸包等。

基于空間分割的碰撞檢測方法是將整個虛擬空間劃分成等體積的規則單元格,依此將場景中物體分割成更小的群組,并只對占據了同一單元格或者相鄰單元格的幾何對象進行相交測試[3]。

張著豪[5]等提出基于矢量積的管線碰撞分析算法,該算法通過兩管線段的起始點坐標建立矢量積,計算矢量積的值進而判斷兩管線是否相交。

3 管線碰撞分析算法

GIS 中管線是以二維圖形信息和屬性信息的數據結構方式存儲,本文分析了管線的碰撞的可能情況,然后根據不同的情況,結合圖形數據和屬性數據給出相應的碰撞分析算法。

3.1 管線碰撞的情況分析

管線碰撞可能出現的情況有4 種,如圖1所示:

圖1 管線碰撞可能出現的情況

①如圖1(a)示,管線g1 與g2 相交,相交點o 處,兩條管線高程范圍有相交的情況,則兩管線會出現碰撞;

②如圖1(b)示,管線g1 與g2 平行,兩管線的空間最短距離小于兩管線的半徑之和(如管線截面為矩形則取矩形的外接圓半徑),則兩管線會出現碰撞;

③如圖1(c)示,管線g1 與g2 共線,兩管線相交或者平行空間距離小于半徑之和,則兩管線會出現碰撞;

④如圖1(d)示,管線g1 與g2 異面,管線g1 的起始點到管線g2 的空間距離小于兩管線的半徑之和,則兩管線會出現碰撞。

3.2 管線碰撞分析算法

(1)管線相交

①判斷兩管線是否相交,如果相交則進行步驟②;

②首先利用線性內插計算兩管線交點處的中心高程值;

③比較高程差L 與兩管線半徑之和R1 +R2,如果L >R1 +R2,則兩管線不碰撞,否則兩管線碰撞。

算法流程如圖2所示:

圖2 管線相交碰撞分析算法流程

(2)管線平行

①如果有一條線段的端點到另一線段的垂足在另一線段內或端點上,則計算兩平行線段的空間間距L,若該間距L 小于兩管線半徑之和,即L <R1 +R2,則發生碰撞。這通常發生在兩并排布置的管道,間距不符合設計要求。

②如果垂足均在線段外,則計算兩兩端點距離的最小值L,判斷L 是否小于兩管線半徑之和,若L <R1+R2,則發生碰撞;反之,則未發生碰撞。

算法流程如圖3所示:

圖3 管線平行碰撞分析算法流程

(3)管線共線

管線共線可以在空間垂直面上分析管線的碰撞情況,存在兩種可能碰撞情況:①空間垂直面上的相交,具體算法按照(1)節;②空間垂直面上平行,具體算法按照(2)節。

(4)管線異面

首先計算兩管線的公垂線長度L,若L >R1 +R2,不會碰撞,否則需要進行以下分析:

①公垂線的兩個垂足均在管線段內,則發生碰撞;

②兩垂足至少有一個在一條管線段的外面,計算兩管線段兩兩端點的長度(4 個),計算管線段兩端點到另一管線的垂距(4 個),取端點兩線長度和垂距最小者L,若L >R1 +R2,不會碰撞,否則會出現碰撞。

算法流程如圖4所示:

圖4 管線異面碰撞分析算法流程

4 管線碰撞分析算法程序實現

4.1 開發環境

(1)ArcEngine

ArcEngine 是Esri 在ArcGIS 9 版本才開始推出的新產品,它是一套完備的嵌入式GIS 組件庫和工具庫,建立在ArcObject 之上的,ArcObjects 是整個ArcGIS 軟件的核心功能庫,它是由平臺獨立的COM 對象組成。ArcEngine 在核心ArcObjects 組件上又做了一次封裝,開發人員可以用來構建自定義GIS 和制圖應用程序。開發人員可以擴展對象庫,并且完全控制應用軟件用戶界面的外形和感覺[6]。

ArcEngine 具有如下優勢[8]:

①快速開發。ArcGIS Engine 提供了豐富的GIS組件方便用戶快速的定制開發一個GIS 應用程序,無需寫代碼即可實現GIS 數據加載,地圖操作等功能甚至可以實現高級編輯以及空間分析功能。

②易于部署。使用ArcGIS Engine 開發的GIS 應用程序可以脫離ArcGIS Desktop 而運行,只需要安裝runtime 就可以運行。

③高性能。ArcEngine 是基于ArcObject 之上進行封裝,可以實現ArcGIS 大部分的空間操作功能。

④支持多種開發語言。支持多種開發語言(.net、java、C+ +等)和主流的操作系統(Windows、UNIX 和Linux)。

(2)軟硬件環境

硬件環境:Pentium(R)4,CPU 3.0 GHZ,內存1 GB

系統運行平臺:Windows XP/Windows 7

系統開發平臺:Microsoft Visual Studio.NET 2008

系統開發語言:Microsoft Visual c#

4.2 基于ArcEngine 的管線碰撞分析算法程序實現

(1)判斷兩相交管線是否碰撞

①利用拓撲分析接口ITopologicalOperator 判斷兩條管線是否相交,主要代碼為:

IGeometry intersectGeo =toplogicalOperator.Intersect(geometry);

//判斷兩管線是否相交,若相交則返回一個不為空的值,若不相交則返回值為空

②若兩管線相交,則通過線性內插計算交點處的高程值,主要代碼為:

doubledis=Math.Sqrt((x- fromX)* (x - fromX)+ (y- fromY)* (y- fromY));

//獲取相交點到起始點的距離,返回一個雙精度類型的值

doublez= dis* (toPt.Z - fromPt.Z)/ line.Length +fromPt.Z;

//通過線性內插方法獲取相交點高程,返回一個雙精度類型的值

③利用IFeature 接口的GetValue 函數獲取管線的半徑,并比較交點處高程差L 與半徑之和R1 +R2,若L <R1 +R2則管線碰撞。

(2)判斷兩平行管線

①利用ILine 接口的Angle 屬性得到管線與水平方向的夾角,如果兩條管線的夾角相同或相差180°,則兩條管線平行;

②利用IProximityOperator 接口的ReturnDistance函數獲取兩管線的最短距離,主要代碼為:

double dDistance = proximityOper.ReturnDistance(nextfeature.Shape);

//獲取兩條管線的最近距離,返回值為一個雙精度類型的數值

③比較最短距離L 與半徑之和R1 + R2,若L <R1 +R2則兩管線碰撞。

(3)判斷兩共線管線

①利用ITopologicalOperator 接口和ILine 接口的Angle 屬性判斷兩管線是否共線;

②若兩管線共線,則在垂直面上判斷兩管線的相交或平行;

③若垂直面上相交,則按照相交情況判斷是否碰撞;若垂直面上平行,則按照平行情況判斷是否碰撞。

(4)判斷兩異面管線是否碰撞

①利用ITopologicalOperator 的Buffer 函數獲取一定范圍內的管線,排除相交、平行管線;

②利用IPolyline 的QueryPointAndDistance 獲取公垂線的長度,進而獲取最短垂線距離L,主要代碼為:

polyline.QueryPointAndDistance(esriSegmentExtension.esri-NoExtension,pFromPt_n,false,pPt,refdTemp,refdOF,refbRight);

//獲取點到一條折線的最近距離,并返回折線上到這一點的最近的點,pFromPt_n 為折線外一點,pPt 為折線上最近點,dOF 為最近距離

③比較最短距離L 與半徑之和R1 + R2,若L <R1 +R2則兩管線碰撞。

4.3 算法結果驗證及應用

(1)算法結果驗證

本文利用天津市區某一區域的管線數據進行系統測試,其分析結果如圖5所示,制作成管線三維模型如圖6所示,分析結果與模型進行對比,驗證了該算法的正確性。

圖5 碰撞分析結果(部分數據)

圖6 管線三維模型效果圖

(2)算法應用

①管線規劃設計

規劃管理部門在進行管線規劃路由設計時,無法準確判斷新設計的管線路由是否與周圍管線碰撞,進而在施工時可能造成不必要的損失。該算法很好的解決了上述問題,為規劃管理部門管線規劃設計提供了保障。下圖7為利用該算法分析新設計的管線路由與周圍管線的碰撞情況,表格中的紅色表示與周圍管線有碰撞情況。

圖7 管線路由碰撞分析結果

②管線竣工測量成果驗證

在管線竣工測量數據處理過程中,由于數據處理人員一時疏忽,可能會導致管線數據錯誤,而出現管線碰撞情況,利用該算法可以很好的驗證數據,從而保證了管線測量結果的準確性。

5 總 結

本文首先介紹了管線碰撞分析的典型算法,分析了幾何形狀下管線可能出現碰撞的情況,并針對每種情況給出了相應的碰撞分析算法。基于ArcGIS 開發環境,進行了管線碰撞分析的算法實現,并用具體的實例數據進行的實驗,分析結果與管線三維模型進行了對比,從而驗證了算法的正確性。

在地下管網錯綜復雜的今天,該碰撞分析算法為規劃部門新管線的設計和管線測繪部門提供了有效的技術支撐,該算法已應用到天津濱海高新區數字城市規劃管理系統、天津津南規劃管理系統等規劃管理系統中。

[1]肖翔.基于幾何的三維地下供水管網碰撞分析[J].華中科技大學,2008.

[2]袁明.基于ArcEngine 的地下管網綜合應用系統設計與實現[J].成都理工大學,2008.

[3]霍濱焱.基于圖像空間的碰撞檢測算法[D].哈爾濱:哈爾濱工程大學,2005.

[4]于國清,湯廣發,郭駿等.一種基于幾何的空間管道碰撞檢測算法[J].哈爾濱工業大學學報,2003,35(11):1363~1365.

[5]張著豪,李隆方,鄭曉麗等.基于ArcEngine 的城市地下管網碰撞分析研究[J].測繪與空間地理信息,2012.

[6]ArcGISDevelopeHelp,ESRI Product Document,2004.

[7]Hubbard PM.Real-time collision detection and time-critical computing.In SIVE95,The First Workshop on Simulation and Interaction in Virtual EnvironmentsI,owaCityI,owa.University of Iowa,informal proceedings,1995(1):92 ~96.

[8]http://www.esrichina-bj.cn.

猜你喜歡
分析
禽大腸桿菌病的分析、診斷和防治
隱蔽失效適航要求符合性驗證分析
電力系統不平衡分析
電子制作(2018年18期)2018-11-14 01:48:24
電力系統及其自動化發展趨勢分析
經濟危機下的均衡與非均衡分析
對計劃生育必要性以及其貫徹實施的分析
現代農業(2016年5期)2016-02-28 18:42:46
GB/T 7714-2015 與GB/T 7714-2005對比分析
出版與印刷(2016年3期)2016-02-02 01:20:11
中西醫結合治療抑郁癥100例分析
偽造有價證券罪立法比較分析
在線教育與MOOC的比較分析
主站蜘蛛池模板: 国内嫩模私拍精品视频| 国产99热| 欧美福利在线| 午夜少妇精品视频小电影| 最新午夜男女福利片视频| 亚洲精品国产成人7777| 国产精品美女网站| 91精品免费高清在线| 国产成人久久综合777777麻豆| 永久免费无码成人网站| 高清免费毛片| a亚洲天堂| 国产性生交xxxxx免费| 丝袜国产一区| 亚洲AV无码久久精品色欲| 欧美日韩中文字幕在线| 狠狠色噜噜狠狠狠狠奇米777| 热99精品视频| 69国产精品视频免费| 国产精品视频观看裸模| 尤物视频一区| 日韩欧美亚洲国产成人综合| 免费激情网址| 99精品视频九九精品| 天天综合色网| 精品国产成人av免费| 精品久久久久久成人AV| 在线观看精品国产入口| 亚洲伊人天堂| 国产色偷丝袜婷婷无码麻豆制服| 国产精品自拍露脸视频| 一边摸一边做爽的视频17国产| 99热最新网址| 国产乱人伦精品一区二区| 久久国产精品夜色| 国产精品精品视频| 久一在线视频| 午夜国产理论| 国内精品久久人妻无码大片高| 国产午夜无码片在线观看网站 | 日本a∨在线观看| 精品福利国产| 秋霞午夜国产精品成人片| 最新精品国偷自产在线| 国产福利不卡视频| 婷婷色在线视频| 久久国语对白| 狠狠色成人综合首页| 国产精品白浆在线播放| 成人一区专区在线观看| 国产黄网站在线观看| 日韩a在线观看免费观看| 亚洲婷婷丁香| 少妇极品熟妇人妻专区视频| 在线另类稀缺国产呦| 国产毛片一区| 在线亚洲精品自拍| 成人午夜亚洲影视在线观看| 欧美啪啪网| 亚洲日韩精品无码专区97| 欧美日韩专区| 国产激情第一页| 在线高清亚洲精品二区| 54pao国产成人免费视频| 免费国产一级 片内射老| 国产欧美视频在线| 青青草综合网| 亚洲成人在线免费观看| 2018日日摸夜夜添狠狠躁| 精品综合久久久久久97| 欧美日韩国产在线播放| 第一页亚洲| 免费国产不卡午夜福在线观看| 国产精品久久久久鬼色| 黄色片中文字幕| 91视频首页| 黄色片中文字幕| 国产精品福利尤物youwu| 91小视频版在线观看www| 国产性爱网站| 亚洲视频无码| 高清久久精品亚洲日韩Av|