国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于MapGIS的鉆孔柱狀圖自動生成系統(tǒng)研發(fā)

2020-08-25 02:02張永輝
河南科技 2020年19期
關鍵詞:二次開發(fā)

張永輝

摘 要:針對手工繪制地質(zhì)圖件煩瑣而重復的過程,本文選用MapGIS K9作為開發(fā)平臺,在Visual Studio環(huán)境中,使用C#語言和COM組件技術(shù)研發(fā)了一個計算機技術(shù)支持下的鉆孔柱狀圖自動繪制系統(tǒng)。系統(tǒng)建成后,利用河南省煤田地質(zhì)局二隊所提供的補1號鉆孔數(shù)據(jù)其進行了測試。結(jié)果表明,該系統(tǒng)能達到省時、省力和高效的目的。

關鍵詞:MapGIS;二次開發(fā);鉆孔柱狀圖;自動成圖

中圖分類號:TP391.41文獻標識碼:A文章編號:1003-5168(2020)19-0013-03

Abstract: In view of the tedious and repeated process of drawing geological maps by hand, a practical program that can automatically generate histograms is developed. This paper introduces the content of system design from the aspects of design principle, overall structure, development process and development environment configuration. The development and realization process of the automatic generation system of borehole histogram based on MapGIS is introduced in detail from the aspects of system key algorithm implementation, database design and implementation, and histogram drawing. After the completion of the system, the data of No.1 borehole provided by the second team of Henan Coalfield Geological Bureau was used for testing. The results show that the system can save time, labor and efficiency.

Keywords: MapGIS;secondary development;borehole histogram;automatic mapping

鉆孔柱狀圖是煤田必備的綜合性圖件之一,是根據(jù)鉆孔過程中所得到的資料,按巖層新老關系的排列順序,將巖層恢復到水平狀態(tài)后繪制出的一種圖紙[1]。鉆孔柱狀圖在礦井生產(chǎn)前期以及整個生產(chǎn)過程中都起著非常重要的作用[2]。鉆孔柱狀圖的繪制工作在20世紀80年代以前主要靠手工繪制完成,因工作量大,工序煩瑣,重復過程多,人工繪制費時費力,成圖質(zhì)量難以保證,不僅浪費大量的人力和物力,而且成圖慢、效率低,難以滿足實際生產(chǎn)的需要[3]。20世紀80年代以后,多數(shù)柱狀圖是由計算機成圖的,主要通過掃描矢量化完成。這樣的柱狀圖雖然在信息共享和傳遞上有一定的進步,但同樣存在繪制時間長、效率低、精確度差、編輯困難等問題,無法滿足一些工期緊、任務重的資料處理工作的需求[4-5]。針對上述鉆孔柱狀圖繪制存在的不足,本文選用MapGIS K9作為開發(fā)平臺,在Visual Studio環(huán)境中,使用C#語言和COM(Component Object Model)組件技術(shù)[6]研發(fā)了一個計算機技術(shù)支持下的鉆孔柱狀圖自動繪制系統(tǒng),以提高繪圖精度,節(jié)約工作時間,避免人為操作可能造成的錯誤,提高工作效率[7-9]。

1 系統(tǒng)的功能分析與確定

本文的研究目標是,在廣泛調(diào)研的基礎上,根據(jù)用戶實際需求,研究并建立一個能集成多種數(shù)據(jù)源、數(shù)據(jù)采集手段方便快捷、成本低廉、作業(yè)速度快、精度高、信息豐富、兼容性高、操作簡便的鉆孔柱狀圖快速生成系統(tǒng)。

1.1 利用手工方式的圖件繪制過程

鉆孔柱狀圖自動生成系統(tǒng)是建立在手工繪圖基礎上的,因此,要對手工繪圖過程進行分析。首先,地質(zhì)技術(shù)人員需要對野外采集的數(shù)據(jù)進行簡單計算,根據(jù)國家規(guī)范擬定圖件繪制方案,確定比例尺。其次,根據(jù)規(guī)范繪制圖頭、查野外編錄及其規(guī)范、根據(jù)比例尺計算中間結(jié)果、繪制線圖元及點圖元,再查野外編錄、根據(jù)比例尺計算中間結(jié)果、繪制下一個線圖元及點圖元,循環(huán)至圖件完成[10]。整個過程復雜且極容易出錯。

