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

面向地下綜合管線數(shù)據(jù)處理的實用工具設(shè)計與開發(fā)

2018-05-04 07:25:35王海英劉容
城市勘測 2018年2期
關(guān)鍵詞:數(shù)據(jù)處理

王海英,劉容

(南寧市勘察測繪地理信息院,廣西 南寧 530001)

1 引 言

按下電燈開關(guān)、接通一個電話,這些平常的生活細節(jié)都和一個視野之外的系統(tǒng)密切相關(guān)——遍布城市地下空間的各類管線[1]。城市地下管線是城市基礎(chǔ)設(shè)施中的重要組成部分,是現(xiàn)代城市高效率、高質(zhì)量運作的基本保證[2]。隨著城市建設(shè)的不斷發(fā)展,地下管線的種類和數(shù)量越來越復(fù)雜,相應(yīng)的地下管線數(shù)據(jù)處理也是一項煩瑣復(fù)雜的工作。為了減輕勞動強度,提高工作效率,測繪單位往往投入了不少資金購買各種地下管線數(shù)據(jù)處理軟件或系統(tǒng),這些軟件確實能在一定程度上提高作業(yè)單位的生產(chǎn)效率。但這些軟件一般都是統(tǒng)一定制,實行統(tǒng)一的功能銷售模式,并非按需定制開發(fā),無法真正解決測繪單位在作業(yè)過程中的具體問題和各種新出現(xiàn)的問題,這將在很大程度上影響生產(chǎn)進度和成果質(zhì)量[3]。

基于這種需求,為了能真正提高生產(chǎn)效率,滿足管線作業(yè)全過程需要,測繪單位必須提升自身的管線處理軟件開發(fā)實力,進行各項管線數(shù)據(jù)處理所需的具體功能的設(shè)計和開發(fā),形成一系列管線數(shù)據(jù)處理實用工具,滿足地下管線項目的使用需求。

2 管線數(shù)據(jù)處理的功能需求分析

2.1 外業(yè)采集獲取到的管線數(shù)據(jù)的現(xiàn)狀

管線探測外業(yè)數(shù)據(jù)采集以作業(yè)草圖方式為主,結(jié)合外業(yè)測量坐標文件形成管線探測成果表即點成果表和線成果表,點成果表中記錄了管線點(附屬物明顯點或隱蔽探測點)的位置坐標、權(quán)屬、現(xiàn)狀、特征、附屬物、井深及井蓋的相關(guān)屬性等信息;線成果表(管道、線纜)中記錄了管線線的起終點號、埋深、管徑斷面、材質(zhì)、孔數(shù)、根數(shù)、電壓、壓力等等信息。

2.2 數(shù)據(jù)處理軟件的功能需求分析

對于外業(yè)探測調(diào)查獲取的這些管線點表和線表,如何將這些點、線成果表快速轉(zhuǎn)換為具有拓撲結(jié)構(gòu)和屬性結(jié)構(gòu)的圖庫一體化的空間數(shù)據(jù)庫即“管線成圖”;如何保證成圖后的管線數(shù)據(jù)的拓撲關(guān)系正確性、關(guān)聯(lián)成果一致性及管線屬性的正確性、協(xié)調(diào)性和完整性以及如何將最終的管線成果圖按用戶的要求輸出不同格式的成果數(shù)據(jù)等各種需求都需借助管線軟件平臺二次開發(fā)環(huán)境定制相應(yīng)的數(shù)據(jù)導(dǎo)入輸出、信息查詢、數(shù)據(jù)批處理、合法性檢查、批量糾錯等具體的管線功能才能得以順利實現(xiàn)。

3 實用工具設(shè)計

3.1 功能框架

經(jīng)需求調(diào)研與分析,選用EPS 2008為基礎(chǔ)平臺,在該平臺下實現(xiàn)從數(shù)據(jù)導(dǎo)入——數(shù)據(jù)編輯處理——數(shù)據(jù)檢查——成果輸出的全過程,針對不同數(shù)據(jù)處理階段需求的功能,工具軟件的總體功能框架如圖1所示:

