• 
    

    
    

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

      ?

      基于SQLite數(shù)據(jù)文件的配網(wǎng)GIS自動成圖方法

      2015-09-14 02:18:34胡睿瑾
      中國管理信息化 2015年21期
      關(guān)鍵詞:數(shù)據(jù)文件校驗圖形

      胡睿瑾

      (云南電網(wǎng)有限責任公司昆明供電局,昆明 650011)

      基于SQLite數(shù)據(jù)文件的配網(wǎng)GIS自動成圖方法

      胡睿瑾

      (云南電網(wǎng)有限責任公司昆明供電局,昆明 650011)

      主要闡述了從SQLite數(shù)據(jù)包到配網(wǎng)GIS系統(tǒng)中電網(wǎng)設(shè)備數(shù)據(jù)的自動轉(zhuǎn)換過程。包括通過SQLite數(shù)據(jù)文件實現(xiàn)移動端和配網(wǎng)GIS系統(tǒng)的數(shù)據(jù)交互,在配網(wǎng)GIS系統(tǒng)內(nèi)實現(xiàn)SQLite文件的讀取、數(shù)據(jù)驗證、自動成圖、自動建立電氣拓撲等一系列的自動操作。

      SQLite;配網(wǎng)GIS;自動成圖

      1 前言

      配網(wǎng)GIS系統(tǒng)作為配網(wǎng)設(shè)備圖形數(shù)據(jù)、屬性數(shù)據(jù)、拓撲數(shù)據(jù)的管理平臺,可以為配網(wǎng)工作人員提供完整的配網(wǎng)網(wǎng)架信息、配網(wǎng)設(shè)備信息,為配網(wǎng)管理提供信息化手段。但由于配網(wǎng)設(shè)備數(shù)量巨大,如采用傳統(tǒng)的數(shù)據(jù)維護手段,逐個地進行手工錄入和維護,需要大量的數(shù)據(jù)錄入人員,在配網(wǎng)GIS系統(tǒng)中進行長時間的數(shù)據(jù)維護工作,且存在維護工作量大、投入資金多、容易出錯的問題。

      另一方面,隨著智能移動設(shè)備的發(fā)展,通過移動端進行數(shù)據(jù)采集的技術(shù)也日趨成熟。通過移動端進行現(xiàn)場采集,再從移動端將數(shù)據(jù)導入配網(wǎng)GIS進行自動成圖就成為了業(yè)務(wù)發(fā)展的迫切需求。

      2 SQLite簡介

      SQLite是一款輕型的數(shù)據(jù)庫,實現(xiàn)了自給自足的、無服務(wù)器的、零配置的、事務(wù)性的SQL數(shù)據(jù)庫引擎,是遵守ACID的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它的設(shè)計目標是在嵌入式設(shè)備使用,目前已經(jīng)在很多嵌入式產(chǎn)品中使用[1]。其占用資源非常的低,在嵌入式設(shè)備中,只需要很低的內(nèi)存就夠了,并且能夠支持Windows/ Linux/Unix等主流的操作系統(tǒng),同時能夠跟很多程序語言相結(jié)合,比如C#、PHP、Java等。

      SQLite具有以下特點:

      ·SQLite不需要配置,這意味著不需要安裝或管理。

      ·一個完整的SQLite數(shù)據(jù)庫是就是一個單一的跨平臺的磁盤文件。

      ·SQLite是非常小的,是輕量級的,完全配置時小于400KiB,省略可選功能配置時小于250KiB。

      ·SQLite是自給自足的,這意味著不需要任何外部的依賴。

      ·SQLite事務(wù)是完全兼容ACID的,允許從多個進程或線程安全訪問。

      ·SQLite支持SQL92(SQL2)標準的大多數(shù)查詢語言的功能。

      ·SQLite使用ANSI-C編寫的,并提供了簡單和易于使用的API。

      ·SQLite可在 UNIX(Linux,Mac OS-X,Android,iOS)和Windows(Win32,WinCE)中運行。

      基于以上的特點,本方法采用SQLite作為移動端的數(shù)據(jù)庫,并且將其作為移動端和配網(wǎng)GIS系統(tǒng)間交互的文件格式。

      3 配網(wǎng)GIS自動成圖

      3.1SQLite數(shù)據(jù)文件的讀取

      移動端完成數(shù)據(jù)采集后,只需要將SQLite文件傳送給配網(wǎng)GIS,后續(xù)的操作由配網(wǎng)GIS系統(tǒng)完成。SQLite的數(shù)據(jù)文件為*.db類型的文件,本文所述的配網(wǎng)GIS是采用C#開發(fā)的Windows應用程序。因此,此處主要描述通過C#對db文件進行解析和讀取。

      System.Data.SQLite是一個開源的 SQLite類庫,現(xiàn)在由SQLite小組維護。這個類庫無需.NET Framework支持,它內(nèi)部包含了一個ADO.NET 2.0引擎,所以.NET開發(fā)人員可以利用System.Data.SQLite方便地開發(fā).NET程序。System.Data.SQLite實現(xiàn)了眾多的接口和方法,支持對db文件的各類讀、寫操作。為了便于后續(xù)的驗證和成圖,減少數(shù)據(jù)通信的次數(shù),本方法通過System.Data.SQLite類庫,一次性將移動端上傳的db文件讀取至配網(wǎng)GIS系統(tǒng)的中進行緩存。

      如將db文件的讀取至DataSet,代碼如下:

      3.2數(shù)據(jù)質(zhì)量校驗

      配網(wǎng)GIS系統(tǒng)對數(shù)據(jù)質(zhì)量有著嚴格的要求,因此在生成配網(wǎng)設(shè)備之前需要根據(jù)配網(wǎng)GIS系統(tǒng)預定義的數(shù)據(jù)規(guī)則進行校驗。如果有不滿足規(guī)則的數(shù)據(jù)會進行相應的提示,需要將問題數(shù)據(jù)修改正確后才能進行導入。

      為了方便隨時對db文件中數(shù)據(jù)進行校驗,滿足用戶進行離線的需求,將配網(wǎng)GIS系統(tǒng)對數(shù)據(jù)質(zhì)量要求進行提煉,得到了配網(wǎng)GIS系統(tǒng)的數(shù)據(jù)質(zhì)量校驗規(guī)則。并把這些規(guī)則導出為db文件,將規(guī)則數(shù)據(jù)保存到一個單獨的SQLite數(shù)據(jù)庫中,以便于校驗工具在離線的情況下讀取db文件信息進行數(shù)據(jù)校驗,而無需等到登錄系統(tǒng)后再進行校驗。

      ·校驗所有必填字段是否有值。

      ·校驗有備選值的字段是否在備選值中。

      ·校驗設(shè)備的功能位置是否存在。

      ·校驗技術(shù)參數(shù)對應的設(shè)備是否存在。

      ·校驗饋線的電源點是否正確。

      ·校驗設(shè)備的前一構(gòu)筑是否存在。

      ·從電源點開始,校驗所有構(gòu)筑設(shè)備的順序是否正確?!ばr灅?gòu)筑設(shè)備和線纜設(shè)備的連接是否正確

      3.3自動成圖

      配網(wǎng)GIS系統(tǒng)中的設(shè)備信息只要有3類數(shù)據(jù),分別是:屬性數(shù)據(jù)、圖形數(shù)據(jù)、拓撲數(shù)據(jù)。其中,圖形數(shù)據(jù)和拓撲數(shù)據(jù)是GIS系統(tǒng)中特有的,本文重點闡述此兩類數(shù)據(jù)的生成,而屬性數(shù)據(jù)和其他的信息系統(tǒng)一樣,在此不進行詳細闡述。

      現(xiàn)代水文考察發(fā)現(xiàn)漢江有三源:中源漾水,北源沮水,南源玉帶河,均在秦嶺南麓陜西省寧強縣境內(nèi)。流經(jīng)沔縣(今勉縣)稱沔水,東流至漢中始稱漢水;自安康至丹江口段,古稱滄浪水。

      3.3.1生成圖形數(shù)據(jù)

      配網(wǎng)GIS系統(tǒng)中主要包括3類圖形數(shù)據(jù):點、線、面。其中以點和線為主,比如:桿塔、柱上開關(guān)、柱上變壓器等屬于點設(shè)備,而導線、電纜等屬于線設(shè)備。由于Oracle數(shù)據(jù)庫中圖形采用MDSYS.SDO_GEOMETRY類型表示,而db文件中的主要是坐標數(shù)據(jù)(x,y,z),因此需要進行一定的轉(zhuǎn)換才將db文件中的坐標信息寫入到數(shù)據(jù)庫中。

      為了最大化地復用代碼,將點和線圖形抽象為IGTGeometry,從而實現(xiàn)對點設(shè)備和線設(shè)備的統(tǒng)一處理。這需要聲明一個圖形接口類,以下是偽碼:

      3.3.2生成拓撲數(shù)據(jù)

      為了保證拓撲數(shù)據(jù)的正確性,本文采用先圖形后拓撲的思路,即等到所有的圖形數(shù)據(jù)都生成完畢后,再生成拓撲關(guān)系。由于配網(wǎng)GIS中的拓撲關(guān)系屬于多對多的關(guān)系,采用先圖形后拓撲的方法可以避免關(guān)系丟失或者不完整的問題。配網(wǎng)GIS中的拓撲數(shù)據(jù)主要包括2類,分別為包含關(guān)系和連接關(guān)系。

      生成包含關(guān)系是采用“多退少補”的思路,即刪除已經(jīng)不存在的關(guān)系,增加新建的關(guān)系,生成包含關(guān)系的偽碼如下:

      //獲取此設(shè)備已經(jīng)包含的線設(shè)備信息

      var currentContainFeats=PowerNode.GTObject.GetContain-Features();

      //在原關(guān)系中存在的,在新關(guān)系中不存在的,刪除

      DeleteNotExistOldContainRelation(currentContainFeats);

      //在新關(guān)系中存在的,在原關(guān)系中不存在的,新增

      AddNewContainRelation(currentContainFeats);

      生成連接關(guān)系方法與包含關(guān)系類似,同樣采用“多退少補”的方法。偽碼如下:

      //處理構(gòu)筑節(jié)點和前一導線的關(guān)系

      var targetConn=new List〈IGTKeyObject>{PowerNode. GTObject};

      UpdateConnectRelationByDiff(preWireObject.GTObject,targetConn);

      //處理構(gòu)筑節(jié)點和后續(xù)導線的關(guān)系

      targetConnFeats=_relatedWires.ToList();

      targetConnFeats.Remove(preWireObject.GTObject);

      UpdateConnectRelationByDiff(PowerNode.GTObject,target-ConnFeats);

      4 結(jié)語

      本文主要闡述了通過SQLite數(shù)據(jù)文件為載體,實現(xiàn)db文件到配網(wǎng)GIS系統(tǒng)設(shè)備信息的轉(zhuǎn)換過程。主要包括在配網(wǎng)GIS系統(tǒng)內(nèi)讀取db文件,進行數(shù)據(jù)驗證、自動成圖、自動建立電氣拓撲等一系列的自動操作。本文所述的方法已經(jīng)在實際配網(wǎng)業(yè)務(wù)中得到應用,實現(xiàn)了配網(wǎng)GIS設(shè)備的自動生成,為提升配網(wǎng)GIS的數(shù)據(jù)采集效率提供了技術(shù)支持手段。

      10.3969/j.issn.1673-0194.2015.21.099

      TN919

      A

      1673-0194(2015)21-0191-03

      2015-09-07

      猜你喜歡
      數(shù)據(jù)文件校驗圖形
      數(shù)據(jù)文件恢復專題問答
      數(shù)據(jù)文件安全管控技術(shù)的研究與實現(xiàn)
      爐溫均勻性校驗在鑄鍛企業(yè)的應用
      SQL數(shù)據(jù)文件恢復工具
      分圖形
      找圖形
      圖形變變變
      大型電動機高阻抗差動保護穩(wěn)定校驗研究
      電測與儀表(2015年1期)2015-04-09 12:03:02
      基于加窗插值FFT的PMU校驗方法
      鍋爐安全閥在線校驗不確定度評定
      泗水县| 枣阳市| 光山县| 军事| 铜鼓县| 平昌县| 龙口市| 遵义县| 运城市| 奉化市| 盖州市| 阿拉善左旗| 绥阳县| 明水县| 茂名市| 炉霍县| 株洲市| 达拉特旗| 隆昌县| 慈溪市| 河池市| 南涧| 镇平县| 宁化县| 沭阳县| 来凤县| 四会市| 岳西县| 武宣县| 七台河市| 龙岩市| 昆山市| 平阴县| 浮梁县| 科尔| 合川市| 潢川县| 沿河| 普宁市| 荃湾区| 舟曲县|