1.2 系統(tǒng)功能確定

通過對手工繪制圖件步驟進行分析,利用計算機對其過程進行了優(yōu)化與歸納[11]。據(jù)此,研究者系統(tǒng)劃分為4個模塊:數(shù)據(jù)操作模塊、柱狀圖繪制模塊、圖形輸出模塊、數(shù)據(jù)庫管理模塊。其中,數(shù)據(jù)操作模塊主要實現(xiàn)鉆孔數(shù)據(jù)的導入、更新、分條錄入、導出等;柱狀圖繪制模塊實現(xiàn)鉆孔柱狀圖自動繪制,并對新舊鉆孔柱狀圖進行對比;圖形輸出模塊可實現(xiàn)多種圖形輸出格式,滿足用戶的不同需要;數(shù)據(jù)庫管理模塊主要是對標準數(shù)據(jù)庫進行管理。

2 系統(tǒng)實現(xiàn)

2.1 數(shù)據(jù)操作模塊的實現(xiàn)

數(shù)據(jù)操作模塊包括導入數(shù)據(jù)、更新數(shù)據(jù)、添加數(shù)據(jù)、導出數(shù)據(jù)4大功能。其中,導入數(shù)據(jù)支持直接將Excel表格中的數(shù)據(jù)導入數(shù)據(jù)庫;也可實現(xiàn)不同類型數(shù)據(jù)庫之間數(shù)據(jù)的導入,如SQL Server或者Oracle數(shù)據(jù)導入GDB企業(yè)管理器中;還可實現(xiàn)相同類型數(shù)據(jù)庫之間的數(shù)據(jù)導入,如GDB企業(yè)管理器中的不同數(shù)據(jù)庫。更新數(shù)據(jù)功能是指對用戶選擇的數(shù)據(jù)進行更新。添加數(shù)據(jù)功能實現(xiàn)了數(shù)據(jù)的實時更新。導出數(shù)據(jù)功能可以將數(shù)據(jù)庫中的多種格式數(shù)據(jù)導出為6x表文件或者TXT文件。

2.2 繪制柱狀圖模塊的實現(xiàn)及需要注意的問題

2.2.1 繪制柱狀圖模塊的實現(xiàn)。鉆孔柱狀圖的繪制過程如圖1所示。

整個鉆孔柱狀圖可以看成是由一列一列組成的,每一列都是由圖頭和內(nèi)容構(gòu)成的。用戶可以根據(jù)需要,將不同的列組合起來,形成不同模式的鉆孔柱狀圖。因此,這里采用復選框的形式,用戶可以根據(jù)需要,選擇復選框,鉆孔柱狀圖中就生成相應的列。

每天都在掘進的鉆孔,每天都會更新鉆孔數(shù)據(jù)資料。為了便于對每天的鉆孔資料進行分析,對比新舊的鉆孔數(shù)據(jù),就要對新舊鉆孔柱狀圖進行對比。該系統(tǒng)具有分條錄入的功能,用戶可以將當天更新的鉆孔數(shù)據(jù)資料分條錄入數(shù)據(jù)庫,重新生成新的鉆孔柱狀圖,并與舊的鉆孔柱狀圖進行對比分析。

2.2.2 需要注意的問題

2.2.2.1 緩沖線繪制算法的實現(xiàn)。在繪制柱狀圖過程中,若分層的巖性描述文本高度超出分層高度,就會產(chǎn)生巖性描述文本溢出現(xiàn)象,為了保證鉆孔柱狀圖的美觀,在巖性柱兩側(cè)加入緩沖區(qū),引入緩沖線。

為了保證圖幅的美觀,緩沖線一般要與鉆孔柱狀圖的各個分層底部相一致。但是,在特殊情況下,允許各分層線上下浮動,緩沖線同時隨之移動,盡量使緩沖線水平,減少斜緩沖線的數(shù)量。

