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

        ?

        基于海洋石油XGIS平臺組件式開發(fā)接口的研究與應(yīng)用

        2016-06-06 22:59:14王文興李為沖岳翔楊建欽
        電腦知識與技術(shù) 2016年6期
        關(guān)鍵詞:接口

        王文興++李為沖++岳翔++楊建欽

        摘要:近年來,海洋石油建成了服務(wù)石油專業(yè)的公共GIS平臺,并且在多個石油專業(yè)系統(tǒng)中獲得推廣使用。本文主要介紹了海洋石油第二代XGIS的主要架構(gòu)、組件式開發(fā)技術(shù)及系統(tǒng)中使用到的接口技術(shù)。設(shè)計并實(shí)現(xiàn)了GIS交互和繪制功能接口的開發(fā)工作。

        關(guān)鍵詞:GIS地理信息系統(tǒng);組件式開發(fā);接口;ActiveX;DLL技術(shù)

        中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2016)06-0246-02

        近幾年來,組件式GIS發(fā)展為GIS的前沿技術(shù),并逐漸成為主流趨勢。目前,已經(jīng)商業(yè)化的組件式GIS平臺有MapObjects、ArcObjects、GeoMedia等[1]。GIS組件之間以及GIS組件與其他組件之間可以通過標(biāo)準(zhǔn)的通信接口實(shí)現(xiàn)交互,這種交互甚至可以跨計算機(jī)實(shí)現(xiàn)。總院的GIS平臺就是基于此架構(gòu)自主研發(fā)了組件式XGIS系統(tǒng)。

        1 GIS系統(tǒng)的基本框架結(jié)構(gòu)

        XGIS采用的是MVC(Model View Controller)系統(tǒng)設(shè)計模式在XGIS中體現(xiàn)為三個具體的層次組成:可視化組件組、功能組件組和數(shù)據(jù)訪問組件組。對用戶來說,功能組件組是可以定制的[2]。

        1.1 XGIS系統(tǒng)組成

        圖1是XGIS的系統(tǒng)架構(gòu),包括客戶端和服務(wù)器端兩部分??蛻舳四苓^瀏覽器對XGIS進(jìn)行訪問。在服務(wù)器端,底層通過數(shù)據(jù)庫做數(shù)據(jù)支持,之上通過WebSvrLock和WebSvrBin(提供WebService服務(wù))來驗(yàn)證用戶相關(guān)信息和提供相應(yīng)的下載服務(wù)。

        圖1 XGIS整體架構(gòu)圖

        核心程序是XGIS.OCX主程序,負(fù)責(zé)整個GIS程序DLL組件的加載工作等。

        1.2主要技術(shù)

        為了減少網(wǎng)絡(luò)中的傳輸負(fù)載,采用了動態(tài)加載技術(shù),軟件核心模塊采用ActiveX形式,使得在互聯(lián)網(wǎng)環(huán)境下實(shí)現(xiàn)單機(jī)和C/S應(yīng)用的功能成為可能。在ActiveX模塊內(nèi)部,充分利用各種網(wǎng)絡(luò)通訊協(xié)議(如FTP、HTTP等),與服務(wù)器端的Web Service服務(wù)程序一起,實(shí)現(xiàn)地震等數(shù)據(jù)的高速傳輸,利用c++語言的高效性實(shí)現(xiàn)圖形的繪制[3]。

        功能模塊采用了靜態(tài)連接庫(LIB)和動態(tài)鏈接(DLL)相結(jié)合的方式,主要的功能使用LIB的方式,擴(kuò)展功能采用動態(tài)鏈接(DLL)的方式,前臺模塊與后臺數(shù)據(jù)的交換采用大數(shù)據(jù)二進(jìn)制文件格式進(jìn)行傳輸,并且兼容了jason、xml等形式的數(shù)據(jù)的交換格式,便于與其他系統(tǒng)擴(kuò)展結(jié)合。

        2系統(tǒng)接口研究

        在XGIS系統(tǒng)中主要使用了四種接口方式。

        (1)SOAP服務(wù)掛接方式

        將SOAP服務(wù)引入到GIS中,以GIS為平臺,以空間圖元為對象,幾乎可以遍歷整個的勘探、開發(fā)等數(shù)據(jù)庫系統(tǒng)。在GIS上的某個圖元下按下鼠標(biāo)右鍵,則系統(tǒng)在“彈出菜單”的頂部列出所有注冊的SOAP服務(wù)。

        (2)script腳本語言接口

        腳本語言是一種宿主語言,本GIS系統(tǒng)也內(nèi)嵌了一種自行開發(fā)的腳本語言,主要是讀取一些不規(guī)則的、駐留于數(shù)據(jù)庫之外的數(shù)據(jù)到GIS圖件上。

        (3)VC++的MIDL 接口

        基于MIDL語言對XGIS 二次開發(fā)接口進(jìn)行定義。通過此接口,可以在其他系統(tǒng)如網(wǎng)頁、C#的窗口程序中對GIS進(jìn)行調(diào)用和傳參。

        (4)DLL接口

        Dll接口方式是系統(tǒng)最常采用的方式,動態(tài)調(diào)用方式的特點(diǎn)是完全由編程者用API函數(shù)加載和卸載DLL,程序員可以決定DLL文件何時加載或不加載,在運(yùn)行時決定加載哪個DLL文件。需要函數(shù)指針和WIN32 API函數(shù)LoadLibrary、GetProcAddress裝載。此種接口具有最大的靈活性和可擴(kuò)展性,同時對編程能力的要求也較高。

        3接口應(yīng)用案例

        本文編寫了交互輸入定位點(diǎn)和交互輸入選擇區(qū)域兩種功能組件,采用動態(tài)調(diào)試的方式進(jìn)行靈活的加載與釋放,也就是第四種DLL接口的方式來進(jìn)行編程。下面的例子為交互輸入定位點(diǎn)的DLL對外接口函數(shù)為

        RETCODE __declspec(dllexport) InterLLXY(void *model, TFunPtr pInterface );

        此函數(shù)聲明負(fù)責(zé)告訴主程序調(diào)入此交互輸入點(diǎn)位點(diǎn)功能組件的函數(shù)入口,在函數(shù)中作相應(yīng)的聲明就可以調(diào)用此組件功能。

        以下為InterLLXY函數(shù)主要代碼展示:

        RETCODE __declspec(dllexport) InterLLXY(void *model, TFunPtr pInterface )

        { AFX_MANAGE_STATE(AfxGetStaticModuleState());

        //通過CXGISCtrl指針來獲得程序的相關(guān)對象

        ctrl = (CXGISCtrl *)model;

        /*中間省略一些運(yùn)算函數(shù)*/

        ctrl->pdrawview->isTrackPopupMenu=0;

        return 1;

        }//函數(shù)結(jié)束

        下面函數(shù)為銷毀函數(shù)的聲明:

        RETCODE __declspec(dllexport) DestroyInterLLXY(void *model );

        函數(shù)的實(shí)現(xiàn)如下所示:

        RETCODE __declspec(dllexport) DestroyInterLLXY(void *model )

        {AFX_MANAGE_STATE(AfxGetStaticModuleState());

        if (interllxy )

        {/*此處省略運(yùn)算代碼*/}

        return 1;

        }

        XGIS的運(yùn)行界面如圖2所示

        圖2 交互輸入定位點(diǎn)

        從圖2中可以看到,本文編寫并加載DLL組件(交互輸入定位點(diǎn))、通過點(diǎn)擊鼠標(biāo)右鍵把這兩個功能掛載到交互菜單下。在輸入相應(yīng)的點(diǎn)的坐標(biāo)后,會出現(xiàn)圖3顯示的界面,系統(tǒng)通過計算點(diǎn)的坐標(biāo)自動定位點(diǎn),并通過相應(yīng)的五角形將其標(biāo)記出來。

        圖3 定位后顯示

        4結(jié)束語

        XGIS的組件式開發(fā),使得運(yùn)行與維護(hù)效率大大提高,多功能的接口調(diào)用方式使GIS在專業(yè)應(yīng)用方面更為方便,功能擴(kuò)展更強(qiáng)大。

        參考文獻(xiàn):

        [1] 朱大明,徐景中.基于組件式GIS的旅游景點(diǎn)查詢系統(tǒng)開發(fā)研究[J].昆明理工大學(xué)學(xué)報:理工版, 2007, 32(5):1-4.

        [2] 張云飛,張欽,楊建欽,等.基于空間對象的公共GIS模型及其在海洋石油信息化中的應(yīng)用[J].中國海上油氣,2009,21(3):211-214.

        [3] 張愛華.基于SuperMap Objects組件式開發(fā)的GIS空間網(wǎng)絡(luò)分析功能實(shí)現(xiàn)方法[J]. 科技信息, 2013(36).

        猜你喜歡
        接口
        現(xiàn)場采購代表與總部及現(xiàn)場各部門的接口關(guān)系
        某電站工程設(shè)計管理與施工、質(zhì)量控制接口關(guān)系研究
        脫硝數(shù)據(jù)傳輸系統(tǒng)遠(yuǎn)程無線監(jiān)控技術(shù)的研發(fā)與應(yīng)用
        中文信息(2016年10期)2016-12-12 12:56:55
        西門子SPPA—T3000在委內(nèi)瑞拉燃機(jī)電廠中的應(yīng)用與接口
        中國市場(2016年32期)2016-12-06 11:16:14
        高性能計算機(jī)管理軟件基本原理研究
        居家環(huán)境監(jiān)測系統(tǒng)研究
        基于HIS的體檢軟件設(shè)計與應(yīng)用
        中俄網(wǎng)絡(luò)語言編碼接口問題的研究
        科技視界(2016年3期)2016-02-26 10:14:32
        企業(yè)整合為行業(yè)升級預(yù)留“接口”
        含有二氧化鈦薄膜增強(qiáng)虛擬閥的微流控芯片用于二維凝膠電泳分離
        久久精品国产亚洲av一般男女| 亚洲欧美日韩综合久久久| 自拍欧美日韩| 国产精品美女久久久浪潮av| 中文字幕成人精品久久不卡91| 人妻久久久一区二区三区蜜臀| 女人张开腿让男桶喷水高潮| 国产午夜无码视频免费网站| 亚洲AV乱码毛片在线播放| 超清无码AV丝袜片在线观看| 亚洲中文字幕乱码免费看| 伊人久久精品亚洲午夜| 欧美乱人伦人妻中文字幕| 国内精品无码一区二区三区| 国模精品二区| 一个人的视频免费播放在线观看| 亚洲天堂精品一区入口| 精品无码无人网站免费视频 | 国产欧美日韩综合精品二区| 这里有精品可以观看| 亚洲国产高清在线视频| 亚洲啪啪色婷婷一区二区| 美女用丝袜脚玩我下面| 国产激情久久久久久熟女老人av| 日韩人妻精品无码一区二区三区 | 精品欧美乱子伦一区二区三区| 无码高潮久久一级一级喷水| 日本免费播放一区二区| 色老板美国在线观看| 久久久久久国产精品美女| 99久久久无码国产精品动漫| 一二三四在线观看韩国视频| 99久久精品无码一区二区毛片| 欧美第一黄网免费网站| 久久精品国产只有精品96| 无色码中文字幕一本久道久| 国产专区一线二线三线码| 国产丰满老熟女重口对白| 久久国产av在线观看| 黄色国产精品福利刺激午夜片| 国产xxx69麻豆国语对白|