亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        EPS腳本二次開發(fā)在數(shù)字地形圖檢查中的幾則應(yīng)用*

        2017-06-28 14:25:58林建美何保君
        地礦測繪 2017年2期
        關(guān)鍵詞:腳本語言構(gòu)面腳本

        林建美,何保君

        (廣東省地質(zhì)測繪院,廣東 廣州 510800)

        EPS腳本二次開發(fā)在數(shù)字地形圖檢查中的幾則應(yīng)用*

        林建美,何保君

        (廣東省地質(zhì)測繪院,廣東 廣州 510800)

        通過介紹EPS腳本語言的特點(diǎn),根據(jù)實(shí)際需要編寫了地形圖檢查腳本文件,并詳細(xì)介紹了“編碼合法性檢查”和“房屋構(gòu)面檢查”兩個(gè)腳本實(shí)例。實(shí)踐證明,利用所編寫的腳本文件能實(shí)現(xiàn)數(shù)字地形圖的半自動(dòng)化檢查,并提高工作效率。

        EPS腳本;數(shù)據(jù)檢查;人機(jī)交互;VBScript二次開發(fā)

        0 引言

        數(shù)字地形圖是國土部門日常地籍管理的重要工作底圖之一,是不動(dòng)產(chǎn)測繪、農(nóng)村地籍調(diào)查等當(dāng)前國家重點(diǎn)工程項(xiàng)目的主要數(shù)據(jù)源。而數(shù)據(jù)質(zhì)量的好壞,直接影響到該產(chǎn)品在各個(gè)領(lǐng)域的應(yīng)用[1]。大批量的大比例尺數(shù)字地形圖成果的生產(chǎn)就給質(zhì)量檢查提出了較高要求,而數(shù)字地形圖的質(zhì)量是其應(yīng)用的“生命”,數(shù)據(jù)檢查是非常重要的環(huán)節(jié),它能把差、錯(cuò)、漏消滅在生產(chǎn)第一線,因此,采用高效、實(shí)用的數(shù)字地形圖質(zhì)量檢查手段和方法就顯得非常有必要。在數(shù)據(jù)檢查環(huán)節(jié)中引入自動(dòng)化、半自動(dòng)化技術(shù)和其他先進(jìn)的技術(shù),則會(huì)加快數(shù)據(jù)檢測的準(zhǔn)確度。本文通過介紹清華山維腳本語言的構(gòu)成,總結(jié)腳本編輯特點(diǎn),根據(jù)實(shí)際需要編寫腳本[1-5],實(shí)現(xiàn)對(duì)地形圖半自動(dòng)化檢查,達(dá)到提高工作效率,降低勞動(dòng)成本的目的。

        1 VBScript語言簡介

        Visual Basic是Microsoft 公司推出的基于Windows平臺(tái)的軟件快速開發(fā)工具,也是目前Windows環(huán)境下最受歡迎的程序設(shè)計(jì)工具之一。它采用事件驅(qū)動(dòng)的編程方式,支持面向?qū)ο蟮某绦蛟O(shè)計(jì)方式。VBScript是一種簡單的描述性語言,腳本編寫簡單,可使用純文本建立[3],編輯和修改都十分方便。EPS地理信息工作站(以下簡稱EPS平臺(tái))是北京清華山維新技術(shù)開發(fā)有限公司,自主研發(fā)的面向GIS數(shù)據(jù)生產(chǎn)、處理、建庫更新的測繪與地理信息系統(tǒng)領(lǐng)域?qū)I(yè)軟件。該平臺(tái)基于數(shù)據(jù)庫圖屬一體化存儲(chǔ),遵循從底至上的模塊化設(shè)計(jì)思想,按功能區(qū)分共有4個(gè)層次:數(shù)據(jù)存儲(chǔ)與數(shù)據(jù)庫接口層、平臺(tái)數(shù)據(jù)管理層、平臺(tái)通用功能層、專業(yè)功能層。其中,在數(shù)據(jù)接口層與數(shù)據(jù)管理層提供基于C++的程序級(jí)二次開發(fā)支持,在通用與專業(yè)功能層次提供基于VBScript的腳本級(jí)二次開發(fā)支持。EPS腳本后綴格式為*.VBS或*.JS,采用文本文件格式存儲(chǔ),不需要在EPS平臺(tái)重新編譯即可在平臺(tái)中使用菜單、命令行或工具按鈕方式執(zhí)行[2]。

        2 EPS腳本語言簡介

        SSProcess是EPS腳本語言固有的對(duì)象,是與EPS平臺(tái)交互的主要入口對(duì)象[4],SSProcess對(duì)象的功能包括工程管理、選擇集操作、圖形編輯操作、數(shù)據(jù)整理、數(shù)據(jù)轉(zhuǎn)換、坐標(biāo)轉(zhuǎn)換和系統(tǒng)設(shè)置等功能函數(shù)。因?yàn)镾SProcess是EPS平臺(tái)交互的主要入口對(duì)象,所以在編輯每個(gè)腳本前,都要在函數(shù)前加上SSProcess,比如要打開已經(jīng)存在的EPS工程數(shù)據(jù)庫,就需寫成“SSProcess.OpenDatabase”。

        EPS腳本的入口函數(shù)為OnClick(見圖1),每一個(gè)腳本文件中都一定要定義OnClick函數(shù),一般簡單的批量操作處理,只需在入口函數(shù)OnClick下編寫即可,但如果要實(shí)現(xiàn)復(fù)雜的、多動(dòng)作的步驟就需自定義多個(gè)Function函數(shù)。

        圖1 腳本函數(shù)入口Fig.1 Script function entry

        EPS腳本由多種接口構(gòu)成,不同的數(shù)據(jù)整理需要采用不同的接口編輯腳本。如平臺(tái)常用數(shù)據(jù)處理接口為SSProcess;工程管理接口為SSProject;屏幕繪圖函數(shù)接口為SSView;共享參數(shù)接口為SSParameter;管線處理接口為SSPipe;外業(yè)處理接口為SSurvey等等。

        3 EPS腳本二次開發(fā)應(yīng)用實(shí)例

        利用EPS腳本二次開發(fā)平臺(tái),有規(guī)律性、可批量處理的操作都可以通過編寫腳本來完成。通過腳本實(shí)現(xiàn)人機(jī)交互操作,提高工作效率,提升數(shù)據(jù)質(zhì)量,增強(qiáng)數(shù)據(jù)管理水平。

        在EPS平臺(tái)中通過命令行輸入Script命令激活腳本編輯器或在工具欄的下拉菜單中找到“腳本編輯器”打開編輯界面,如圖2所示。

        圖2 腳本編輯器界面Fig.2 Script editor interface

        圖2中,左欄為腳本的組織樹目錄,如“地形圖檢查”,用戶可以自行建立分組目錄,根據(jù)需要命名。該目錄下可以放置多個(gè)腳本,如圖2中的“地形圖檢查”目錄中共放置了32個(gè)有關(guān)地形圖檢查的腳本。點(diǎn)擊“執(zhí)行腳本”則執(zhí)行當(dāng)前目錄中選中的腳本。

        數(shù)字地形圖檢查內(nèi)容包含地理精度、地物表達(dá)、數(shù)據(jù)結(jié)構(gòu)、地物編碼、空間關(guān)系等內(nèi)容[1]。根據(jù)不同的檢查內(nèi)容,編寫相應(yīng)的腳本文件,實(shí)現(xiàn)自動(dòng)化檢查、批量化檢查,減少人工干預(yù)。下面例舉兩個(gè)腳本實(shí)例進(jìn)行說明。

        3.1 編碼合法性檢查

        在數(shù)字地形圖上制定圖形符號(hào),分別表示實(shí)地的某種地物,這種圖形符號(hào)就稱為地物符號(hào)[6]。每一個(gè)地物符號(hào)都有其相應(yīng)的地物編碼,這個(gè)編碼就是每個(gè)地物在地形圖上唯一的“身份證”號(hào)碼,是區(qū)別于其它地物的標(biāo)示。如果沒有統(tǒng)一的地物編碼,那么數(shù)據(jù)就將無法管理。每個(gè)制圖軟件都在國家相關(guān)的規(guī)范下制定相應(yīng)的模板文件,用以規(guī)范控制各個(gè)地物的編碼、符號(hào)、圖層、顏色、屬性等。故同一地物是否使用同一編碼,是數(shù)據(jù)質(zhì)量檢查中一個(gè)非常重要的環(huán)節(jié)。編碼合法性檢查主要檢查地物是否存在編碼,編碼是否符合“模板”要求,類型是否正確等內(nèi)容。

        編碼合法性檢查腳本實(shí)例代碼:

        Sub OnClick()

        SSProcess.PushUndoMark

        SSProcess.ClearSelection

        SSProcess.ClearSelectCondition

        SSProcess.SetSelectCondition "SSObj_Code","=","3103013,3101014,3103015"

        SSProcess.SelectFilter

        geoCount = SSProcess.GetSelGeoCount()

        Dim arID(1000),idCount

        SSProcess.RemoveCheckRecord "數(shù)據(jù)標(biāo)準(zhǔn)檢查","編碼合法性檢查(過渡碼)"

        If geoCount>0 Then

        x=SSProcess.GetSelGeoValue(0,"SSObj_X(0)")

        y=SSProcess.GetSelGeoValue(0,"SSObj_Y(0)")

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

        SSProcess.AddCheckRecord "數(shù)據(jù)標(biāo)準(zhǔn)檢查","編碼合法性檢查(過渡碼)","自定義腳本類->腳本編程檢查"," 文件存在房屋中心點(diǎn)、地名點(diǎn)、問題標(biāo)注點(diǎn)等過渡要素,有實(shí)體數(shù) "&geoCount&" 個(gè),請(qǐng)使用腳本進(jìn)行批量刪除。",x,y,0,0,geoID,0

        End If

        End Sub

        3.2 房屋構(gòu)面檢查

        現(xiàn)如今,測量工作不僅只是外業(yè)測量和內(nèi)業(yè)成圖,圖庫一體化生產(chǎn)是現(xiàn)今測繪行業(yè)的基本趨勢。在外業(yè)數(shù)據(jù)采集完成后,按照空間數(shù)據(jù)建庫標(biāo)準(zhǔn)要求,要對(duì)數(shù)據(jù)進(jìn)行構(gòu)面、屬性錄入、建立拓?fù)潢P(guān)系等工序,為數(shù)據(jù)建庫做準(zhǔn)備。外業(yè)數(shù)據(jù)采集階段,地物空間特征表達(dá)多為多邊形,為方便后期數(shù)據(jù)建庫和要素屬性錄入,需要對(duì)要素進(jìn)行構(gòu)面。由于作業(yè)人員在數(shù)據(jù)采集的過程中會(huì)出現(xiàn)不規(guī)范操作或者操作錯(cuò)誤的情況,如房屋未封閉、存在懸掛線、實(shí)體沒有屬性或者屬性錯(cuò)誤等,這些問題對(duì)數(shù)字地形圖的要素構(gòu)面、GIS數(shù)據(jù)建庫的影響較大。因此,在數(shù)據(jù)建庫之前,必須避免和消除這些問題。

        房屋構(gòu)面檢查腳本實(shí)例代碼:

        Sub OnClick()

        SSProcess.PushUndoMark

        SSProcess.ClearSelection

        SSProcess.ClearSelectCondition

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

        SSProcess.SetSelectCondition "SSObj_Code","=","3103013,3101014,3103015,"

        SSProcess.SelectFilter

        geoCount = SSProcess.GetSelGeoCount()

        Dim arID(1000),idCount

        SSProcess.RemoveCheckRecord "空間關(guān)系檢查","房屋構(gòu)面檢查"

        For i=0 To geoCount-1

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

        pointcount = SSProcess.GetSelGeoValue(i,"SSObj_PointCount")

        for j = 0 to pointcount-1

        x=SSProcess.GetSelGeoValue(i,"SSObj_X("&j&")")

        y=SSProcess.GetSelGeoValue(i,"SSObj_Y("&j&")")

        ids = SSProcess.SearchNearObjIDs(x,y,0.1,2,"3103013,3101014,3103015",0)

        If ids = "" Then

        SSProcess.AddCheckRecord "空間關(guān)系檢查","房屋構(gòu)面檢查","自定義腳本檢查類->腳本編程檢查","ID "&innerObjID&" 的房屋建基線構(gòu)成的房屋未構(gòu)面。",x,y,0,2,innerObjID,""

        End If

        Next

        End Sub

        從上述兩個(gè)腳本實(shí)例中不難發(fā)現(xiàn),兩個(gè)腳本都使用了4個(gè)固定的函數(shù):ClearSelection函數(shù),ClearSelectCondition函數(shù),SetSelectCondition函數(shù)和SelectFilter函數(shù)。

        1)ClearSelection是清空選擇集的函數(shù),在進(jìn)行一個(gè)新的操作命令時(shí),必須先清空之前選擇集中已選中的地物,清空以后再按腳本設(shè)置的條件選擇,如果沒有執(zhí)行選擇集清空,以前選擇的和接下來選擇的都將被處理,將導(dǎo)致腳本的錯(cuò)誤執(zhí)行。

        2)ClearSelectCondition是清空選擇條件的函數(shù),如果腳本中有多個(gè)選擇集執(zhí)行語句,每個(gè)都獨(dú)立存在,那么每個(gè)選擇條件也是獨(dú)立的,所以在任何的腳本中都必須加上此函數(shù),如果漏寫此函數(shù),選擇過濾的條件就會(huì)不準(zhǔn)確,將得不到該腳本設(shè)計(jì)想要的地物。

        3)SetSelectCondition是選擇過濾條件的函數(shù),在編寫腳本過程中,如果需要設(shè)置多個(gè)條件,則每個(gè)條件單獨(dú)列一行,條件為“AND”型。

        4)SelectFilter是執(zhí)行語句的函數(shù),按照以上設(shè)置的條件對(duì)數(shù)據(jù)進(jìn)行選擇過濾,將結(jié)果放到腳本選擇集中。如在某些時(shí)候執(zhí)行選擇過濾腳本卻發(fā)現(xiàn)數(shù)據(jù)沒有任何反應(yīng),就可以查看一下是否漏寫SelectFilter函數(shù)。

        4 結(jié)束語

        通過腳本實(shí)例可以看出VBScript語言簡單靈活、易學(xué)易用。非常適合初級(jí)用戶在EPS平臺(tái)上進(jìn)行的二次開發(fā)。掌握VBScript腳本語言的編寫應(yīng)用,熟知在腳本編寫過程中每個(gè)函數(shù)的用法,哪種函數(shù)可以實(shí)現(xiàn)何種目的,就可以幫助使用人員在作業(yè)過程中更加高效地進(jìn)行數(shù)據(jù)整理、數(shù)據(jù)質(zhì)量檢查、數(shù)據(jù)更新和入庫等工作,從而提高工作效率,增強(qiáng)項(xiàng)目管理,提升項(xiàng)目質(zhì)量,降低勞動(dòng)成本。在筆者參與的南海區(qū)、高明區(qū)基礎(chǔ)地理信息數(shù)據(jù)縮編、順德區(qū)、花都區(qū)1∶500地形圖修補(bǔ)測項(xiàng)目中充分引用了VBScript腳本二次開發(fā)技術(shù),編寫針對(duì)地形圖檢查的腳本多達(dá)40個(gè),幫助檢查人員快速對(duì)數(shù)據(jù)進(jìn)行人機(jī)交互檢查,大大節(jié)省了檢查時(shí)間。而檢查結(jié)果統(tǒng)一放置在數(shù)據(jù)監(jiān)理窗口中,對(duì)于每一個(gè)錯(cuò)誤都可以實(shí)時(shí)定位,方便作業(yè)人員進(jìn)行修改,從而杜絕錯(cuò)改、漏改情況,保證數(shù)據(jù)質(zhì)量。

        [1] 平紅星,王禮,祁孟可.數(shù)字地形圖的檢查內(nèi)容及方法[J].科技傳播,2012(10):194-195.

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

        [3] 付海波,王磊. 基于EPS腳本語言VBScript的二次開發(fā)研究[J].大眾科技,2010(7):20-21.

        [4] 朱秀杰,徐淼華,聞彩煥,等. EPS2008二次開發(fā)在城鎮(zhèn)地籍?dāng)?shù)據(jù)庫建設(shè)中的應(yīng)用[J].地礦測繪,2015,31(4):41-42.

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

        [6] 彭永峰.用VBScript腳本實(shí)現(xiàn)在清華山維EPS 2008軟件中陽臺(tái)的繪制[J].測繪與空間地理信息,2012(S1):108-110.

        Several Application of Secondary Development for EPS Scriptsin Digital Topographic Map Inspection

        LIN Jian-mei,HE Bao-jun

        (GuangdongInstituteofSurveyingandMappingofGeology,GuangzhouGuangdong510800,China)

        By introducing the characteristics of EPS script language,and according to the actual needs of the preparation of topographic map inspection script file,this paper introduced in detail both script instances of“Coding validity check” and “Building surface inspection”.Practices have proved that we can realize the semi-automatic inspection of digital topographic map,and improve the work efficiency by using these script files.

        EPS Scripts;data inspection;human-computer interaction;VBScript secondary development

        2017-03-20

        P 208; P284

        B

        1007-9394(2017)02-0042-03

        林建美(1985~),女,福建漳州人,學(xué)士,工程師,現(xiàn)主要從事測繪工程應(yīng)用研究方面的工作。

        猜你喜歡
        腳本語言構(gòu)面腳本
        酒駕
        DLG數(shù)據(jù)線狀道路自動(dòng)閉合方法研究
        安奇奇與小cool 龍(第二回)
        數(shù)據(jù)庫系統(tǒng)shell腳本應(yīng)用
        電子測試(2018年14期)2018-09-26 06:04:24
        一種面向SSC的電信增值業(yè)務(wù)的生成方法及實(shí)現(xiàn)
        基于Unity3D的坦克大戰(zhàn)游戲設(shè)計(jì)與實(shí)現(xiàn)
        快樂假期
        基于感知風(fēng)險(xiǎn)的高中生網(wǎng)絡(luò)理財(cái)行為研究
        淺析計(jì)算機(jī)技術(shù)在flash動(dòng)畫中的應(yīng)用
        基于SiPESC平臺(tái)的Python擴(kuò)展模塊開發(fā)
        欧美白人最猛性xxxxx| 午夜国产精品久久久久| 亚洲狼人社区av在线观看| 亚洲中文字幕不卡无码| 在线视频亚洲一区二区三区| 国产精品丝袜美女久久| 白白色发布免费手机在线视频观看| 国产激情久久久久影院小草| 人妻少妇出轨中文字幕| 久久精品久久久久观看99水蜜桃 | 精品偷拍被偷拍在线观看| 亚洲色偷偷综合亚洲av伊人| 亚洲中字幕永久在线观看| 亚洲一区二区女优视频| 精品极品一区二区三区| 97在线视频免费人妻| 18分钟处破好疼哭视频在线观看 | 日本午夜一区二区视频| 国产91极品身材白皙| 人妻洗澡被强公日日澡电影| 成人免费毛片aaaaaa片| 99热久久精里都是精品6| 无码一区东京热| 熟女乱乱熟女乱乱亚洲| 97人妻人人揉人人躁九色| 婷婷久久香蕉五月综合加勒比| 亚洲精品美女久久久久99 | 无码人妻精品一区二区三区下载| 欧美一欧美一区二三区性| 日本一区二区高清视频在线播放| 日本久久伊人特级黄色| 亚洲av综合永久无码精品天堂 | 干出白浆视频在线观看| 男吃奶玩乳尖高潮视频| 亚洲中文字幕无码久久| 亚洲AV永久无码精品一区二国| 国内精品国产三级国产| 中文字幕无码毛片免费看| 免费看奶头视频的网站| 日本肥老熟妇在线观看| 久久国产精品亚洲va麻豆|