在手工繪圖過程中,可以通過目測,人為調(diào)整緩沖線;而利用計算機進行自動繪圖,則無法進行目測,需要采用一定的算法進行計算來繪制緩沖線,具體過程如下。

①初始化變量[i]=0,讀取數(shù)據(jù)庫中的巖層真厚度數(shù)據(jù)TrueHeight[i],將其賦給rowheight[i],假如rowheight[i]小于2,將rowheight[i]賦值為2,對其累加求和,得到巖性描述文本的總高度sumrowheight,累加巖層真厚度數(shù)據(jù),得到巖層累計真厚度sumheight。

②判斷sumrowheight和sumheight的大小,假如sumheight較大,則直接繪制鉆孔柱狀圖,否則執(zhí)行③。

③初始化變量[j]=0,進行for循環(huán),從數(shù)據(jù)庫中依次讀取每一層的巖層真厚度數(shù)據(jù)TrueHeight[j]。

④使用if語句,對TrueHeight[j]進行判斷,假如TrueHeight[j]大于2,利用TrueHeight[j]繪制鉆孔柱狀圖,否則將rowheight[j]賦值給TrueHeight[j],繪制鉆孔柱狀圖。

2.2.2.2 文字換行算法的實現(xiàn)。在繪制鉆孔柱狀圖的過程中,巖性描述是必不可少的。在利用計算機自動繪圖時,巖性描述的行寬是固定的,這就要求必須對數(shù)據(jù)庫中讀取的巖性描述進行換行,具體步驟如下。

①初始化變量[i]=0,從數(shù)據(jù)庫中讀取巖性描述的內(nèi)容row[i],比較巖性描述的文字長度length和字體高度size的乘積與巖性描述文本的長度width,若前者較大,則執(zhí)行②,否則直接添加巖性描述。

②定義字符串S1,初始化變量[j]=0,以巖性描述文字長度作為循環(huán)控制變量,以(j+2)*size>width作為判斷條件,確定[j]的值,將row[i]中的前[j]個字賦給字符串S1。

③定義字符串S2,根據(jù)[j]的值,將row[j]后面的字賦給字符串S2。

④根據(jù)S1和S2完成巖性描述的填寫。

2.3 圖形輸出模塊的實現(xiàn)

圖形輸出模塊借助MapGIS K9的AxMxEditControl對象的StartTool方法,實現(xiàn)打印設置、打印預覽、打印、輸出光柵文件、輸出PS/EPS文件、生成WEB圖片等功能。

2.4 數(shù)據(jù)庫管理模塊的實現(xiàn)

2.4.1 添加數(shù)據(jù)功能實現(xiàn)。利用mcGDBServer類的Connect函數(shù)連接數(shù)據(jù)庫,通過mcXClsTool類的CreatXCls方法,調(diào)用MapGIS對象類創(chuàng)建向?qū)?,在MapGIS的GDB企業(yè)管理器的指定數(shù)據(jù)庫中創(chuàng)建對象類,用戶可以根據(jù)已有的對象類的屬性結(jié)構(gòu),導入新對象類中,完成屬性結(jié)構(gòu)的設置。

2.4.2 數(shù)據(jù)編輯功能實現(xiàn)。利用EditConnector控件的StartTool函數(shù),將不同參數(shù)傳入StartTool函數(shù)中,實現(xiàn)不同點、線、區(qū)、注記的輸入、選擇和修改,以及框選、圓選、多邊形選擇和平移功能。

2.4.3 數(shù)據(jù)導入/導出功能實現(xiàn)。利用mcDataConvertTool類的DataConvert函數(shù),通過調(diào)用對象類的數(shù)據(jù)導出/導出對話框,完成數(shù)據(jù)導入/導出功能,實現(xiàn)簡單要素類(sfcls)、注記類(acls)、要素類(fcls)、對象類(ocls)、CAD類(cadcls)、MapGIS6x(*.wb;*.wp;*.wl;*.wt)、MapGIS6x工程文件(*.MPJ)、Txt Files(*.txt)、Mif Files(*.mif)、E00 Files(*.e00)、Shape Files(*.shp)、Dxf Files(*.dxf)、數(shù)據(jù)庫表格等數(shù)據(jù)格式之間的導入與導出功能。

