圖驅(qū)動(dòng)首先被轉(zhuǎn)化為統(tǒng)一繪圖引擎使用的無類型指針參數(shù),然后通過統(tǒng)一繪圖引擎提供的設(shè)置繪圖驅(qū)動(dòng)接口把具體語言繪圖驅(qū)動(dòng)傳入統(tǒng)一繪圖引擎。統(tǒng)一繪圖引擎對外提供統(tǒng)一繪圖接口,是可視化開發(fā)所用到的直接繪圖引擎。統(tǒng)一繪圖引擎對應(yīng)一種多語言支持的測井?dāng)?shù)據(jù)可視化系統(tǒng)中的繪圖引擎模塊305。
[0044]步驟203:統(tǒng)一繪圖引擎根據(jù)驅(qū)動(dòng)選擇具體繪圖引擎;
[0045]具體繪圖引擎是統(tǒng)一繪圖引擎接口的具體實(shí)現(xiàn),重現(xiàn)實(shí)現(xiàn)了統(tǒng)一繪圖引擎中的所有繪制接口,每種繪圖驅(qū)動(dòng)對應(yīng)一個(gè)具體繪圖引擎。統(tǒng)一繪圖引擎首先根據(jù)傳入的繪圖驅(qū)動(dòng)匹配對應(yīng)的具體繪圖引擎,最后由匹配到的具體繪圖引擎調(diào)用傳入的繪圖驅(qū)動(dòng)實(shí)現(xiàn)具體繪制動(dòng)作。具體繪圖引擎一種多語言支持的測井?dāng)?shù)據(jù)可視化系統(tǒng)中的引擎模塊306。
[0046]步驟204:繪圖引擎實(shí)現(xiàn)在繪圖設(shè)備上成圖;
[0047]具體繪圖引擎通過傳入的繪圖驅(qū)動(dòng)固有的系統(tǒng)繪圖接口實(shí)現(xiàn)在不同設(shè)備上繪制成圖,設(shè)備可以是計(jì)算機(jī)顯示器,用于將可視化結(jié)果顯示在計(jì)算機(jī)顯示屏上,也可以是打印機(jī)、繪圖儀,用于將可視化結(jié)果打印出來,以供研究分析使用。
[0048]本發(fā)明支持多種開發(fā)語言的可視化,對外提供了統(tǒng)一的繪圖接口,屏蔽了底層實(shí)現(xiàn)細(xì)節(jié)、開發(fā)語言及設(shè)備差異,具有跨平臺的特性。
[0049]實(shí)施例二
[0050]本發(fā)明實(shí)施例提供一種多語言支持的測井?dāng)?shù)據(jù)可視化系統(tǒng),如圖2所示,該系統(tǒng)包括:
[0051]多語言支持測井可視化模塊301,用于對外提供統(tǒng)一的繪圖操作接口,與應(yīng)用程序30直接交互,接收用戶的訪問請求,負(fù)責(zé)調(diào)度系統(tǒng)內(nèi)的數(shù)據(jù)組織模塊302、繪圖插件模塊304、繪圖引擎模塊305及繪圖輔助模塊307,實(shí)現(xiàn)測井應(yīng)用程序的可視化響應(yīng)。
[0052]數(shù)據(jù)組織模塊302,以測井處理解釋的需要為依據(jù),根據(jù)可視化圖件要求把原始測井信息加工組織成可視化所需要的數(shù)據(jù)結(jié)構(gòu),然后提交給繪圖插件304進(jìn)行繪圖處理,是整個(gè)可視化系統(tǒng)的數(shù)據(jù)輸入。
[0053]基礎(chǔ)繪圖組件庫模塊303,提供了基礎(chǔ)的繪圖組件。繪圖組件是對多個(gè)可視化圖件公用繪圖功能的封裝,使用組件可以實(shí)現(xiàn)拖放式編程、快速的屬性處理以及真正的面向?qū)ο蟮脑O(shè)計(jì)。為可視化圖件模塊304提供基礎(chǔ)繪制功能單元,可快速組裝成可視化圖件。
[0054]可視化圖件模塊304,用于提供用戶可見的成品級可視化圖件,通過基礎(chǔ)繪圖組件庫模塊303實(shí)現(xiàn)可視化圖件的快速組裝,通過繪圖引擎模塊305實(shí)現(xiàn)繪制動(dòng)作。
[0055]繪圖引擎模塊305,它提供了操作繪圖設(shè)備上下文的相關(guān)繪圖接口,接收設(shè)備驅(qū)動(dòng),對外提供統(tǒng)一的繪圖接口,為可視化圖件模塊304提供直接繪圖支持,同時(shí)為引擎模塊306提供入口選擇。
[0056]引擎模塊306,重現(xiàn)實(shí)現(xiàn)了繪圖引擎模塊305的所有抽象繪制接口,是繪制的最終執(zhí)行者,實(shí)現(xiàn)了常用的MFC、Java、C#、PDF、CGM等繪圖引擎。支持對其他繪圖引擎的擴(kuò)展,可擴(kuò)展性強(qiáng)。同時(shí),可實(shí)現(xiàn)多引擎間的快速切換,比如CGM導(dǎo)出和TOF導(dǎo)出功能即是通過快速引擎切換實(shí)現(xiàn)的。
[0057]繪圖輔助模塊307,用于實(shí)現(xiàn)多語言支持測井?dāng)?shù)據(jù)可視化系統(tǒng)中的一些輔助功能實(shí)現(xiàn),比如打印、序列化等功能。
[0058]在本實(shí)施例提供的多語言支持測井?dāng)?shù)據(jù)可視化系統(tǒng),能夠很方便的增加對新語言的擴(kuò)展支持,具有很強(qiáng)的擴(kuò)展性,能夠滿足現(xiàn)場不同開發(fā)語言背景的用戶的可視化圖件開發(fā)要求。并且繪圖的多語言快速切換,達(dá)到基本一致的繪圖效果,為測井處理解釋提供有效的可視化支持。
[0059]以上所述的具體實(shí)施例,對本發(fā)明的技術(shù)方案、實(shí)施方式及有益效果進(jìn)行了進(jìn)一步詳細(xì)說明,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想,并不用于限定本發(fā)明的保護(hù)范圍;凡在本發(fā)明的精神和原則之內(nèi),在【具體實(shí)施方式】及應(yīng)用范圍上所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1.一種多語言支持的測井?dāng)?shù)據(jù)可視化方法,其特征在于,包括以下步驟: 1)根據(jù)開發(fā)語言和繪圖設(shè)備構(gòu)建繪圖驅(qū)動(dòng); 2)繪圖驅(qū)動(dòng)傳入統(tǒng)一繪圖引擎; 3)統(tǒng)一繪圖引擎根據(jù)驅(qū)動(dòng)選擇具體繪圖引擎; 4)具體繪圖引擎實(shí)現(xiàn)在繪圖設(shè)備上成圖。2.根據(jù)權(quán)利要求1所述的一種多語言支持的測井?dāng)?shù)據(jù)可視化方法,其特征在于,步驟I)中,根據(jù)不同的開發(fā)語言和繪圖設(shè)備,構(gòu)建繪圖驅(qū)動(dòng),即具體設(shè)備的上下文對象,提供了操作繪圖設(shè)備上下文的相關(guān)繪圖接口。3.根據(jù)權(quán)利要求2所述的一種多語言支持的測井?dāng)?shù)據(jù)可視化方法,其特征在于,Qt語言的繪圖驅(qū)動(dòng)就是QPainter,MFC語言的繪圖驅(qū)動(dòng)是CDC,C#語言的繪圖驅(qū)動(dòng)是Graphics。4.根據(jù)權(quán)利要求1所述的一種多語言支持的測井?dāng)?shù)據(jù)可視化方法,其特征在于,步驟2)中,繪圖驅(qū)動(dòng)首先被轉(zhuǎn)化為統(tǒng)一繪圖引擎使用的無類型指針參數(shù),然后通過統(tǒng)一繪圖引擎提供的設(shè)置繪圖驅(qū)動(dòng)接口把具體語言繪圖驅(qū)動(dòng)傳入統(tǒng)一繪圖引擎。5.根據(jù)權(quán)利要求1所述的一種多語言支持的測井?dāng)?shù)據(jù)可視化方法,其特征在于,步驟3)中,具體繪圖引擎是統(tǒng)一繪圖引擎接口的具體實(shí)現(xiàn),重現(xiàn)實(shí)現(xiàn)了統(tǒng)一繪圖引擎中的所有繪制接口,每種繪圖驅(qū)動(dòng)對應(yīng)一個(gè)具體繪圖引擎;統(tǒng)一繪圖引擎首先根據(jù)傳入的繪圖驅(qū)動(dòng)匹配對應(yīng)的具體繪圖引擎,最后由匹配到的具體繪圖引擎調(diào)用傳入的繪圖驅(qū)動(dòng)實(shí)現(xiàn)具體繪制動(dòng)作。6.根據(jù)權(quán)利要求1所述的一種多語言支持的測井?dāng)?shù)據(jù)可視化方法,其特征在于,步驟4)中,具體繪圖引擎通過傳入的繪圖驅(qū)動(dòng)固有的系統(tǒng)繪圖接口實(shí)現(xiàn)在不同設(shè)備上繪制成圖。7.一種多語言支持的測井?dāng)?shù)據(jù)可視化系統(tǒng),其特征在于,所述的系統(tǒng)包括: 多語言支持測井可視化模塊,用于對外提供統(tǒng)一的繪圖操作接口,與應(yīng)用程序直接交互,接收用戶的訪問請求,負(fù)責(zé)調(diào)度系統(tǒng)內(nèi)的數(shù)據(jù)組織模塊、繪圖插件模塊、繪圖引擎模塊及繪圖輔助模塊,實(shí)現(xiàn)測井應(yīng)用程序的可視化響應(yīng); 數(shù)據(jù)組織模塊,用于以測井處理解釋的需要為依據(jù),根據(jù)可視化圖件要求把原始測井信息加工組織成可視化所需要的數(shù)據(jù)結(jié)構(gòu),然后提交給繪圖插件進(jìn)行繪圖處理,是整個(gè)可視化系統(tǒng)的數(shù)據(jù)輸入; 基礎(chǔ)繪圖組件庫模塊,用于提供基礎(chǔ)的繪圖組件,其中繪圖組件是對多個(gè)可視化圖件公用繪圖功能的封裝,使用組件可以實(shí)現(xiàn)拖放式編程、快速的屬性處理以及真正的面向?qū)ο蟮脑O(shè)計(jì),為可視化圖件模塊提供基礎(chǔ)繪制功能單元,能夠快速組裝成可視化圖件; 可視化圖件模塊,用于提供用戶可見的成品級可視化圖件,通過基礎(chǔ)繪圖組件庫模塊實(shí)現(xiàn)可視化圖件的快速組裝,通過繪圖引擎模塊實(shí)現(xiàn)繪制動(dòng)作; 繪圖引擎模塊,用于提供操作繪圖設(shè)備上下文的相關(guān)繪圖接口,接收設(shè)備驅(qū)動(dòng),對外提供統(tǒng)一的繪圖接口,為可視化圖件模塊提供直接繪圖支持,同時(shí)為引擎模塊提供入口選擇; 引擎模塊,用于重現(xiàn)實(shí)現(xiàn)繪圖引擎模塊的所有抽象繪制接口,是繪制的最終執(zhí)行者,實(shí)現(xiàn)了常用的(^?(:、拓抑工#、1^、061繪圖引擎;支持對其他繪圖引擎的擴(kuò)展,可擴(kuò)展性強(qiáng),同時(shí),實(shí)現(xiàn)多引擎間的快速切換; 繪圖輔助模塊,用于實(shí)現(xiàn)多語言支持測井?dāng)?shù)據(jù)可視化系統(tǒng)中的一些輔助功能實(shí)現(xiàn)。
【專利摘要】本發(fā)明提供了一種多語言支持的測井?dāng)?shù)據(jù)可視化方法及系統(tǒng),該系統(tǒng)包括:測井?dāng)?shù)據(jù)組織模塊,用于把測井?dāng)?shù)據(jù)組織成可視化所需要的數(shù)據(jù)格式;基礎(chǔ)繪圖組件模塊,提供基礎(chǔ)繪圖組件,作為基本繪圖單元可以組裝成復(fù)雜度更高的可視化圖件;可視化圖件模塊,提供常用的成熟繪圖圖件,滿足用戶的測井?dāng)?shù)據(jù)成圖要求;繪圖引擎模塊,在指定的繪圖設(shè)備上提供多語言繪制功能;繪圖輔助模塊,提供圖件序列化、打印及圖片導(dǎo)出功能;本發(fā)明解決不同語言開發(fā)自定義圖件問題,滿足現(xiàn)場測井處理解釋應(yīng)用的可視化要求。
【IPC分類】G06F17/30, G06F9/44
【公開號】CN105528211
【申請?zhí)枴緾N201510885098
【發(fā)明人】陳小磊, 周軍, 杜欽波, 劉昱晟, 段先斐, 倪路橋
【申請人】中國石油天然氣集團(tuán)公司, 中國石油集團(tuán)測井有限公司
【公開日】2016年4月27日
【申請日】2015年12月4日