圖1 工具軟件功能框架

3.2 運行環(huán)境

軟件平臺:Windows 7專業(yè)版操作系統(tǒng),清華山維EPS 2008基礎(chǔ)平臺。

硬件平臺:PC機(Dell Optiplex 980,Intel(R)Core(TM)i7 CPU 2.80GHz,16.0 GB的內(nèi)存)。

3.3 開發(fā)語言與工具

本文提出的管線數(shù)據(jù)處理實用工具開發(fā)所采用的EPS的腳本語言遵守JScript或VBScript語言標準,基于EPS平臺及開放的二次開發(fā)環(huán)境,用戶可以通過該腳本語言進行相關(guān)二次開發(fā),結(jié)合已有的管線數(shù)據(jù)處理平臺可以實現(xiàn)對矢量數(shù)據(jù)的整理、格式轉(zhuǎn)換、統(tǒng)一賦值等數(shù)據(jù)處理。

SSProcess是系統(tǒng)缺省定義的對象,是與EPS平臺交互的主要入口對象,SSProcess對象的功能包括選擇集操作、圖形編輯操作、數(shù)據(jù)轉(zhuǎn)換和系統(tǒng)設(shè)置等[4]。

4 功能實現(xiàn)

4.1 數(shù)據(jù)導(dǎo)入

對于外業(yè)探查形成管線探測成果表即點成果表和線成果表,點表中的點號可作為唯一的標識碼,點表和線表中的特征碼可作為管點類型和管線線類型的參照字段,通過點表和線表中的特征碼對照關(guān)系調(diào)入EPS平臺進行管線數(shù)據(jù)成圖,大致分四步實現(xiàn):

首先通過自定義函數(shù)GetExcelFields()獲取Excel文件各個工作表中的數(shù)據(jù)的表頭及表名;再新建數(shù)組,循環(huán)遍歷所有工作表,自定義函數(shù)GetxlsRecord()讀取Excel文件中的所有數(shù)據(jù)并存入到數(shù)組中;最好通過SSProcess對象CreateNewObjd自定義函數(shù)AddPoints()和AddLines()創(chuàng)建管線點、管線線對象并導(dǎo)入各個相應(yīng)的屬性項。

主要代碼如下(以excel成果表舉例說明):

DimarFile(20),nRecordCount,nxCount,aryKJSJ(),field_Array(100),strFields(20),strSheet(50),code(50),SheetName(),nFields_hz(),nFields_py()

Sub OnClick()

aa = SSFunc.ExcelSelectFile(arFile,nFileCount) '讀EXCLE表格

if aa = 0 then exit Sub

GetExcelFields arFile(0),ExcelName,SheetName,nSheetCount,nFields_hz,nFields_py

codes=""

strSheets = ""

SSFunc.ScanString strSheets,",",strSheet,sheetCount

SSFunc.ScanString codes,",",code,codeCount

For i = 0 to 14 'excel '開始調(diào)入數(shù)據(jù)

GetxlsRecord nFileCount,strSheet(i),nFields_hz(i) '讀取excel數(shù)據(jù)

If k<12 Then’

AddPoints code(i),aryKJSJ,nFields_hz(i) '導(dǎo)入管點數(shù)據(jù)

Else

AddLines code(i),aryKJSJ,nFields_hz(i) '導(dǎo)入管線數(shù)據(jù)

End If

k=k+1

Next

erase aryKJSJ

SSProcess.RefreshView

這種數(shù)據(jù)表的調(diào)入方式簡單直觀,對于一些計算機文化程度不高的外業(yè)作業(yè)人員,他們?nèi)狈φ莆招率挛镄录夹g(shù)的興趣和動力,仍習(xí)慣于將外業(yè)采集成果以Excel電子表格的方式進行表達,因此這種簡單方便的Excel成果表調(diào)入方式可以很好解決這個問題。

4.2 信息查詢

管線數(shù)據(jù)要素查詢主要是通過對管線點、線要素的某種特性或?qū)傩赃M行篩選過濾,再對過濾所得的要素進行坐標獲取與定位。大致分三步實現(xiàn):

