楊冬黎,富 宇,楊 雪
(1.大慶石油學院計算機與信息技術學院,黑龍江大慶163318;2.牡丹江醫(yī)學院影像診斷系,黑龍江牡丹江157011)
隨著油田開發(fā)及動態(tài)分析工作的不斷深入,地質(zhì)動態(tài)分析人員每天需要查詢各類油田開發(fā)動態(tài)和靜態(tài)數(shù)據(jù)資料.目前動態(tài)分析人員進行油水井措施方案編制時所涉及的井位圖、沉積相帶圖、小層數(shù)據(jù)、射孔數(shù)據(jù)、完井數(shù)據(jù)、施工總結、油水井生產(chǎn)數(shù)據(jù)、各項監(jiān)測資料等十余種相關資料還處于人工查找、借閱階段;后期進行單井注水方案設計、方案實施情況跟蹤及實施效果統(tǒng)計匯總時也靠人工統(tǒng)計,這種工作方式工作強度大、效率低,因此,如何提高對注水井分散數(shù)據(jù)的查詢統(tǒng)計是亟待解決的問題.
針對這些問題,本文開發(fā)了注水井分散數(shù)據(jù)統(tǒng)一管理平臺.該平臺實現(xiàn)了動態(tài)分析工作需要的數(shù)據(jù)和資料都可以在網(wǎng)上查詢、應用,使油田動態(tài)分析技術人員清楚掌握年度發(fā)放的各類方案,同時及時跟蹤方案實施情況,并進行實施后的效果統(tǒng)計分析與報表輸出,減輕動態(tài)分析人員工作強度,提高管理和運行效率.
注水井方案調(diào)整涉及的數(shù)據(jù)繁多而且相對比較分散,其中靜態(tài)數(shù)據(jù)、動態(tài)數(shù)據(jù)、油田檢測、井下作業(yè)各十余種.并且目前分散在不同oracle服務器上由不同專業(yè)人員管理.這種數(shù)據(jù)源模式利用復雜,數(shù)據(jù)同步更新較差,所以數(shù)據(jù)的統(tǒng)一管理和利用有著至關重要的作用.
通過油田注水井用戶對各種動態(tài)分析數(shù)據(jù)及檔案資料進行查詢,首先確定了注水井方案的設計流程,明確了各個設計階段的工作任務及所需要查詢和處理的數(shù)據(jù),工作流程圖如圖1所示.
圖1 工作流程圖
平臺由開采現(xiàn)狀圖查詢、油水井效果統(tǒng)計、油井基本信息查詢、水井基本信息查詢、連通關系維護等部分構成.借助于.NET技術、遠程訪問技術、SVG技術和數(shù)據(jù)庫等技術實現(xiàn)具體功能.下面僅以基于SVG技術實現(xiàn)的“開采現(xiàn)狀圖查詢”這個模塊為例,說明一下平臺中關鍵技術的運用與實現(xiàn).
SVG是Scalable Vector Graphics的縮寫,是一種基于XML描述二維圖形的圖形應用的語言[1].通過采用SVG技術,摒棄了傳統(tǒng)GIS系統(tǒng)成本高、對安裝客戶數(shù)量有限制、安裝維護困難的缺點.采用SVG使系統(tǒng)具有很高的靈活性和運行速度,即能實現(xiàn)按區(qū)塊動態(tài)構造井位圖,又能實現(xiàn)開采現(xiàn)狀信息的動態(tài)顯示.
在SVG的縮寫中,S代表Scalable即可伸縮,其意思是指可以不受單一固定的像素大小的限定增加或減小圖片.V代表Vector即矢量,一個帶有坐標與方向的數(shù)學名詞.矢量圖形由基本圖形對象如直線和曲線構成.其幾何的意義是從一個點移動到另一個點,在空間中的表現(xiàn)就是在2維或是3維空間中的一條直線.相比于存儲圖形每一個像素點信息的柵格格式圖像如PNG和JPEG來說,矢量有很大的靈活性.G代表Graphics即圖形,它是真實世界對象的圖形表示.在W3C規(guī)范中闡明,SVG由3種對象組成:矢量圖形(如由直線和曲線構成的路徑)、圖像和文本.圖形對象能夠被分組、樣式化、轉(zhuǎn)移和與先前的渲染對象組合.SVG支持復雜的圖形操作如嵌套、剪切路徑、Alpha版、濾鏡效果、模板對象和動畫效果.使用SVG Document Object Model(DOM)可以實現(xiàn)復雜的交互的SVG應用.DOM提供了訪問SVG所有元素及其屬性、性質(zhì).
利用SVG可以實現(xiàn)如下功能:
1)平移/縮放:SVG圖像能夠被平移/縮放而不必返回服務器端請求另一幅圖像并且不會損失圖像質(zhì)量.這是SVG地圖應用在網(wǎng)絡上的優(yōu)點.
2)交互:SVG地圖特征在瀏覽器端可以被選擇與交互.用戶在選定的一幅地圖中,選擇對象以及操作所有的圖層而不必返回到服務器.腳本語言可以實現(xiàn)與數(shù)據(jù)庫的聯(lián)接,這樣當鼠標點擊地圖上的對象時,就可以鏈接到數(shù)據(jù)庫中相應的表.同樣能通過鼠標點擊完成對空間信息的查詢,地圖上特征對象的識別等.
3)選擇元素顯示:結合腳本語言SVG允許交互的選擇顯示信息.
4)動畫:只使用SVG語言就可以實現(xiàn)動畫,就像通過腳本語言和DOM來實現(xiàn)一樣.
1)地圖的縮放、漫游
地圖的縮放[2]、漫游是SVG地圖瀏覽器的重要功能,為達到通過工具條中的按鈕來控制地圖縮放、漫游的目的,可將所有的地圖數(shù)據(jù)組織在一個地圖分組元素下(該元素的ID屬性可設為Map),即將整個地圖作為一個復合圖形組來看待.在這種情況下,就可通過設置該分組元素的transform屬性來實現(xiàn)地圖的縮放、漫游.transform屬性包含6個參數(shù),分別控制圖形的6種變形,即橫向縮放、縱向縮放、橫向傾斜、縱向傾斜、橫向移動和縱向移動.其中對于縮放、移位參數(shù)的設置可分別通過比例Scale(XscaleYscale)和移位translate(Xmove,Ymove)實現(xiàn).在具體實施時,需注意的是通過比例Scale和移位translate對transform屬性的設置效果是一次性的而不是累加的.此外,通過比例Scale所進行的地圖縮放是以地圖的左上角為基點實施的.因此,要想實現(xiàn)對地圖的縮放、漫游就需要對地圖同時進行比例Scale和移位translate操作.
2)屬性數(shù)據(jù)的查詢
屬性信息的查詢是地圖瀏覽的一項重要功能,要實現(xiàn)這個功能,首先需要了解屬性數(shù)據(jù)是如何在SVG文檔中進行組織的.一般來說,屬性數(shù)據(jù)采用2種方法與圖形進行連接,即外聯(lián)法和內(nèi)嵌法[3].
外聯(lián)法是指屬性數(shù)據(jù)與圖形數(shù)據(jù)分開存儲,SVG文檔中僅包含地物的圖形數(shù)據(jù),而屬性數(shù)據(jù)存放在服務器端的數(shù)據(jù)庫中,兩者通過地物標識號進行連接.當在客戶端進行屬性數(shù)據(jù)查詢時,客戶端可通過地物標識采用相應的技術在服務器端從數(shù)據(jù)庫中提取相應的數(shù)據(jù)在客戶端進行顯示.
內(nèi)嵌法則是將屬性數(shù)據(jù)與圖形數(shù)據(jù)包含同一個SVG文件中.
3)圖層的開關
由于在SVG地圖瀏覽器中所操作的SVG地圖是以分層的方式進行組織的,在該數(shù)據(jù)組織模式中,屬于一個圖層的地理特征數(shù)據(jù)組織在同一個分組元素下,且該分組元素的ID屬性設置為圖層的名稱,這樣對圖層的顯示控制就比較容易.如圖2所示.
圖2 地理空間數(shù)據(jù)層次組織模式
SVG中提供了 <g>元素,代表 “Group”(組),用來將一批特征類似的圖像元素定義為一個集合,這與地圖圖層管理的概念是不謀而合的.用戶可以在客戶端通過JavaScript腳本語言來對不同“圖層”的圖像元素來進行操作.
其基本的操作是在 <g>中加入一個屬性數(shù)據(jù)visibility,然后在JavaScript中定義一個功能函數(shù),利用其來控制 <g>的屬性visibility,將其設成visib le時,就顯示該圖層,將其設成hidden時,就來隱藏該圖層.
“開采現(xiàn)狀圖”是注水井方案編制人員非常常用的輔助工具,以前開發(fā)動態(tài)人員使用的“開采現(xiàn)狀圖”是用AutoCAD等工具繪制出來的靜態(tài)圖紙,它的缺點是:①“開采現(xiàn)狀圖”上的信息是靜態(tài)的,不能反映有關井最新的生產(chǎn)狀況;②“開采現(xiàn)狀圖”本身是靜態(tài)的,不能按用戶的需求隨意生成.
為了方便開發(fā)動態(tài)人員在設計注水井方案時可以方便快捷地生成和查詢有關信息,我們利用SVG技術實現(xiàn)了動態(tài)構造“開采現(xiàn)狀圖”.
在“開采現(xiàn)狀圖”顯示界面,用戶可以選擇一個或多個區(qū)塊、選擇開采現(xiàn)狀的對比時間,系統(tǒng)即可為用戶查詢相應的數(shù)據(jù)并動態(tài)生成相應的“開采現(xiàn)狀圖”,在此圖中,不同井別的數(shù)據(jù)顯示在不同的圖層上,并且設計相應的操作界面允許用戶進行圖層的打開和關閉操作,以便在井數(shù)過多、顯示信息過密的情況下簡化顯示信息.
圖3為放大了的“開采現(xiàn)狀圖”,可以清晰地看出,不同類型的井用不同的顏色表示,油井的開采現(xiàn)狀信息由“液、油、含水、沉沒度”組成,水井的開采現(xiàn)狀信息由“油壓、套壓、配注、實注”組成,為了便于用戶對比,對于油井的四種信息還給出了箭頭描述的趨勢信息.每口井的開采現(xiàn)狀信息還包括壓力信息,油井和水井的開采現(xiàn)狀信息分別如圖4、5所示.
為了便于用戶工作,“開采現(xiàn)狀圖”上還顯示了斷層線、油水分界線等信息.通過“開采現(xiàn)狀圖”,用戶可以直觀地了解井位信息以及直接獲取重要的開采現(xiàn)狀信息,但用戶常常還需要進一步查詢相關井的其它信息,為了便于用戶操作,“開采現(xiàn)狀圖”還具有選擇井的功能,用戶可以通過點擊選擇油井或水井,然后點擊“選定井詳細信息查看”按鈕,即會出現(xiàn)圖6所示的用戶界面,在此界面下,用戶可以直接點擊查詢選定井的相關信息,相應的查詢窗口會出現(xiàn),“井號”信息已經(jīng)填好,用戶可以直接進行相應的查詢.這樣的界面設計,使得“開采現(xiàn)狀圖”成為用戶選擇相關問題井的核心界面,減少了用戶的輸入量、極大地方便了用戶的操作.
以油田應用為背景,建立了注水井分散數(shù)據(jù)統(tǒng)一管理平臺,對分散的數(shù)據(jù)起到了管理作用.并對采油二廠注水井方案調(diào)整實際生產(chǎn)工作做以輔助,取得了良好的成果.
[1]蔡安寧.基于SVG的旅游電子地圖設計與發(fā)布[J].測繪與空間地理信息,2009,32(5):74-75.
[2]張 妍,奚 玲.實現(xiàn)大地圖快速縮放和實時顯示的一種有效方法[J].圖像微處理,2006,22(1):193-195.
[3]文必龍,劉學爽,張頌早.基于XML油田井場數(shù)據(jù)加載軟件的設計與實現(xiàn)[J].哈爾濱商業(yè)大學學報:自然科學版,2009,25(2):174-177,186.