• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      EPS2012平臺下基于水文標(biāo)準(zhǔn)的批量DWG轉(zhuǎn)換

      2017-01-13 07:50:28孫振勇劉少聰
      地理空間信息 2016年11期
      關(guān)鍵詞:批量圖層圖式

      孫振勇,劉少聰,張 燕

      (1.長江水利委員會長江上游水文水資源勘測局,重慶 400014;2.重慶市南岸區(qū)國土資源管理分局,重慶 400000)

      EPS2012平臺下基于水文標(biāo)準(zhǔn)的批量DWG轉(zhuǎn)換

      孫振勇1,劉少聰1,張 燕2

      (1.長江水利委員會長江上游水文水資源勘測局,重慶 400014;2.重慶市南岸區(qū)國土資源管理分局,重慶 400000)

      分析了EPS2012的地理數(shù)據(jù)結(jié)構(gòu)表定義及信息映射機(jī)制,實(shí)現(xiàn)了在FeatureCodeTB表下,由國家基本比例尺圖式圖層到水文觀測圖式圖層的轉(zhuǎn)換;并利用VBScript編程技術(shù),實(shí)現(xiàn)了數(shù)字地形圖由edb格式到dwg格式的批量轉(zhuǎn)換。

      EPS2012;信息映射;VBScript;批量輸出

      清華山維公司的EPS2012地理信息工作站基礎(chǔ)平臺以數(shù)據(jù)庫為核心,綜合運(yùn)用CAD與GIS技術(shù),實(shí)現(xiàn)了信息化測繪、管理與更新一體化,建庫GIS 與出圖一體化,在數(shù)字化測圖軟件中表現(xiàn)良好。該平臺攜帶的腳本編輯器(VBScript)可以實(shí)現(xiàn)各種功能的二次開發(fā),為用戶提高了不少效率[1-2]。

      1 EPS2012信息映射關(guān)系

      EPS2012數(shù)據(jù)庫主要采用的是關(guān)系數(shù)據(jù)模型,使用Microsoft Office組件的Access就可打開。模板就是Access下的mdb ( Microsoft Database ) 數(shù)據(jù)庫,內(nèi)容包括地理數(shù)據(jù)結(jié)構(gòu)表定義、數(shù)據(jù)分層分色方案、編碼體系及符號化描述定義、系統(tǒng)環(huán)境用戶化設(shè)置以及用戶擴(kuò)展屬性表定義。模板不但是數(shù)據(jù)標(biāo)準(zhǔn)化的有力保證,而且體現(xiàn)了生產(chǎn)與技術(shù)相分離先進(jìn)理念以及與其他GIS平臺實(shí)現(xiàn)數(shù)據(jù)交換的信息映射機(jī)制[3-4]。一個模板的主要內(nèi)容包括系統(tǒng)環(huán)境設(shè)置、地理數(shù)據(jù)存儲、實(shí)體編碼特征及符號描述、用戶擴(kuò)展屬性[4]等方面。圖1為EPS2012空間數(shù)據(jù)信息映射關(guān)系圖。

      2 基于FeatureCodeTB表的圖層轉(zhuǎn)換

      長江三峽工程庫區(qū)重慶市主城區(qū)河段1∶5 000全程地形測量任務(wù)執(zhí)行的是GB/T 20257-2006《國家基本比例尺地圖圖式》,該標(biāo)準(zhǔn)下共有65個圖層。最終提交的成果需要入庫長江水文泥沙信息分析管理系統(tǒng),其執(zhí)行的標(biāo)準(zhǔn)共有27個圖層。由圖1可知,圖層對照轉(zhuǎn)換的實(shí)質(zhì)是模板下實(shí)體編碼特征及符號描述的改變,而其在系統(tǒng)環(huán)境設(shè)置、地理數(shù)據(jù)存儲、用戶擴(kuò)展屬性等方面的數(shù)據(jù)關(guān)系結(jié)構(gòu)是沒有改變的。

      EPS平臺中任何一個點(diǎn)、線、面對象都有一個編碼屬性;并以編碼為主導(dǎo)定義了該編碼所代表的實(shí)體一系列其他屬性,諸如實(shí)體類型、所屬圖層、顏色、線型、線寬等,而這些都定義在FeatureCodeTB表中[4]。因此只需重新定義一個FeatureCodeTB表(為了區(qū)別原有FeatureCodeTB表,將其命名為FeatureCodeTBDwgout表),在該表下將數(shù)據(jù)定義為符合長江水文泥沙信息分析管理系統(tǒng)執(zhí)行的標(biāo)準(zhǔn)的27個圖層。輸出CAD時,執(zhí)行輸出FeatureCodeTBDwgout圖層,得到的DWD數(shù)據(jù)成果就符合水文標(biāo)準(zhǔn)圖層。表1[5]、表2為部分編碼在國家圖式標(biāo)準(zhǔn)與水文圖式標(biāo)準(zhǔn)的圖層對照。

      圖1 EPS2012空間數(shù)據(jù)信息映射關(guān)系圖

      若先提取出本項(xiàng)目工程中使用的編碼,在重新定義FeatureCodeTB編碼表時只需對參與的編碼進(jìn)行圖層上的轉(zhuǎn)換,可大大減少工作量。

      3 VBScript編程實(shí)現(xiàn)批量DWG分幅輸出[6]

      EPS2012自身支持dwg格式輸出,但只能單幅輸出且會丟失大量的信息,不具實(shí)用性[1]。VBS腳本語言是EPS平臺二次開發(fā)的主要語言,通過腳本編程可進(jìn)行多項(xiàng)參數(shù)設(shè)置,實(shí)現(xiàn)批量輸出功能[7]。通過VBS腳本編程,可實(shí)現(xiàn)從上到下、從左至右順序批量分幅輸出符合長江水文泥沙信息分析管理系統(tǒng)的27個水文圖式圖層DWG成果。該程序關(guān)鍵代碼為:

      表1 國家標(biāo)準(zhǔn)圖層部分編碼示例

      表2 水文標(biāo)準(zhǔn)圖層部分編碼示例

      SSProcess.SetDataXParameter "Version", "5000" '圖幅比例尺

      SSProcess.SetDataXParameter "ExportPathName", fleName '輸出文件名

      SSProcess.SetDataXParameter "ColorUseStatus", "0" '顏色使用狀態(tài)

      SSProcess.SetDataXParameter "ExplodeObjLayerStatus", "0" '內(nèi)嵌符號輸出方式

      SSProcess.SetDataXParameter "ExplodeObjColorStatus", "1" '數(shù)據(jù)輸出層名使用狀態(tài)

      SSProcess.SetDataXParameter "ChangeNoteAlignment", "FontClass_Sx8=0" '修改對齊方式

      SSProcess.SetDataXParameter "FontWidthScale", "0.707" ',FontClass_Sx8=1

      SSProcess.SetDataXParameter "FontHeightScale", "0.707" ',FontClass_Sx8=1

      SSProcess.SetDataXParameter "SymbolExplodeMode", "1" 'DWG輸出線形比例

      SSProcess.SetDataXParameter "AcadLineWidthMode", "1"

      '輸出AutoCAD數(shù)據(jù)時,線型生成是否啟用。0 (禁用) 1(啟用)

      SSProcess.SetDataXParameter "AcadLinetype GenerateMode", "1"

      'Acad圖塊輸出顏色使用方式。0 隨層 1 隨塊 2 隨塊內(nèi)實(shí)體

      SSProcess.SetDataXParameter "AcadBlockUseColorMod", "0"

      'DWG輸出模板

      AcadDwtFileName = SSProcess.GetSysPathName (8) & "上游水文.dwt"

      SSProcess.SetDataXParameter "AcadDwtFileName", AcadDwtFileName

      '輸出層個數(shù),以及設(shè)定DWG圖層顯示順序

      SSProcess.SetDataXParameter "ExportLayer" & CStr(AddOne(startIndex)), "DEFAULT"

      SSProcess.SetDataXParameter "ExportLayer" & CStr(AddOne(startIndex)), "地貌和土質(zhì)"

      … '總共定義27個圖層,本處省略

      SSProcess.ExportData

      '引用的數(shù)據(jù)結(jié)構(gòu)表,定義編碼的實(shí)體類型、所屬圖層、顏色、線型、線寬等其他屬性

      'SSProcess.SetFeatureCodeTB "FeatureCodeTBDwgout", "SymbolScriptTB_10000"

      'SSProcess.SetNotetemplateTB "NoteTemplateTB_10000"

      End Function

      Sub OnClick() '腳本程序主入口

      SSProcess.MapMethod "LoadData","圖廓層"

      SSProcess.ClearSelection

      SSProcess.ClearSelectCondition

      SSProcess.SetSelectCondition "SSObj_Code", "==", "5000" '圖廓編碼

      SSProcess.SetSelectCondition "", "==", "1" '閉合

      SSProcess.SelectFilter

      frameCount =SSProcess.GetSelGeoCount

      if frameCount <= 0 then

      msgbox "沒有圖廓!"

      exit sub

      end if

      'msgbox frameCount

      pathName = SSProcess.SelectPathName( )

      If pathName = "" Then

      Exit Sub

      End If

      '得到所有圖幅中心坐標(biāo)

      dim px(1000)

      dim py(1000)

      For j=0 To frameCount-1

      id = SSProcess.GetSelGeoValue (j, "SSObj_ID" )

      'msgbox id

      SSProcess.GetObjectFocusPoint id, x, y

      px(j) = x

      py(j) =y

      Next

      For i=0 To frameCount-1

      'id = SSProcess.GetSelGeoValue (i, "SSObj_ID" )

      'msgbox id

      'SSProcess.GetObjectFocusPoint id, x, y

      SSProcess.SetCurMapFrame px(i), py(i), 0, ""

      frameID = SSProcess.GetCurMapFrame()

      'mapNumber = SSProcess.GetObjectAttr( CLng(frameID), "[分子]")

      fuzhu = SSProcess.GetObjectAttr( CLng(frameID), "[圖幅名稱]")

      If fuzhu <> "" Then

      fleName = pathName & fuzhu & ".DWG"

      ExportDwg fleName

      End If

      Next

      msgbox "輸出完畢!共輸出DWG圖 "&frameCount&" 幅"

      SSProcess.FreeMapFrame

      End Sub

      4 結(jié) 語

      1)定制轉(zhuǎn)換方案一般的都會基于數(shù)據(jù)庫所使 用 的 系 統(tǒng) 表FeatureCodeTB、SymbolScriptTB、NoteTemplateTB表復(fù)制得到各自新的輸出方案表,并在新表中修改各對應(yīng)關(guān)系;而EPS2012環(huán)境下所使用的系統(tǒng)表始終保持不變,實(shí)現(xiàn)了作業(yè)環(huán)境和轉(zhuǎn)換環(huán)境的互相獨(dú)立,從而使轉(zhuǎn)換的定制完全不影響作業(yè)員的作業(yè)習(xí)慣。

      2)利用VBScript編程腳本可實(shí)現(xiàn)更細(xì)膩的DWG數(shù)據(jù)轉(zhuǎn)換控制;逐一定制圖幅的各類參數(shù)信息,實(shí)現(xiàn)批量使用和輸出。

      3)利用VBScript編程進(jìn)行mdb格式地形圖的DWG輸出,操作簡單、工作效率高、便于后期數(shù)據(jù)處理和管理。

      [1] 覃豪杰,黃彩軍,方振華.清華山維EPS到南方CASS地形數(shù)據(jù)無損轉(zhuǎn)換研究[J].地理空間信息,2013,11(3):88-89,92

      [2] 宋芒果.淺析CASS軟件的應(yīng)用現(xiàn)狀[J].工程與建設(shè),2009, 23(6):806-808

      [3] 郭昕,武娟.基于C#語言的EPSW 與CASS 數(shù)據(jù)格式轉(zhuǎn)換[J].北京測繪,2009(4):78-80,84

      [4] 王彥紅,于海燕,孫洪義.淺談北京清華山維軟件模板控制技術(shù)的應(yīng)用[J].黑龍江科技信息,2003(2):29

      [5] GB/T 20257-2006. 國家基本比例尺地圖圖式 [S].

      [6] 楊忠寶,康順哲. VB語言程序設(shè)計(jì)教程[M].北京:人民郵電出版社,2010

      [7] 王棋,王帥,趙海洋.基于EPS中VBScript二次開發(fā)在地籍處理中的應(yīng)用[J].測繪與空間地理信息,2011,34(6):191-193

      P208

      :B

      :1672-4623(2016)11-0049-03

      10.3969/j.issn.1672-4623.2016.11.018

      孫振勇,工程師,注冊測繪師,從事水文測驗(yàn)、河道勘測等工作。

      2015-08-03。

      猜你喜歡
      批量圖層圖式
      山東漢畫像石鋪首銜環(huán)魚組合圖式研究
      河北畫報(2021年2期)2021-05-25 02:06:18
      批量提交在配置分發(fā)中的應(yīng)用
      巧用混合圖層 制作抽象動感森林
      圖式思維在現(xiàn)代室內(nèi)裝飾設(shè)計(jì)中的應(yīng)用
      圖層法在地理區(qū)域圖讀圖中的應(yīng)用
      從驅(qū)動-路徑圖式看“V+上/下”的對稱與不對稱
      淺議高校網(wǎng)銀批量代發(fā)
      淺析“遞層優(yōu)化法”在礦井制圖中的應(yīng)用
      河南科技(2014年6期)2014-04-04 08:00:42
      基于AUTOIT3和VBA的POWERPOINT操作題自動批量批改
      考慮價差和再制造率的制造/再制造混合系統(tǒng)生產(chǎn)批量研究
      彝良县| 闽清县| 武隆县| 政和县| 长春市| 依安县| 南陵县| 平利县| 罗田县| 原阳县| 商城县| 新昌县| 泰宁县| 抚顺县| 安塞县| 海安县| 旅游| 项城市| 宜宾市| 射阳县| 洪江市| 南木林县| 泗阳县| 忻城县| 永昌县| 伊宁县| 石柱| 龙海市| 建瓯市| 康平县| 潜江市| 洱源县| 广宗县| 泗洪县| 长治县| 英吉沙县| 漯河市| 措勤县| 宁城县| 广昌县| 施秉县|