于洋
摘要:隨著數據庫技術的發(fā)展,當使用各種數據庫存儲地理空間數據及其屬性時,生成的地理元素的符號化與地形數據的表達和使用有關,這已成為制圖學中必須解決的問題。使用清華山維EPS軟件的模板控制技術,不僅可以有效地管理數據存儲,還可以自定義不同的模板,以解決實際工作中地理元素符號化的不同需求。通過介紹EPS腳本語言的特點,根據實際需要編寫了地形圖檢查腳本文件,并詳細介紹了兩個“ mdb輸出腳本、檢查”腳本示例,實踐證明,數字地形圖可以實現。通過使用書面腳本文件實現半自動檢查并提高工作效率。
關鍵詞:mdb輸出;半自動化;二次開發(fā)腳本
數據是存儲在地理數據存儲表中的,實體對象的特定符號(即符合國際或工業(yè)標準的示意圖符號)由實體特征和符號描述表定義和實現。兩個主要部分之間的通信橋梁是實體代碼和注釋分類編號。
EPS平臺中的任何點,線或面對象都具有代碼屬性,然后該代碼是代碼表示的一系列實體的主要定義,例如實體類型,圖層,顏色,線型,線寬其他屬性,所有這些都在FeatureCodeTB表中定義,并且代碼的相應符號描述在SymbolScriptTB表中定義,其中Code為兩個表之間的鏈接。
1.研究的目的
針對業(yè)務的需要在EPS下二次開發(fā)腳本,目的是實現數據轉換的功能。例如:輸出mdb腳本。
2.EPS腳本的語言組織
EPS腳本語言在EPS腳本編輯器中運行,腳本編集器在EPS平臺下運行。腳本語言運行是屆時執(zhí)行是解釋執(zhí)行。該腳本使用目錄樹組織腳本,并支持新腳本分組,刪除腳本分組,創(chuàng)建新腳本,保存腳本和執(zhí)行腳本。
腳本組織文件名為SSProcess.TXT,腳本代碼使用VBS或JSS作為擴展名,并統(tǒng)一存儲在EPS程序執(zhí)行目錄下的SCRIPT目錄中。
SSProcess是系統(tǒng)默認定義的對象。不需要在腳本中特別定義,可以直接使用。 SSProcess是EPS腳本語言的固有對象。 SSProcess對象的功能包括項目管理,選擇集操作,圖形編輯操作,數據分類和數據轉換。坐標轉換和系統(tǒng)設置功能。它是與EPS平臺進行交互的主要入口對象,因此在編輯每個腳本之前,必須在函數之前添加SSProcess。例如,要打開現有的EPS項目數據庫,您需要編寫“ SSProcess。Open-Database”。使用“ SSProcess。函數名稱”方法來調用SSProcess對象的方法。許多操作都基于對象的腳本功能。
EPS腳本的輸入功能是OnClick。必須在每個腳本文件中定義OnClick函數。通常,只需在輸入功能OnClick下編寫簡單的批處理操作即可,但是如果要實現復雜的“多操作”步驟,則需要自定義多個“Function”功能。
EPS 腳本由多種接口構成,不同的數據排序需要不同的界面來編輯腳本。例如,平臺常用的數據處理接口是SSProcess;項目管理界面為SSProject;屏幕繪制功能界面為SSView;共享參數接口為SSParameter;流水線處理接口為SSPipe;現場處理接口是SSurvey等。
實體編碼特征及符號描述表定義:FeatureCodeTB_500,SymbolScriptTB,NoteTemplateTB。
FeatureCodeTB_500:實體代碼功能表;在FeatureCodeTB表中,字段名稱:代碼指的是關鍵字段;別名轉換為對方系統(tǒng)的代碼;過濾器用于過濾是否分散并輸出地理元素時將其過濾掉。如果值為1,則表示另一方的系統(tǒng)不需要此代碼。否則,值為0。爆炸中斷,輸出中斷時地理元素是否中斷。如果值為1,則它將分解為其他功能并根據SymbolScript表中代碼的描述進行輸出;否則該值為0,則Byname項目應為有效代碼。
SymbolScriptTB:符號描述表;
NoteTemplateTB:注記分類定義表;
3.EPS腳本的語言的實際應用實例
(1)針對mdb輸出腳本的編寫。
Sub OnClick()
SSProcess.ClearDataXParameter
SSProcess.SetDataXParameter”DataType”,”22”
SSProcess.SetDataXParameter”FeatureCodeTBName”,”FeatureCodeTB_500MDBOUT”
SSProcess.SetDataXParameter”SymbolScriptTBName”,”SymbolScriptTB_500MDBOUT”
SSProcess.SetDataXParameter”NoteTemplateTBName”,”NoteTemplateTB_500MDBOUT”
SSProcess.SetDataXParameter”SymbolExplodeMode”,”1”? ‘符號打散方式 1(根據編碼表設定打散)
SSProcess.SetDataXParameter”ExportPathName”,””? ? ?‘輸出路徑
SSProcess.SetDataXParameter”DataBoundCode”,”0”? ? ?‘數據綁定碼
SSProcess.SetDataXParameter”LayerUseStatus”,”0”? ? ? ‘圖層使用狀況
SSProcess.SetDataXParameter”ExportAttrMode”,”1”? ? ?‘輸出數據時,擴展屬性輸出方式
SSProcess.SetDataXParameter”AddSystemFieldMode”,”0”? ‘輸出數據時,是否強制輸出系統(tǒng)字段0(不輸出)
SSProcess.SetDataXParameter”EXCHANGE_PDB_ExportEmptyLayer”,”0”
SSProcess.SetDataXParameter”EXCHANGE_PDB_ExportNoteMode”,”0”
‘輸出層名
SSProcess.SetDataXParameter”ExportLayerCount””1”
SSProcess.SetDataXParameter”ExportLayer1”,”點狀陸地水系要素”
‘輸出層名對照
SSProcess.SetDataXParameter”LayerRelationCount”,”1”
SSProcess.SetDataXParameter”LayerRelation1”,”點狀陸地水系要素:LandwaterPt”
‘屬性對照表
SSProcess.SetDataXParameter”TableFieldDefCount”,”2”
SSProcess.SetDataXParameter”TableFieldDef01”,”點狀陸地水系要素,0,gb,gb,byname,,dblong,10”
SSProcess.SetDataXParameter”TableFieldDef02”,”點狀陸地水系要素,0,direction,direction,,,dbDouble,8,”
SSProcess.ExportData
MegBox”數據輸出完成”
End Sub
4.結束語
清華山維的EPS模板技術功能強大且復雜。它遵循其慣例和要求來定制新模板,這需要大量工作,但具有很高的使用價值。通過本文的研究和討論,可以相信,自定義一個好的特殊模板是必須充分發(fā)揮軟件功能和標準化數據管理的一項工作。具體工作可以從以下幾個方面完成:
(1)熟悉模板框架,了解模板中每個表的功能??梢酝ㄟ^Access軟件打開模板,從而可以輕松查看模板中的表。通過查看,您可以闡明每個表的一般功能以及表之間的對應關系。
(2)進行備份并在修改前做標記。模板的修改必須更新到數據庫,并且無法撤消并在更新后返回。更改模板之前進行備份。您可以備份整個模板文件或模板中的表。符號描述表支持文本注釋功能,該功能可用于解釋,標記和促進對關鍵句子的閱讀和理解。
(3)漸進式定制??梢灾鸩礁倪M自定義過程,并且可以逐步修改每個子代碼或功能。完成一個步驟后,可以立即查看更改,并且可以在子代碼完成后嵌套符號。漸進式定制方法可以減少難度并完成復雜的功能。
清華山維EPS腳本語言很適合于用戶二次開發(fā)。通過腳本語言的編寫及應用,找到更高效的整理工程內部數據、質量檢查等工作的捷徑。
參考文獻:
[1]GB/T20257.1-2007,國家基本比例尺地圖圖式第1部分:1:500 1:1000 1:2000地形圖圖式[s].
[2]CJJ8-99.城市測量范圍[s].
[3]北京清華山維新技術開發(fā)有限公司.EPS2008地理信息工作站使用說明書[Z].2010(8).
[4]北京清華山維新技術開發(fā)有限公司.EPS2008腳本語言幫助[Z].2010(8).
[5]北京清華山維新技術開發(fā)有限公司.EPS2008地理信息工作占模板控制技術[Z].2010(8)
[6]平紅星,王禮,祁孟可.數字地形圖的檢查內容及方法[J].科技傳播,2012(10):194-195.