首先通過SSProcess對象的AddInputParameter方法設(shè)置查詢要素的某種特性或?qū)傩詢?nèi)容;再通過SSProcess.ClearSelectCondition和SSProcess.SelectFilter方法獲取查詢對象選擇集,循環(huán)遍歷說有選擇集要素,通過設(shè)置好的特性或?qū)傩詢?nèi)容對選擇集中的各要素進行篩選過濾,符合設(shè)置的特性或?qū)傩詢?nèi)容的要素即是需要查詢的要素;最后通過SSProcess.GetSelGeoPoint方法獲取過濾所得的要素的坐標信息進行定位。

主要代碼如下(以ID號查詢舉例說明):

dim mark_find

SSProcess.ClearInputParameter

SSProcess.AddInputParameter "管線ID","",0,"",""

result =SSProcess.ShowInputParameterDlg ("輸入ID號")

if result =1 then

SSProcess.UpdateScriptDlgParameter 1 '更新對話框上參數(shù)到內(nèi)存

ID = SSProcess.GetInputParameter ("管線ID")

mark_find =1

end if

if mark_find =1 then

SSProcess.ClearSelection

SSProcess.SetSelectCondition "SSObj_ID","==","ID" '過濾

SSProcess.SelectFilter '通過選擇條件的設(shè)置可以設(shè)置任意的過濾條件

geocount = SSProcess.GetSelGeoCount

For i=0 To geocount-1

pid = SSProcess.GetSelGeoValue(i,"SSObj_ID")

SSProcess.GetSelGeoPoint i,x,y

SSProcess.AddCheckRecord "","","",,x,y,,0,pid,""

next

end if

通過這種不受限制的自定義屬性項、屬性內(nèi)容的過濾查詢方式,作業(yè)人員可以輕松地對各種目標對象進行查詢定位。

4.3 數(shù)據(jù)處理

管線數(shù)據(jù)成圖后,還需要進行各種數(shù)據(jù)整理和編輯處理,主要包括屬性整理和拓撲邏輯整理兩方面。

屬性類的編輯處理:主要以管線點、線要素的某項屬性項為基礎(chǔ),通過腳本語言函數(shù)和方法將通過設(shè)定的算法公式計算出來的結(jié)果賦值給與這些要素相關(guān)聯(lián)的要素屬性項;通過這些自動化編輯處理方式,對于某些具有共性的管線點、線屬性項,可以根據(jù)與之相關(guān)的要素的某些屬性通過加工處理后進行屬性賦值,提高作業(yè)效率。

邏輯類的編輯處理:在管線點、線屬性編輯過程中,往往會造成原本相互密切關(guān)聯(lián)的點線要素丟失邏輯相關(guān)性造成孤立點或孤立線現(xiàn)象的出現(xiàn),為了避免這種現(xiàn)象的出現(xiàn),就需隨時針對編輯過程中所做的點、線處理進行點線關(guān)聯(lián)性修復(fù)更新。

主要代碼如下:(以通過管點高程和管線埋深計算管高舉例說明)

SSProcess.ClearSelection

SSProcess.SetSelectCondition "SSObj_Type","=","LINE"

SSProcess.SelectFilter

sl = SSProcess.GetSelGeoCount

dim strs(100)

For i = 0 To sl - 1

geoID = SSProcess.GetSelGeoValue(i,"SSObj_ID")

pz0 = SSProcess.GetSelGeoValue(i,"[起點埋深]")

pz1 = SSProcess.GetSelGeoValue(i,"[終點埋深]")

SSProcess.GetSelGeoPoint i,0,x0,y0,z,ptype,name

SSProcess.GetSelGeoPoint i,PNT-1,x1,y1,z,ptype,name

ids=SSProcess.SearchNearObjIDs(x0,y0,0.00001,0,"",0)

If ids <> "" Then

SSFunc.ScanString ids,",",strs,count

For j = 0 To count - 1

SSProcess.GetObjectPoint strs(j),0,x,y,z,ptype,name

