• 
    

    
    

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

      ?

      基于C/S模式的圖件管理系統(tǒng)的構(gòu)建

      2019-11-05 08:10李飛
      科技視界 2019年27期
      關(guān)鍵詞:S模式

      李飛

      【摘 要】本文運(yùn)用MapGIS軟件為平臺,面向?qū)ο蟮木幊陶Z言VC++6.0作為開發(fā)工具,后臺數(shù)據(jù)庫選用SQL Server2000,構(gòu)建一個基于C/S模式的圖件管理系統(tǒng),將一個縣的基礎(chǔ)測繪項(xiàng)目的圖件組織起來集中管理,改變分散的傳統(tǒng)管理方式,提高數(shù)據(jù)的使用價值和效率。

      【關(guān)鍵詞】C/S模式;MapGIS二次開發(fā);基礎(chǔ)測繪圖件管理系統(tǒng)

      中圖分類號: TP311.52文獻(xiàn)標(biāo)識碼: A文章編號: 2095-2457(2019)27-0039-003

      DOI:10.19694/j.cnki.issn2095-2457.2019.27.018

      【Abstract】This paper introduces the design and structure of a management system based on C/S model for basic surveying and mapping maps of a county.The system based on MapGIS as the platform,using the object-oriented?language VC++6.0as the development tool,taking SQL?Server2000 as the database.The management of maps charges from scattered to concentrative,thus improves the usage and value of data.

      【Key words】C/S model;Secondary development of MapGIS;Management system for basic surveying and mapping maps

      0 前言

      大多數(shù)城市基礎(chǔ)測繪圖件都是AutoCAD格式,且數(shù)量龐大,種類多樣,數(shù)據(jù)量可達(dá)20GB以上。傳統(tǒng)圖件管理方法通常是以文件方式將圖件存儲在項(xiàng)目負(fù)責(zé)人和主任工程師的計算機(jī)磁盤上進(jìn)行單獨(dú)管理。此種方法較分散,而且有如下弊端:(1)傳統(tǒng)管理方式以圖幅號給圖件命名,用戶無法確定圖件間的關(guān)系和圖件的空間位置;(2)城市級的GIS程序,其數(shù)據(jù)量通??梢赃_(dá)到GB水平,如某市1:500的基礎(chǔ)地圖就有2.4GB[1]。要在如此龐大的數(shù)據(jù)量中找到所需要的圖件,無異于大海撈針,會浪費(fèi)大量的時間和人力,容易出現(xiàn)人為失誤,造成數(shù)據(jù)冗余;(3)物理磁盤安全性差,可能會導(dǎo)致數(shù)據(jù)泄露或不一致。

      針對傳統(tǒng)圖件管理模式的弊端,構(gòu)建一個便捷、安全、高效、可靠的圖件管理系統(tǒng)變得尤為重要。特別是單位局域網(wǎng)的建成,為圖件的計算機(jī)化、網(wǎng)絡(luò)化管理進(jìn)一步奠定了基礎(chǔ)[2]。因此,構(gòu)建基于C/S(客戶端/服務(wù)器)模式的城市基礎(chǔ)測繪圖件管理系統(tǒng),改變之前過于分散的圖件管理方式,很有意義。

      1 系統(tǒng)設(shè)計

      1.1 系統(tǒng)開發(fā)平臺與數(shù)據(jù)來源

      系統(tǒng)利用現(xiàn)在普遍使用的MapGIS軟件的集成二次開發(fā)技術(shù),開發(fā)工具選用Mictosoft Visual C++6.0這一面向?qū)ο蟮目梢暬幊陶Z言。后臺數(shù)據(jù)庫選用儲存方式穩(wěn)定、可靠性高、性能優(yōu)異的SQL Server 2000。由于GIS系統(tǒng)在顯示圖像圖形方面的強(qiáng)大功能,開發(fā)平臺的圖形化,后臺建設(shè)數(shù)據(jù)庫和運(yùn)行復(fù)雜操作都十分的便利。加上跨平臺性的開發(fā)環(huán)境,系統(tǒng)在各種版本的Windows系統(tǒng)中都可運(yùn)行。

      圖件數(shù)據(jù)來源于測繪數(shù)據(jù)與航空像片的分幅圖。圖件類型如圖:

      1.2 系統(tǒng)結(jié)構(gòu)與數(shù)據(jù)庫設(shè)計

      1.2.1 系統(tǒng)功能分析

      出于系統(tǒng)使用便利、安全可靠的考慮。應(yīng)具有標(biāo)準(zhǔn)統(tǒng)一的圖件管理功能[2];使用方便的圖件查詢功能[2];維護(hù)圖件數(shù)據(jù)安全的分級權(quán)限功能[2];快捷、穩(wěn)定的圖件下載、上傳功能以及直觀、清晰的可視化功能。

      在內(nèi)部局域網(wǎng)基礎(chǔ)上,采用C/S(客戶端/服務(wù)器)模式的系統(tǒng)結(jié)構(gòu)。系統(tǒng)可以不受物理空間限制,充分發(fā)揮客戶端和服務(wù)器端的硬件優(yōu)勢,將操作和數(shù)據(jù)合理分配到兩端,減少通信開銷,以提高系統(tǒng)的效率。

      服務(wù)器端管理所有圖件數(shù)據(jù)和用戶信息,并依據(jù)用戶權(quán)限響應(yīng)不同類型用戶的操作請求和所需數(shù)據(jù)。在客戶端,用戶可以在視圖區(qū)上選擇所要操作的分幅圖,并發(fā)送操作請求到服務(wù)器端。

      1.2.2 系統(tǒng)結(jié)構(gòu)設(shè)計

      系統(tǒng)基本結(jié)構(gòu)如圖2所示。

      1.2.3 系統(tǒng)數(shù)據(jù)庫設(shè)計

      服務(wù)器端的SQL Server數(shù)據(jù)庫中以統(tǒng)一格式保存所有數(shù)據(jù)。由于SQL Server無法訪問和顯示AutoCAD格式的圖件數(shù)據(jù),將其轉(zhuǎn)換為其他格式的文件儲存也不現(xiàn)實(shí)[2]。為解決這一問題,系統(tǒng)以二進(jìn)制格式將DLG(數(shù)字線劃圖)與DOM(數(shù)字正射影像圖)數(shù)據(jù)保存在數(shù)據(jù)表中。

      根據(jù)系統(tǒng)功能需求,數(shù)據(jù)庫中數(shù)據(jù)表主要分為如下幾類:

      (1)屬性信息表(圖幅號、圖名、時間、所屬政區(qū)、坐標(biāo)系):包括1:500,1:2000,1:5000三種比例尺的屬性信息表,將各比例尺圖件的屬性信息存儲于此類數(shù)據(jù)表中。

      (2)圖件數(shù)據(jù)表(圖幅號、比例尺、圖件內(nèi)容):將圖件文件以二進(jìn)制的形式保存在此表中,通過比例尺和圖幅號屬性列與各比例尺圖件屬性信息表進(jìn)行連接。

      (3)用戶基本信息表(賬號、密碼、權(quán)限):出于數(shù)據(jù)安全考慮,用戶信息全部經(jīng)過加密處理。

      分開管理屬性信息和圖件數(shù)據(jù),系統(tǒng)將不用依賴專業(yè)的開發(fā)平臺[2]。并且在只查詢屬性信息時,不用對圖件數(shù)據(jù)的進(jìn)行搜索,降低運(yùn)行時間,提高效率。

      2 技術(shù)分析

      2.1 數(shù)據(jù)連接技術(shù)

      本系統(tǒng)使用MapGIS網(wǎng)絡(luò)數(shù)據(jù)源功能以及Windows系統(tǒng)的ODBC技術(shù),實(shí)現(xiàn)服務(wù)器端與客戶端的數(shù)據(jù)訪問與連接。具體步驟如下:

      服務(wù)器端數(shù)據(jù)源配置:(1)配置系統(tǒng)ODBC數(shù)據(jù)源;(2)使用MapGIS“配置網(wǎng)絡(luò)數(shù)據(jù)源”功能,配置數(shù)據(jù)源的登錄名、密碼,并測試數(shù)據(jù)源。

      客戶端數(shù)據(jù)源配置:利用MapGIS的“添加應(yīng)用程序服務(wù)器”的功能,將服務(wù)器端配置好的數(shù)據(jù)源添加到客戶端。

      配置成功后,客戶端和服務(wù)器可以相互訪問和操作。

      2.2 MapGIS二次開發(fā)技術(shù)

      本系統(tǒng)采用MapGIS的C++類庫的開發(fā)方式,將MapGIS類庫中CGisEditView類集成于Visual C++6.0中,進(jìn)行系統(tǒng)的開發(fā)。

      2.2.1 MapGIS應(yīng)用程序環(huán)境配置:

      (1)將新建的Visual C++多文檔項(xiàng)目中的視圖類改為繼承CGisEditView類,然后將#include “cgisedit.h”加入視圖類定義中。

      (2)調(diào)用CGisEditView類中的OnDraw(pDC)函數(shù),實(shí)現(xiàn)預(yù)處理的繪圖工作,即添加語句CGisEditView::OnDraw(pDC) 到視圖類的OnDraw(CDC* pDC)函數(shù)中 [4],示例代碼如下:

      void CMyView::OnDraw(CDC* pDC)

      {

      CMyDoc* pDC = GetDocument();

      ASSERT_VALID(pDoc);

      CGisEditView::OnDraw(pDC);

      }

      (3)對Visual C++的字節(jié)、輸出目錄、包含庫進(jìn)行設(shè)置。

      2.2.2 程序二次開發(fā)

      CGisEditView類封裝了MapGIS針對基本數(shù)據(jù)對象的編輯過程和方法,通過調(diào)用這些方法和函數(shù),來實(shí)現(xiàn)系統(tǒng)所需功能。

      現(xiàn)以右鍵快捷菜單中的“移動窗口”為例,說明如何調(diào)用MapGIS類庫函數(shù)完成相應(yīng)功能。

      首先在Workspace窗口的Resource標(biāo)簽中新建菜單,設(shè)置菜單項(xiàng)的ID、標(biāo)題和樣式等屬性。

      然后,運(yùn)行ClassWizard為此菜單項(xiàng)添加消息響應(yīng)函數(shù),代碼如下:

      void CMyView::OnMove()

      {

      _MoveWindow();

      }

      通過上述方式,用戶在右鍵快捷菜單中,通過鼠標(biāo)選擇“移動窗口”命令時,系統(tǒng)將調(diào)用相關(guān)的MapGIS庫函數(shù),完成相應(yīng)功能。其他的很多系統(tǒng)功能也通過這種調(diào)用方式進(jìn)行開發(fā)設(shè)計。

      3 系統(tǒng)主要模塊功能

      本系統(tǒng)的設(shè)計是出于科學(xué)管理一個縣的基礎(chǔ)測繪項(xiàng)目圖件,提高其利用效率的目的,主要由客戶端和服務(wù)器端兩部分組成。

      3.1 客戶端功能模塊

      3.1.1 系統(tǒng)可視化模塊

      客戶端底圖由行政區(qū)劃圖與比例尺專題圖(分幅圖)通過一致的窗口坐標(biāo)疊加而成,圖中色斑塊為比例尺專題圖,系統(tǒng)有三種比例尺專題圖,分別是1:500,1:2000,1:5000,用戶可以根據(jù)需要更改比例尺。運(yùn)用MapGIS提供的工作區(qū)操作函數(shù),在視圖區(qū)中加載制作好的底圖并顯示。通過調(diào)用CGisEditView類提供的圖層處理函數(shù),用戶可以實(shí)現(xiàn)對底圖的放大、縮小、移動及更新等功能。此模塊直觀的展示出各分幅圖所處的空間位置和行政區(qū)劃,方便用戶選取所需位置的圖件。

      3.1.2 系統(tǒng)查詢模塊

      查詢主要分為屬性信息查詢和圖件查詢。

      (1)屬性信息查詢:客戶端讀取用戶所選圖幅號和比例尺信息并發(fā)送給服務(wù)器端,服務(wù)器在相應(yīng)比例尺的屬性信息表中讀取圖幅號、圖名、圖件時間、坐標(biāo)系、比例尺、所屬政區(qū)等信息,發(fā)送給客戶端,并顯示在查詢窗口中。屬性查詢對話框如下圖:

      (2)圖件查詢:由于SQL Server無法直接訪問圖件格式,系統(tǒng)使用默認(rèn)的AutoCAD程序打開所選圖件,分為單幅打開和多幅打開兩種方式。單幅打開時系統(tǒng)調(diào)用ShellExecute函數(shù),使用默認(rèn)的AutoCAD程序打開相應(yīng)單幅圖件??紤]到某些情況下,用戶可能需要查看某片區(qū)域的多幅圖件,或者對多幅圖件進(jìn)行比較查看,特別設(shè)計了多幅打開功能,系統(tǒng)根據(jù)所選圖件數(shù)量,循環(huán)多次調(diào)用WM_COPYDATA消息,向AutoCAD發(fā)送“插入塊”命令,在 AutoCAD中合并打開多幅圖。

      3.1.3 圖件下載模塊

      客戶端將用戶所選圖幅號和比例尺信息發(fā)送給服務(wù)器,服務(wù)器在圖件數(shù)據(jù)表中,找到相應(yīng)的圖件二進(jìn)制流數(shù)據(jù),反饋給客戶端,客戶端將數(shù)據(jù)以AutoCAD格式保存于客戶端電腦相應(yīng)文件夾中。

      3.2 服務(wù)器端功能模塊

      3.2.1 權(quán)限管理模塊

      出于數(shù)據(jù)安全性的考慮,系統(tǒng)定義了三種賬號類型,分別為系統(tǒng)管理員賬號、數(shù)據(jù)管理員賬號和普通用戶賬號,不同的賬號擁有不同的系統(tǒng)功能權(quán)限。普通用戶只能進(jìn)行系統(tǒng)可視化、系統(tǒng)查詢和圖件下載操作;數(shù)據(jù)管理員可以輸入、修改圖件屬性信息,上傳、更新圖件;系統(tǒng)管理員賬號擁有數(shù)據(jù)管理員的所有權(quán)限,還可以對用戶注冊的賬號進(jìn)行權(quán)限分配,并對數(shù)據(jù)庫進(jìn)行維護(hù)。

      3.2.2 數(shù)據(jù)庫維護(hù)模塊

      該模塊可以定期或不定期地對數(shù)據(jù)庫進(jìn)行備份和恢復(fù),保證數(shù)據(jù)的安全、完整與一致。

      3.2.3 數(shù)據(jù)管理模塊

      通過MapGIS提供的數(shù)據(jù)連接功能,管理員可以在服務(wù)器端對相應(yīng)的屬性信息和圖件進(jìn)行錄入、修改,實(shí)現(xiàn)數(shù)據(jù)的更新,保證數(shù)據(jù)的時效性,數(shù)據(jù)錄入對話框如圖4所示。

      圖4 數(shù)據(jù)錄入對話框

      4 總結(jié)

      系統(tǒng)依托局域網(wǎng)中的C/S(客戶端/服務(wù)器)模式管理一個縣的基礎(chǔ)測繪項(xiàng)目圖件,基本達(dá)到設(shè)計、測試要求。有效克服傳統(tǒng)圖件管理方式冗余大、查找不便、數(shù)據(jù)安全性低的弊端,將圖件管理由傳統(tǒng)的分散方式變?yōu)榧惺降挠薪M織管理[2]。

      但是,系統(tǒng)還存在著不足之處:(1)由于系統(tǒng)所使用的局域網(wǎng)中的C/S(客戶端/服務(wù)器)模式的限制,可以進(jìn)一步向B/S(瀏覽器/服務(wù)器)或者C/S、B/S相結(jié)合的模式進(jìn)行轉(zhuǎn)換。(2)由于VC++6.0與AutoCAD存在版本匹配問題,多幅打開時只能使用AutoCAD2004版本。(3)系統(tǒng)對一些數(shù)據(jù)結(jié)構(gòu)的采用有所不足,在后期的開發(fā)、改進(jìn)時,可以使用更多的數(shù)據(jù)結(jié)構(gòu),如改進(jìn)型的鏈表結(jié)構(gòu)等,減少運(yùn)行過程中對數(shù)據(jù)庫的頻繁操作,加快系統(tǒng)運(yùn)行速度。

      【參考文獻(xiàn)】

      [1]游珍. 基于地理信息技術(shù)的“數(shù)字礦山”應(yīng)用[EB/OL]. [2013-10-7].? http://www.doc88.com/p-333745817543.html.

      [2]洪佺. 基于C/S模式的工程勘察圖件信息管理系統(tǒng)設(shè)計[J]. 中國地質(zhì)災(zāi)害與防治學(xué)報,2006,17(1):86,89-90.

      [3]曹代勇,邢秀云,李娜,等. 基于MapGIS煤炭資源信息管理系統(tǒng)的設(shè)計與開發(fā)[J]. 煤炭科學(xué)技術(shù),2004,32(1):23.

      [4]索效容.基于 MapGIS 的煤礦礦產(chǎn)資源管理系統(tǒng)的設(shè)計與開發(fā)[J].測繪通報,2011(8):70.

      [5]彭東主.SQLServer2000應(yīng)用開發(fā)技術(shù)指南[M].北京:清華大學(xué)出版社,2001.

      [6]吳信才,鄭貴洲,何貞敏,等.地理信息系統(tǒng)設(shè)計與實(shí)現(xiàn)[M].2版.北京:電子工業(yè)出版社,2002.

      猜你喜歡
      S模式
      基于B/S模式的數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)平臺設(shè)計
      兴城市| 蒙山县| 华阴市| 姜堰市| 万州区| 武宣县| 凤城市| 平山县| 长沙市| 虞城县| 南江县| 库尔勒市| 武清区| 汪清县| 额敏县| 外汇| 鹤岗市| 中方县| 永年县| 平山县| 米易县| 内黄县| 南雄市| 新兴县| 比如县| 汶川县| 象山县| 凤山县| 绥芬河市| 辉南县| 唐河县| 乌恰县| 宝应县| 黄龙县| 临泽县| 崇明县| 大洼县| 高邮市| 永州市| 平陆县| 雷山县|