3 系統(tǒng)應用

系統(tǒng)完成后,利用河南省煤田地質(zhì)局二隊所提供的補1號鉆孔數(shù)據(jù)進行了測試。鉆孔位于XX鎮(zhèn),高程為239 m,終孔深度為382.4 m。開工日期為2010年08月28日,竣工日期為2010年10月29日。試驗結(jié)果表明,該系統(tǒng)達到了省時、省力和高效的目的。

4 結(jié)論

本文在廣泛調(diào)研的基礎上,系統(tǒng)研究了鉆孔柱狀圖的主要構(gòu)成及繪制技巧,基于MapGIS K9建立了鉆孔數(shù)據(jù)基本信息數(shù)據(jù)庫,借助Visual Studio .NET 2008開發(fā)環(huán)境,使用C#語言,采用組件開發(fā)技術(shù),設計開發(fā)了基于MapGIS的鉆孔柱狀圖自動繪制系統(tǒng)。該系統(tǒng)具有鉆孔數(shù)據(jù)的信息化管理、鉆孔柱狀圖的自動繪制、數(shù)據(jù)導入和導出等功能,為鉆孔柱狀圖的繪制提供了便利,并在實際應用中達到了省時、省力和高效的目的。但由于時間和作者個人能力的限制,對于一些細節(jié)性的問題未進行深入研究,還有待進一步補充完善。

參考文獻:

[1]趙鋒,崔希民,王蕊香,等.基于ObjectARX與OLEDB的鉆孔柱狀圖自動繪制[J].河北建筑科技學院學報,2002(4):61-64.

[2]曹博,郝文信.基于VBA的鉆孔柱狀圖的自動生成[J].露天采礦技術(shù),2008(z1):14-17.

[3]黃樹桃,王樹紅,韓邵陽,等.鉆孔資料管理和自動成圖技術(shù)研究[J].鈾礦地質(zhì),2004(1):50-53.

[4]李成.地質(zhì)剖面圖和柱狀圖的計算機自動生成技術(shù)[D].西安:西安科技大學,2004.

[5]陳文杰,應軼.第四系鉆孔柱狀圖成圖系統(tǒng)的設計與實現(xiàn)[J].地礦測繪,2007(4):14-16.

[6]張運香,吳麗蓉.基于MAPGIS二次開發(fā)的鉆孔柱狀圖軟件介紹及其應用[J].福建地質(zhì),2008(2):230-236.

[7]文廣超,鄧寅生.煤礦礦井防治水信息化系統(tǒng)的研究與實現(xiàn)[J].礦業(yè)研究與開發(fā),2010(6):64-67.

[8]馬江平,王志宏.基于AutoCAD的預想鉆孔生成及其柱狀圖繪制[J].露天采礦技術(shù),2005(6):17-20.

[9]黃樹桃,王樹紅,韓紹陽,等.鉆孔資料管理和自動成圖技術(shù)研究[J].鈾礦地質(zhì),2004(1):51-55.

[10]王小勇.“鉆孔地質(zhì)柱狀圖”的計算機編圖應用研究[J].化工礦產(chǎn)地質(zhì),2007(1):33-38.

[11]解華明,陳守余.基于MAPGIS的鉆孔柱狀圖繪制軟件的編制[J].物探化探計算技術(shù),2004(1):85-90.

猜你喜歡
二次開發(fā)
初中生物教材插圖的分類及二次開發(fā)
例談對高中數(shù)學教材中習題的二次開發(fā)
淺談CAD軟件二次開發(fā)的方法及工具
例談課本習題的“二次開發(fā)”
二次開發(fā)教材 拓展學生思維
淺談AM系統(tǒng)鐵舾建模的實用二次開發(fā)
高中物理教材導入的“二次開發(fā)”
單機游戲的二次開發(fā)