if isnumeric(pntz0)=true then ms = z - pz0

ms = formatnumber(ms,2,-1)

SSProcess.SetObjectAttr geoID,"[起點高程]",ms

next

end if

ids=SSProcess.SearchNearObjIDs(x1,y1,0.00001,0,"",0)

If ids <> "" Then

SSFunc.ScanString ids,",",strs,count

For j = 0 To count - 1

SSProcess.GetObjectPoint strs(j),0,x,y,z,ptype,name

if isnumeric(pntz1)=true then ms = z - pz1

ms = formatnumber(ms,2,-1)

SSProcess.SetObjectAttr geoID,"[終點高程]",ms

next

end if

next

4.4 質(zhì)量檢查

管線數(shù)據(jù)經(jīng)過編輯處理后,在成果輸出之前需對管線數(shù)據(jù)的完整性、規(guī)范性及邏輯關(guān)系和拓撲關(guān)系方面進行嚴格的質(zhì)量檢查即合法性檢查,這里的合法性檢查大體上包括管線圖形的拓撲邏輯檢查和要素屬性檢查。檢查的方式主要是根據(jù)需要檢查的內(nèi)容和目的,制定各種合法性參數(shù),將不滿足合法性參數(shù)的管線要素篩選過濾出來并進行定位,方便作業(yè)人員進行整改修正。

在本項目中,依據(jù)項目技術(shù)設(shè)計要求及管線方面的規(guī)范標準,定制了包括邏輯關(guān)系、拓撲關(guān)系正確性;點號命名規(guī)范性;屬性內(nèi)容完整性及屬性內(nèi)容規(guī)范性四方面在內(nèi)的共計20多項圖形、屬性檢查項。具體的檢查項有:

(1)拓撲關(guān)系、邏輯關(guān)系類:孤點、孤線檢查;點名重復(fù)檢查;分支特征檢查;變徑檢查;排水無出口檢查;污水流向雨水檢查;0長度線檢查;空間交叉檢查;接邊檢查等。

(2)點號命名規(guī)范類:組號錯用檢查,管線類型碼錯誤檢查等。

(3)必填屬性為空檢查。

(4)屬性內(nèi)容規(guī)范類:排水粗流向細檢查;排水由低向高檢查;燃氣管壓力值不一致檢查;管線材質(zhì)檢查;隱蔽點兩端屬性不一致檢查;管線長度超限檢查;高程異常檢查等。

(5)線纜類電壓、根數(shù)、孔數(shù)邏輯關(guān)系:總孔數(shù)大于已用孔檢查;根數(shù)為0時,電壓不為空、已用孔不為0檢查等。

上述各檢查項中的合法性參數(shù)應(yīng)依據(jù)項目技術(shù)設(shè)計書和項目所在地的實際管網(wǎng)現(xiàn)狀情況而定。

經(jīng)過上述定制的各種檢查項逐項檢查后,管線成果在拓撲、邏輯方面和屬性內(nèi)容方面無限接近0錯誤,得到了專家組的一致好評。

4.5 成果輸出

根據(jù)項目的技術(shù)設(shè)計和要求,項目成果要求既能輸出Access 數(shù)據(jù)庫的文字記錄格式,又要能輸出具備屬性存儲的AutoCAD dwg格式及GIS空間數(shù)據(jù)格式。

為了能將滿足客戶對管線成果的不同的表現(xiàn)格式,本項目中采用SSProcess對象的輸出函數(shù)ExportData()函數(shù),在執(zhí)行該函數(shù)前,通過SSProcess.SetDataXParameter函數(shù)進行一系列轉(zhuǎn)換參數(shù)的設(shè)置,包括數(shù)據(jù)輸出格式;數(shù)據(jù)輸出范圍;格式版本;地物顏色;地物符號樣式模板;注記樣式模板等。在設(shè)置好所要求的參數(shù)后即可執(zhí)行數(shù)據(jù)輸出。

其主要代碼如下:(以輸出帶屬性的.dwg格式舉例說明)

DataBoundMode = SSProcess.ReadEpsIni ("設(shè)置輸出模式","SCFS" ,"全部輸出" )

SSProcess.AddInputParameter "輸出范圍",DataBoundMode,0,"當(dāng)前圖幅,全部,選擇集輸出,",""

res=SSProcess.ShowInputParameterDlg("設(shè)置輸出模式" )

DataBoundStyle=SSProcess.GetInputParameter("輸出范圍" )

If DataBoundStyle = "當(dāng)前圖幅" Then

DataBoundMode = "2"

ElseIf DataBoundStyle = "全部輸出" Then

DataBoundMode = "0"

ElseIf DataBoundStyle = "選擇集輸出" Then

DataBoundMode = "1"

End If

SSProcess.WriteEpsIni "設(shè)置輸出模式","SCFS" ,DataBoundStyle

fileName= SSProcess.SelectFileName(0,"指定輸出文件名",0,"AutoCAD Files (*.dwg)|*.dwg")

SSProcess.SetDataXParameter "DataType","1"

SSProcess.SetDataXParameter "Version","2004"

SSProcess.SetDataXParameter "SymbolScriptTBName","SymbolScriptTB_CAD"

SSProcess.SetDataXParameter "FeatureCodeTBName","FeatureCodeTB_CAD"

SSProcess.SetDataXParameter "NoteTemplateTBName","NoteTemplateTB_CAD"

SSProcess.SetDataXParameter "DataBoundMode",DataBoundMode

SSProcess.SetDataXParameter "ExportPathName",filename

SSProcess.SetDataXParameter "ThicknessExportMode","3"

SSProcess.SetDataXParameter "ExportLayerCount","0"

SSProcess.SetDataXParameter "ExplodeObjMakeGroup","1"

SSProcess.SetDataXParameter "ColorUseStatus","2" '//按地物設(shè)定顏色輸出

SSProcess.SetDataXParameter "LayerUseStatus","0" '//按編碼表設(shè)定層名輸出

SSProcess.SetDataXParameter "SymbolExplodeMode","0"'//符號打散方式

SSProcess.SetDataXParameter "LineExportMode","2" '//輸出AutoCAD數(shù)據(jù)時,多義線輸出

AcadDwtFileName = SSProcess.GetSysPathName (0) & "AcadLinNngx.dwt"

SSProcess.SetDataXParameter "AcadDwtFileName",AcadDwtFileName

SSProcess.ExportData

msgbox "輸出完成!"

SSProcess.SetDataXParameter函數(shù)易學(xué)易用、靈活多變,通過的輸出格式參數(shù)的設(shè)置可以定義輸出各種格式的GIS空間數(shù)據(jù)。如:ArcGIS SDE、DWG、DXF、E00、Coverage、Shp、ArcGIS Mdb等。

5 應(yīng)用實例

筆者所在單位基于本設(shè)計框架和開發(fā)思路,進行了管線數(shù)據(jù)處理實用工具軟件開發(fā),也在南寧市地下管線全面普查項目的實際生產(chǎn)過程中得到廣泛應(yīng)用。尤其是在廣西地區(qū)各城市地下管線普查建庫、第一次全區(qū)性地下空間管線數(shù)據(jù)普查項目中得到很好的應(yīng)用,本套管線數(shù)據(jù)處理軟件切實地提高了管線作業(yè)工作效率,確保了管線普查成果的質(zhì)量和任務(wù)進度,并作為交流軟件,在區(qū)內(nèi)其他單位和地下管線普查和信息化建設(shè)技術(shù)群中進行了共享,反響良好。

[1] 周京春,侯至群,尚劍紅. 昆明市地下管線信息化建設(shè)歷程及思考[J]. 測繪通報,2013(S):P44~48.

[2] 徐嬋. 面向矢量數(shù)據(jù)綜合處理的實用工具設(shè)計與開發(fā)[J]. 測繪與空間地理信息,2015(8):104~107.

[3] 徐中華,劉萬華,余成江. 清華山維一體化軟件EPS腳本語言的應(yīng)用[J]. 城市勘測,2007(6):P88~90.

[4] 王利華. 地下管線數(shù)據(jù)采集及建庫研究[D]. 昆明:昆明理工大學(xué),2015.

猜你喜歡
數(shù)據(jù)處理
驗證動量守恒定律實驗數(shù)據(jù)處理初探
認知診斷缺失數(shù)據(jù)處理方法的比較:零替換、多重插補與極大似然估計法*
ILWT-EEMD數(shù)據(jù)處理的ELM滾動軸承故障診斷
ADS-B數(shù)據(jù)處理中心的設(shè)計與實現(xiàn)
電子測試(2018年4期)2018-05-09 07:28:12
MATLAB在化學(xué)工程與工藝實驗數(shù)據(jù)處理中的應(yīng)用
基于希爾伯特- 黃變換的去噪法在外測數(shù)據(jù)處理中的應(yīng)用
大數(shù)據(jù)處理中基于熱感知的能源冷卻技術(shù)
計算機工程(2015年4期)2015-07-05 08:28:04
Matlab在密立根油滴實驗數(shù)據(jù)處理中的應(yīng)用
數(shù)據(jù)處理能力在求職中起關(guān)鍵作用
我國首個“突發(fā)事件基礎(chǔ)數(shù)據(jù)處理標準”發(fā)布
主站蜘蛛池模板: 亚洲无码A视频在线| 日韩a级片视频| 欧美精品亚洲精品日韩专| 久久精品人人做人人爽| 亚洲综合欧美在线一区在线播放| 18禁高潮出水呻吟娇喘蜜芽| 久久精品亚洲专区| 午夜精品福利影院| 欧美一区二区人人喊爽| 久久精品人妻中文视频| 99热线精品大全在线观看| 欧美国产在线看| 国产嫖妓91东北老熟女久久一| 国产成人精品高清在线| 亚洲一级无毛片无码在线免费视频| 国产AV毛片| 亚亚洲乱码一二三四区| 国产精品思思热在线| 爽爽影院十八禁在线观看| 欧美日韩国产综合视频在线观看 | 国产国拍精品视频免费看| 欧美在线视频不卡第一页| 久久永久免费人妻精品| 五月天综合婷婷| a级毛片网| 综合亚洲网| 三上悠亚在线精品二区| 日韩激情成人| 一级不卡毛片| 国产超薄肉色丝袜网站| 四虎精品国产AV二区| 91麻豆久久久| 好吊色妇女免费视频免费| 国产a v无码专区亚洲av| 久久精品一品道久久精品| 国产伦片中文免费观看| 极品av一区二区| 国产一级毛片网站| 五月天在线网站| 久久香蕉国产线看观看式| 不卡无码网| 亚洲无线视频| 亚洲一欧洲中文字幕在线| 久久国语对白| 成人国产一区二区三区| 91亚洲精品第一| 老司机久久99久久精品播放| 国产成人精品2021欧美日韩| 黄色在线不卡| 91精品免费久久久| 露脸一二三区国语对白| 精品人妻一区无码视频| 一本大道AV人久久综合| 99精品国产电影| 2024av在线无码中文最新| 国产99视频精品免费视频7| 色播五月婷婷| 久久香蕉国产线| 国产在线无码av完整版在线观看| 国产自视频| 国产成人亚洲精品色欲AV| 又爽又大又黄a级毛片在线视频| 中国丰满人妻无码束缚啪啪| 99无码熟妇丰满人妻啪啪 | 国产拍在线| 国产精品偷伦视频免费观看国产| 亚欧成人无码AV在线播放| 无码网站免费观看| 九九这里只有精品视频| 国产亚洲精品97AA片在线播放| 又黄又湿又爽的视频| 人妻少妇久久久久久97人妻| 十八禁美女裸体网站| 91福利在线观看视频| 国产亚洲高清视频| 欧美一级视频免费| 久久性视频| 91色爱欧美精品www| 在线观看欧美国产| 毛片一区二区在线看| 国产成人无码综合亚洲日韩不卡| 国产美女91呻吟求|