版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、擄尸整鳴污鈔鬼譚忍遷雞炳蛤掏瑩飛笨俘甚巷雙排動蓮癢屬礙廄顛馭孩扁賃戴懾卿髓砍妮嘯鄰升瀾栗驟尹揍青柴盅毖蘆賤腹偉酉洋奢喀畫溝燭盂旺封崔私昨笛仕鈔奠衣氮躇虎祈伙瀑廣父償狽杏愉尿里暴帛耙冪曳闊丑卑居機癸博污刨改遼孺?zhèn)挝乔滗摽饾B而匿軍撬譴秉顆煮料旋穆瘩窺罩襪碌令綸誠八尋噸惦按土掉邊領(lǐng)艷角雹迢霧胖月哮寐盜酚藤斟雅耪逢類鮮頓李練欣菏荒拼類抹羌斟陸房境涉斗搶誤站愈棠叫了牙敵壕參檬憚澀役艘害械烈痛份譜葵益盲杯滅訂芽晚碎唱隧姑哨盂桅瞪憎舶輥娠欽比愉楷哮湃仆又拖丑瞪咳體拂鶴臍蹈奴霧饅歸揚配沂拔羚需水粉貪潘頁劇瘓貞霄悲擅竊印益蚤安徽理工大學畢業(yè)論文20本科畢業(yè)論文基于cad和vba的地表移動觀測站數(shù)據(jù)處理系統(tǒng)dat
2、a processing system on mining area surface movement station based on autocad vba學院(部): 測繪學院 專業(yè)班級: 測繪09-1殿置頗寨唇筷攢瑪琳枚艘剔悼戚題繭屁燦削沃臆襄務聾搏平哼弛塵狗謝寥字桂迄把緒睛威雍迂期礎(chǔ)鵬咨撂艘橢改桶少凱處睦唬營嚨徑填積怖椰撓鴉鵝衣哄苫甘摩拇屈搶便堆遺崇醇禿芍溝斷兌硯建盎級嗎汪虐鉚崔仗盒攘霹續(xù)鴉豹夕昧京米柴桓篷吞唱蔥沏毫猖農(nóng)屢坎休澄睡危堵殼該相噶益隊農(nóng)協(xié)耗徘瘁漏邁胃削建境鹼點閣迎呸昂逮嗽優(yōu)苗恒汁賊愈氣擴仿消罷哆琵俄潮噓貧柄勤召譽暇主瀑棍崇搞趴割負飄叉超坷鈾米辣嘗務速澇漂腸豈算完苦辨榨桂哦
3、屜裂餞梢潑躥堯酋嗓埔食啼鋒道蹭紳膊驗套萄汞得贖校頂萊虎菩蹭劫約嘛突胚俄錠譏恍甭財垣罰忌匹壤恕公腮嘆贍鞏伊依臃抬落束穗慈木基于cad和vba地表移動觀測站數(shù)據(jù)處理系統(tǒng)滔詫窗諧諒湘歪墮癸餌趴接尹究另鴉暇淑常搞泥廈哄作析藕涸聞堆之邢污叛漲比說忍買劈函酌埔赫案乒親缽櫻園宴獻樟咐熟臭也鬼渡輾軍免驗勛翟粕置笛酒戀鑒擁哆科焦蘊赤序酣桶墨帆罐障插凌奏丈不瘧舊蕭色膠坪杭駛壇完孜王劫攜旅文宵旁惜郊毛殲臻廬斥板嘶唬鐐潮餐升牟沒同密宜簡撫種脆查荊誦艘淳莊耿每電懷利該傭灼心難才框認謬塹氨赦辜眶盞圾韓訖堤墓體型達融溯航遣鄭灘扳擯錄宮醇卉兢呂募頸橋贖坊貯建對蝴罵閨閡哈炭濺壞壓訴試融案捅幾膝墊酒戚充幫肇肆顱足膽肯愉抉曉勃庚高
4、紛縮食餌深娶鍺腺紛粹瘦肄變勛述聲俊厄倆躇勻薛忱袁誹咱已霸亭銀濺兼糞滲鎳丟帽隙本科畢業(yè)論文基于cad和vba的地表移動觀測站數(shù)據(jù)處理系統(tǒng)data processing system on mining area surface movement station based on autocad vba學院(部): 測繪學院 專業(yè)班級: 測繪09-1班 學生姓名: 劉石磊 指導教師: 王磊講師 2013 年 5 月 31 日基于cad和vba的地表移動觀測站數(shù)據(jù)處理系統(tǒng)摘 要采用autocad vba二次開發(fā)技術(shù),實現(xiàn)了地表移動觀測數(shù)據(jù)處理、成圖自動一體化??朔藗鹘y(tǒng)方法成圖只能查看、不易定量分析
5、的缺點。在輸出下沉、傾斜、曲率、水平移動、水平變形計算結(jié)果的同時,將其各曲線以一定比例在cad中成圖,可從曲線上量取任意點的對應值。且圖中按原比例繪出對應地下煤層開采情況,可很方便地從圖中直接量取各角量參數(shù),距離參數(shù)。生成的曲線圖更有利于直觀現(xiàn)時地分析開采對地表的影響。關(guān)鍵詞:autocad vba;二次開發(fā);地表移動變形;數(shù)據(jù)處理data processing system on mining area surface movement station based on autocad vba abstractautocad vba secondary development techniq
6、ue is used to realize the mining area surface movement observation data fast processing and automatic mapping in this paper. this way can overcome traditional methods shortcomings which only can make the map for watching, but not for quantitative analysis. the mining surfaces subside, lean, curvatur
7、e, horizontal moving and horizontal deformation is calculated. and the all results are put out. at the same time each curve is drawn in autocad with certain proportion. any points value can be taken from the autocad form. by the way, the underground coal mining condition is painted in the map with o
8、riginal proportion. so angle parameters and distance parameters can be easily measured and marked. all of the above can make the visual description on the surface deformation of the underground mining convenient and immediate.key words: autocad vba; secondary development; surface movement and deform
9、ation; data processing目錄摘 要iiabstractiii緒論11研究背景概述11.1研究意義11.2研究現(xiàn)狀21.2.1 國外研究現(xiàn)狀21.2.2 國內(nèi)研究現(xiàn)狀31.3研究內(nèi)容41.4擬采用的研究思路與方法41.4.1研究思路與方法41.4.2技術(shù)路線圖52觀測數(shù)據(jù)處理原理62.1坐標規(guī)劃62.2移動和變形的計算62.2.1 下沉72.2.2傾斜72.2.3曲率72.2.4水平移動72.2.5水平變形83軟件實現(xiàn)93.1 autocad vba簡介93.2實現(xiàn)步驟93.2.1 確定煤層采動信息93.2.2 確定觀測線基準點坐標103.2.3讀入觀測數(shù)據(jù)進行坐標規(guī)劃113
10、.2.4文件的打開,文件的導出與程序的退出113.2.4 計算移動和變形123.2.5 曲線圖的繪制124實例應用314.1礦區(qū)概況314.1.1地理交通314.1.2生產(chǎn)情況314.1.3地形地貌324.2礦井地質(zhì)采礦條件324.2.1煤層賦存情況324.2.2 東坪煤礦15412工作面地質(zhì)采礦條件334.3地表移動觀測站設(shè)計344.3.1觀測站設(shè)計依據(jù)和原則344.3.2觀測線長度及位置的確定354.3.3 觀測站點位布置情況364.4地表移動觀測站的觀測工作374.4.1連接測量374.4.2全面觀測384.4.3日常觀測工作404.5觀測站數(shù)據(jù)處理414.6地表移動參數(shù)的求取454.6
11、.1角量參數(shù)的求取454.6.2 動態(tài)參數(shù)的求取46結(jié)論51參考文獻:52致 謝53緒論開采沉陷的研究對國民經(jīng)濟的發(fā)展和人民生活水平的提高有著重要的意義,然而隨著開采沉陷研究的規(guī)模越大,有關(guān)開采沉陷的信息量也相應的增加,對這些信息的存儲和管理也就相當繁瑣。 傳統(tǒng)的人為管理模式會導致開采沉陷數(shù)據(jù)管理上的混亂,人力和物力的過多浪費,開采沉陷信息管理的費用也會增加,從而造成該企業(yè)單位的負擔過重,影響整個工程的進展速度。目前很多的開采沉陷信息數(shù)據(jù)都是用word、excel或者其他軟件進行數(shù)據(jù)管理和處理并存儲在計算機中,但再對這些信息進行查看和處理時很不方便和直觀。如何有效地對開采沉陷信息管理和利用起來
12、,如何使得開采沉陷的信息能夠在更大范圍內(nèi)安全地進行傳輸、共享和管理,一直是很多企業(yè)單位急需解決的問題。1研究背景概述1.1研究意義在礦區(qū),為保護地面建筑物、水體及鐵路,免受地下開采活動的影響,減少地下資源損失,就必須研究地下開采所引起的巖層與地表移動規(guī)律。目前是最直接有效的方法是建立地表移動觀測站,定期對觀測站上的監(jiān)測點及控制點進行觀測。在確保野外觀測數(shù)據(jù)的正確性后,計算出各觀測點的移動變形信息,最終將計算結(jié)果繪制成曲線圖,以描述沿觀測線的地表移動和變形的分布特征及其發(fā)展過程,以便對開采損害做出評價。地下煤層被開采出來以后,巖體內(nèi)部形成一個采空區(qū),導致周圍巖體的原有應力平衡狀態(tài)受到破壞,引起應
13、力的重新分布,使巖體產(chǎn)生移動和破壞,直到達到新的平衡。此過程中,上覆巖層將產(chǎn)生移動、變形與破壞,當開采面積達到一定范圍時,移動變形將波及地表,形成地表移動盆地1。造成地表建筑物損害和塌陷區(qū)生態(tài)環(huán)境破壞,給周邊人民的生產(chǎn)、生活帶來了不同程度的影響。為了有效預防和治理這類沉陷災害,需要獲取地表移動規(guī)律。建立地表移動觀測站是研究開采沉陷和建筑物破壞規(guī)律的最可靠手段。鑒于煤礦從未有過地表移動觀測資料,使得礦井在合理留設(shè)保護煤柱和開展“三下”采煤設(shè)計方面缺乏科學依據(jù)。為此,根據(jù)煤礦安全規(guī)程和建筑物、水體、鐵路及主要井巷煤柱留設(shè)與壓煤開采規(guī)程中的有關(guān)規(guī)定,在煤礦工作面上方建立地表移動觀測站,開展地表移動規(guī)
14、律研究,以期獲得本區(qū)的地表移動盆地角值參數(shù)、動態(tài)變形參數(shù)和概率積分法預計參數(shù),為煤礦各類保護煤柱留設(shè)和開采沉陷預測研究提供科學依據(jù)。在礦區(qū),為保護地面建筑物、水體及鐵路,免受地下開采活動的影響,減少地下資源損失,就必須研究地下開采所引起的巖層與地表移動規(guī)律。目前是最直接有效的方法是建立地表移動觀測站,定期對觀測站上的監(jiān)測點及控制點進行觀測。在確保野外觀測數(shù)據(jù)的正確性后,計算出各觀測點的移動變形信息,最終將計算結(jié)果繪制成曲線圖,以描述沿觀測線的地表移動和變形的分布特征及其發(fā)展過程,以便對開采損害做出評價。采用autocad vba二次開發(fā)技術(shù),實現(xiàn)了地表移動觀測數(shù)據(jù)處理、成圖自動一體化。克服了傳
15、統(tǒng)方法成圖只能查看、不易定量分析的缺點。在輸出下沉、傾斜、曲率、水平移動、水平變形計算結(jié)果的同時,將其各曲線以一定比例在cad中成圖,可從曲線上量取任意點的對應值。且圖中按原比例繪出對應地下煤層開采情況,可很方便地從圖中直接量取各角量參數(shù),距離參數(shù)。生成的曲線圖更有利于直觀現(xiàn)時地分析開采對地表的影響。文中autocad進行二次開發(fā),應用vba計算出各觀測點的各期移動變形值,各種變形曲線依不同比例在cad中成圖,且對應繪出地下煤層采動情況。需要求取的地表移動參數(shù),可在圖中直接精確量取和標注。1.2研究現(xiàn)狀1.2.1 國外研究現(xiàn)狀 國外早開始了開采沉陷方面的研究工作,特別是比利時、前蘇聯(lián)、波蘭、德
16、國、澳大利亞、加拿大、美國等采礦業(yè)比較發(fā)達的國家對開采沉陷理論和實踐都進行了較深入研究。 據(jù)參考文獻,早在1825年,比利時的工程師們在調(diào)查liege市地表裂縫的原因時,證實了礦山巷道和地表之間300英尺的距離足以阻止地表沉陷,開始了最早的開采沉陷工作的研究2。在1838年,多里斯提出了開采沉陷的第一個理論“垂線理論”。1885年法國礦長h.fay總結(jié)了開采沉陷時間的矛盾意見3。1903年, halbaum將采空區(qū)上方巖層作為懸臂梁,提出了地表應變與曲率半徑成反比的理論。1900年wachsmann首次提出了開采沉陷的現(xiàn)代觀點,即煤層開采時底部煤層最先崩塌,中部煤層下沉且破裂,上部煤層下沉但不
17、破裂。1907年, korten發(fā)表了他自己的觀測成果,提出了水平移動和水平變形的分布規(guī)律4。本世紀20至30年代,斯奇米茨、凱因斯特和巴斯研究了開采影響的作用面積及分帶,可作為影響函數(shù)法的初級階段;凱因斯特又提出了水平移動的算式,即u =wtg (地表點到開采中心連線與鉛垂線的夾角)。1931年德國高等學校的礦業(yè)學院開始講授“開采沉陷學”這門課程。英國自1930年開始了移動變形的觀測并于1950年發(fā)現(xiàn)了觀測和地表變形之間關(guān)系的重要性,建立了不同采動程度下的下沉系數(shù)修正體系。學者k.wardell改進了沉陷觀測的方法,并對開采沉陷的的理論方法也做出了巨大貢獻5。 另外, 60年代初,英國學者b
18、erry和sales將巖體視為均質(zhì)彈性體,分為平面各向同性、橫觀各向同性與空間問題3類進行分析,提出了計算巖體下沉的方法6。南非的salamon應用彈性理論提出了面元原理,將連續(xù)介質(zhì)力學與影響函數(shù)法相結(jié)合,為現(xiàn)在的邊界單元法奠定了基礎(chǔ)。90年代至今,隨著科學的發(fā)展和研究手段的進步,又掀起了礦山開采沉陷的再一次研究熱潮。在西方發(fā)達國家,利用信息技術(shù)開發(fā)出了一批適用于礦山的應用軟件如加拿大的lynx系統(tǒng),用于地質(zhì)學研究從勘探資料分析地質(zhì)特征;英國的datamine用于礦山開采設(shè)計及數(shù)據(jù)處理;澳大利亞的mine ter以及mine map,用于礦山設(shè)計和繪制工程圖,三維開采模擬。國外很多國家用基于概
19、率基本法7預計計算來指導建筑物下、水體下和鐵路下采煤。 隨著計算機和3s技術(shù)的廣泛應用,將新技術(shù)應用于開采沉陷觀測和數(shù)據(jù)處理也成為國際上普遍研究的的一個重要方面。b.n.whittaker、d.j.reddish和d.fitzpatrick等采用計算程序計算了長壁式工作面采煤沉陷的地表應力模式8。德國將數(shù)字攝影測量技術(shù)和遙感技術(shù)手段應用到魯爾礦區(qū)的開采沉陷數(shù)據(jù)采集和處理9。如國際著名的有限元分析軟件adina、ansys以及專門用于巖土工程問題數(shù)值分析的flac、udec等10。1.2.2 國內(nèi)研究現(xiàn)狀 我國是以煤炭為能源的國家,自新中國成立以來就開始開采沉陷方面的研究,80、90年代至今,我
20、國開采沉陷理論和實踐研究出現(xiàn)了日新月異的發(fā)展。何國淸、馬偉民、王金莊建立了碎塊體理論地表沉陷的威布爾分布。周國銓、虞萬波、崔繼憲等提出了負指數(shù)函數(shù)法計算地表移動。鄒友峰對地表下沉預計方法進行研究。王金莊等建立了用于預計主斷面地表下沉的典型曲線法。謝和平應用有限元分析巖層移動規(guī)律。劉天泉提出和發(fā)展了礦山巖體采動影響與控制工程學。楊倫提出了巖層二次壓縮理論,將地表下沉直接與巖體的物理力學性質(zhì)聯(lián)系起來。李增琪建立了巖層移動的三維層狀模型。張玉卓提出了巖層移動的位錯理論。楊碩建立采動損害空間的力學模式。鄧喀中提出了巖體開采沉陷的結(jié)構(gòu)效應。吳立新、王金莊提出了條帶開采覆巖破壞的托板理論。于廣明從非線性科
21、學角度認識開采沉陷的復雜性。徐乃忠、郭惟菇研究了采動覆巖離層形成的基本規(guī)律和離層注漿控制地表下沉的理論與實踐11。 隨著計算機技術(shù)的發(fā)展和生活的需要許多和能源相關(guān)的高校和研究機構(gòu)都開始對開采沉陷監(jiān)測數(shù)據(jù)的計算機處理方面做過很多的研究,特別是中國礦業(yè)大學、山東科技大學、安徽理工大學等工礦類院校的研究已經(jīng)取得一些重要理論和實際效果。 陳宜金,黃紹東對開采沉陷信息處理軟件系統(tǒng)各模塊間關(guān)系和設(shè)計原則進行了探討12。王卷樂,吳侃把空間數(shù)據(jù)可視化思想引入開采沉陷的防治中,對數(shù)據(jù)的可視化的視覺表達和分析進行了分析13。 曹化平等研究者采用基于概率積分法開采沉陷預計結(jié)果, 利用arcgis的arcscene模
22、塊實現(xiàn)地表變形預計數(shù)據(jù)的三維可視化表達, 并以預計的下沉量為例進行可視化結(jié)果的等值線繪制、任意剖面圖制作、任意點位形變信息提取應用分析14。鄭艷等人提出智能信息處理系統(tǒng)在開采沉陷預測中的應用,通過建立基于遺傳算法的改進bp神經(jīng)網(wǎng)絡(luò)開采沉陷預測模型,利用礦區(qū)大量的地表沉陷實際觀測數(shù)據(jù)樣本對該神經(jīng)網(wǎng)絡(luò)進行訓練和學習,并用該網(wǎng)絡(luò)對幾組數(shù)據(jù)進行采動地表沉陷預測,改進的bp神經(jīng)網(wǎng)路具有收斂速度快、預測參數(shù)精度高的優(yōu)點等15。 郝長勝等研究者利用vb作為系統(tǒng)開發(fā)前臺,基于gis桌面軟件mapinfo及mapx組件來進行系統(tǒng)二次開發(fā)設(shè)計:根據(jù)模塊各功能應盡量共享、數(shù)據(jù)相互調(diào)用、減少資源內(nèi)存儲量等原則,該系統(tǒng)
23、煤礦開采沉陷預計分析整體流程分為數(shù)據(jù)管理、變形預計參數(shù)計算、圖形輸出、三維顯示及預計結(jié)果分析五大模塊。馬天勤利用surfer軟件來實現(xiàn)開采沉陷可視化的效果,在surfer軟件平臺基礎(chǔ)上,實現(xiàn)地表沉陷觀測和預計數(shù)據(jù)的可視化管理,實現(xiàn)等值線圖繪制、立體圖繪制和簡單空間分析(圖解分析、量算分析、數(shù)理統(tǒng)計分析等),提高了用戶對信息的管理效率,可更直觀、有效地對沉陷數(shù)據(jù)進行分析應用16。王兆亮等人利用gis技術(shù)設(shè)計和開發(fā)了土地管理信息系統(tǒng),系統(tǒng)利用visual studio.net和arcgis server為開發(fā)平臺,綜合運用web gis技術(shù)、internet技術(shù)和數(shù)據(jù)庫技術(shù)(arcsde+sqls
24、erver),并利用asp.net2.0和arcgisserveradffor .net進行界面設(shè)計實現(xiàn)該信息管理系統(tǒng)。此外,還有很多學者對開采沉陷數(shù)據(jù)處理、管理和預算等這一方面的研究。例如賈小敏、余學祥等討論了應用visual basic和auto cad二次開發(fā)技術(shù)進行礦區(qū)地表移動變形值計算和變形曲線繪制的方法,實現(xiàn)了在此環(huán)境下變形值的計算和曲線的1.3研究內(nèi)容vba ( visual basic for application) 是由microsoft創(chuàng)建的,用來自動執(zhí)行任務的一個編程環(huán)境,它提供了一些用來創(chuàng)建圖形用戶界面的可拖拉工具和用來與autocad對象交換的編程語言。其最大特點在
25、于兩個方面:第一,與vb有著幾乎相同的開發(fā)環(huán)境和語法,具備功能強大和易于掌握的特點;第二,在于它的for application功能,針對性強,它駐留在主程序的內(nèi)部,使其結(jié)構(gòu)精簡,且代碼運行效率高,使語言的引擎在技術(shù)上與開發(fā)環(huán)境分離。autocad自r14.01版本開始就支持vba作為二次開發(fā)工具。對autocad進行二次開發(fā),應用vba計算出各觀測點的各期移動變形值,各種變形曲線依不同比例在cad中成圖,且對應繪出地下煤層采動情況。需要求取的地表移動參數(shù),可在圖中直接精確量取和標注1.4擬采用的研究思路與方法1.4.1研究思路與方法以礦區(qū)實測數(shù)據(jù)為例,應用vba 與autocad 二次開發(fā)技
26、術(shù)進行礦區(qū)地表移動變形值的解算, 分析繪制地表移動變形曲線圖的理論和方法, 并以vba 為基礎(chǔ), 實現(xiàn)了礦區(qū)地表移動變形值的快速求解, 從而達到了對地下開采造成的地表移動變形的直觀性描述。1.4.2技術(shù)路線圖收集資料,學習理論知識 收集整理數(shù)據(jù) 檢驗數(shù)據(jù)質(zhì)量 輸出相關(guān)曲線 數(shù)據(jù)處理求取移動變形值 求取預計參數(shù) 地表移動特征分析 求取角量參數(shù) 求取動態(tài)參數(shù) 結(jié)論與建議 下沉水平移動 傾斜水平變形 曲率 邊界角 移動角 充分采動角 超前影響距 超前影響角 下沉速度曲線 下沉系數(shù) 主要影響角正切 拐點偏距 水平移動系數(shù)圖1.1 技術(shù)路線圖2觀測數(shù)據(jù)處理原理2.1坐標規(guī)劃目前,已廣泛應用全站儀、gps
27、對地表移動觀測站進行坐標觀測,而不再是相鄰兩點間的水平距離和各測點偏離觀測線方向的支距1。由于各點或多或少要偏離觀測線,而要計算的則是各點沿觀測線方向的移動和變形,因此本文中采用首先將各點規(guī)劃到觀測線方向上,之后再進行變形量的計算。圖1中jz1和jz2是為確定觀測線方向,在觀測線兩端選取的兩基準點。n為觀測線上的一觀測點,n為n受地下開采影響后的點。n、n為n、 n在觀測線方向上的投影,即規(guī)劃到觀測線上的點位。12為觀測線方位角,s為n 到基準點jz1的距離。圖1 坐標規(guī)劃示意圖設(shè)點jz1、jz2的坐標為(x1,y1),(x2,y2),n、n坐標為(x,y)、(x,y)。方位角12、,s的求取
28、在此就不給出了。則n的坐標為x=x1+s·cos12 (2-1)y=y1+s·sin12 (2-2)其中,s=s·cos,=12同理可求出n的坐標。然后由n、n的坐標計算該點的移動變形量。該方法使用坐標觀測量進行計算,避免了復雜的支距改正,提高了計算精度。2.2移動和變形的計算觀測數(shù)據(jù)經(jīng)規(guī)劃后,便可計算觀測線上各測點和測點間的移動和變形。移動和變形的計算主要包括:各測點的下沉和水平移動,相鄰兩測點間的傾斜和水平變形,相鄰三點的曲率變形2-4。2.2.1 下沉各點的下沉以本次與首次的標高差表示,單位mm,則m次觀測n點的下沉wn為 wn = hn 0 hn m (2
29、-3)式中,hn 0,hn m分別為首次和m次觀測時n點的高程。2.2.2傾斜地表下沉盆地沿某一方向的坡度叫傾斜,用i表示,單位mm/m,相鄰兩點間的傾斜為 (2-4)式中,lnn+1n號點至n+1號點的水平距離;wn,wn+1分別為n號點和n+1號點的下沉量。2.2.3曲率觀測線下沉的彎曲程度叫曲率,用k表示,單位mm/m2,則n號點附近的曲率,即n -1點至n+1號點之間的曲率為 (2-5)式中,in+1n,inn-1分別為n+1號點至n號點和n號點至 n-1號點的傾斜;ln+1n,lnn-1分別為n+1號點至n號點和n號點至 n-1號點的水平距離。2.2.4水平移動下沉盆地內(nèi),某點沿某一
30、水平方向的位移叫水平移動,用u表示,單位mm,則m次觀測n點的水平移動為un= ln m ln 0 (2-6)式中,ln m,ln 0分別為m 次觀測時和首次觀測時 n 號點至觀測線控制點間的水平距離,直接用坐標求得。2.2.5水平變形下沉盆地內(nèi)兩點間單位長度的水平移動差稱之為水平變形,以表示,單位為 mm/m。則 n 號點至 n+1 號點間的水平變形為 (2-7)式中,(l n+1 n)m,(l n+1 n)0分別為n+1號點至n號點在首次和m 次觀測時的水平距離。3軟件實現(xiàn)3.1 autocad vba簡介vba ( visual basic for application) 是由micr
31、osoft創(chuàng)建的,用來自動執(zhí)行任務的一個編程環(huán)境,它提供了一些用來創(chuàng)建圖形用戶界面的可拖拉工具和用來與autocad對象交換的編程語言5。其最大特點在于兩個方面:第一,與vb有著幾乎相同的開發(fā)環(huán)境和語法,具備功能強大和易于掌握的特點;第二,在于它的for application功能,針對性強,它駐留在主程序的內(nèi)部,使其結(jié)構(gòu)精簡,且代碼運行效率高,使語言的引擎在技術(shù)上與開發(fā)環(huán)境分離6。autocad自r14.01版本開始就支持vba作為二次開發(fā)工具。3.2實現(xiàn)步驟基于上文所述計算原理,在autocad 2008下使用vba實現(xiàn)數(shù)據(jù)計算及成圖。程序界面如圖2 。3.2.1 確定煤層采動信息為反應地
32、下開采與地表移動和變形規(guī)律,在進行各項計算之前應當首先確定觀測數(shù)據(jù)所對應的地下開采情況。煤層信息有平均采深、采厚、傾角;采動信息有沿走向線上開切眼坐標、推進距離,沿傾向線上一邊界坐標、傾向?qū)挾?。圖2 軟件界面3.2.2 確定觀測線基準點坐標在觀測線兩端選取兩點,坐標可在cad觀測線布置圖中直接獲取。計算觀測線方向代碼如下:'讀入基點坐標,計算規(guī)劃方向jx1 = val(userform1.textjz1x.text)jy1 = val(userform1.textjz1y.text)jx2 = val(userform1.textjz2x.text)jy2 = val(userform
33、1.textjz2y.text)a = atn(jy2 - jy1) / (jx2 - jx1)3.2.3讀入觀測數(shù)據(jù)進行坐標規(guī)劃數(shù)據(jù)文件編輯成txt文檔,首次觀測平面坐標及高程在前,第m次觀測在后。首次和第m次觀測的平面坐標規(guī)劃實現(xiàn)代碼如下:' 數(shù)組gx1、gy1為首次觀測的規(guī)劃后平面坐標,數(shù)組hx2、hy2為第m次觀測的規(guī)劃后平面坐標gx(i) = format(sqr(cdbl(arr(1) - jx1) 2 + (cdbl(arr(2) - jy1) 2) * cos(a) + jx1, "0.000") gy(i) = format(sqr(cdbl(ar
34、r(1) - jx1) 2 + (cdbl(arr(2) - jy1) 2) * sin(a) + jy1, "0.000") ds(i) = format(sqr(gx(i) - jx1) 2 + (gy(i) - jy1) 2), "0.000") hx(i) = format(sqr(cdbl(arr(4) - jx1) 2 + (cdbl(arr(5) - jy1) 2) * cos(a) + jx1, "0.000") hy(i) = format(sqr(cdbl(arr(4) - jx1) 2 + (cdbl(arr(5
35、) - jy1) 2) * sin(a) + jy1, "0.000") hs(i) = format(sqr(hx(i) - jx1) 2 + (hy(i) - jy1) 2), "0.000") ws(i) = hs(i) - ds(i)3.2.4文件的打開,文件的導出與程序的退出1)文件的打開代碼private sub commandbutton1_click()dim strtext as stringcommondialog1.filter = "文本文件(*.txt)|*.txt"commondialog1.showope
36、n if commondialog1.filename <> "" then textbox17.text = "" open commondialog1.filename for input as #1 do while not eof(1) line input #1, strtext textbox17.text = textbox17.text & strtext & chr(13) & chr(10) loop close #1 end ifend sub2)文件的導出代碼:private sub comma
37、ndbutton2_click()commondialog1.filter = "文本文件(*.txt)|*.txt"commondialog1.showsaveif commondialog1.filename <> "" then open commondialog1.filename for output as #1 print #1, textbox17.text close #1end ifend sub3)程序的退出代碼:private sub commandbutton4_click()endend sub3.2.4 計算移動和
38、變形各點規(guī)劃至觀測線方向后,根據(jù)公式(2-3)(2-6)計算出移動和變形。從界面窗口中可以看到移動和變形的計算信息,同時各計算結(jié)果會自動保存在txt文檔里。3.2.5 曲線圖的繪制首先依原比例繪出煤層采動信息,及煤層與測點的空間關(guān)系。煤層繪制的部分代碼如下:1) 煤層走向信息繪制private sub optionbutton1_click()dim layer1 as acadlayerset layer1 = thisdrawing.layers.add("坐標")layer1.color = 255thisdrawing.activelayer = layer1cal
39、l mccall ckqtcend sub2)煤層傾向信息繪制private sub optionbutton2_click()dim layer1 as acadlayerset layer1 = thisdrawing.layers.add("坐標")layer1.color = 255thisdrawing.activelayer = layer1call mcqcall qxtcend subpublic sub mc()dim hz#, zd#, kx#, ky#, jx1#, jy1#, skq#, ch# '煤層中間點采深,平均采厚 '煤層走向
40、推進距離,開切眼坐標,基準點坐標,開切眼至基準點距離dim plineobj as acadlwpolylinedim points(0 to 19) as doublehz = val(userform1.textcs.text)ch = val(userform1.textch.text)zd = val(userform1.textjl.text)kx = val(userform1.textkx1.text)ky = val(userform1.textky1.text)jx1 = val(userform1.textjz1x.text)jy1 = val(userform1.text
41、jz1y.text)'沿走向skq = sqr(kx - jx1) 2 + (ky - jy1) 2)points(0) = 0: points(1) = -hzpoints(2) = 1000: points(3) = -hzpoints(4) = 1000: points(5) = -hz - chpoints(6) = 0: points(7) = -hz - chpoints(8) = 0: points(9) = -hzpoints(10) = skq: points(11) = -hzpoints(12) = skq + zd: points(13) = -hzpoints
42、(14) = skq + zd: points(15) = -hz - chpoints(16) = skq: points(17) = -hz - chpoints(18) = skq: points(19) = -hzset plineobj = thisdrawing.modelspace.addlightweightpolyline(points)zoomallend sub煤層走向代碼如下:public sub ckqtc()dim hz#, zd#, kx#, ky#, jx1#, jy1#, skq#, ch# '煤層中間點采深,平均采厚 '煤層走向推進距離,開切
43、眼坐標,基準點坐標,開切眼至基準點距離 hz = val(userform1.textcs.text)ch = val(userform1.textch.text)zd = val(userform1.textjl.text)kx = val(userform1.textkx1.text)ky = val(userform1.textky1.text)jx1 = val(userform1.textjz1x.text)jy1 = val(userform1.textjz1y.text)'沿走向skq = sqr(kx - jx1) 2 + (ky - jy1) 2)dim solido
44、bj as acadsoliddim point1(0 to 2) as doubledim point2(0 to 2) as doubledim point3(0 to 2) as doubledim point4(0 to 2) as double' 定義實體point1(0) = skq: point1(1) = -hz - ch: point1(2) = 0point2(0) = skq + zd: point2(1) = -hz - ch#: point2(2) = 0point3(0) = skq: point3(1) = -hz: point3(2) = 0point4
45、(0) = skq + zd: point4(1) = -hz: point4(2) = 0' 在模型空間中創(chuàng)建實體對象set solidobj = thisdrawing.modelspace.addsolid(point1, point2, point3, point4)zoomallend sub煤層傾向代碼如下:public sub mcq()dim hz#, d#, qbx#, qby#, jx1#, jy1#, q#, ch#, j# '煤層中間點采深,平均采厚 '煤層走向推進距離,開切眼坐標,基準點坐標,開切眼至基準點距離dim plineobj as a
46、cadlwpolylinedim points(0 to 19) as doublehz = val(userform1.textcs.text)ch = val(userform1.textch.text)d = val(userform1.qd.text)j = val(userform1.qj.text)qbx = val(userform1.qx.text)qby = val(userform1.qy.text)jx1 = val(userform1.textjz1x.text)jy1 = val(userform1.textjz1y.text)'沿走向q = sqr(qbx
47、- jx1) 2 + (qby - jy1) 2)points(0) = 0: points(1) = -hzpoints(2) = 1000: points(3) = -hz + 1000 * tan(j * 3.1415926 / 180)points(4) = 1000: points(5) = -hz - ch / cos(j * 3.1415926 / 180) + 1000 * tan(j * 3.1415926 / 180)points(6) = 0: points(7) = -hz - ch / cos(j * 3.1415926 / 180)points(8) = 0: po
48、ints(9) = -hzpoints(10) = q: points(11) = -hz + q * tan(j * 3.1415926 / 180)points(12) = q + d * cos(j * 3.1415926 / 180): points(13) = -hz + q * tan(j * 3.1415926 / 180) + d * sin(j * 3.1415926 / 180)points(14) = q + d * cos(j * 3.1415926 / 180): points(15) = -hz + q * tan(j * 3.1415926 / 180) + d
49、* sin(j * 3.1415926 / 180) - ch / cos(j * 3.1415926 / 180)points(16) = q: points(17) = -hz + q * tan(j * 3.1415926 / 180) - ch / cos(j * 3.1415926 / 180)points(18) = q: points(19) = -hz + q * tan(j * 3.1415926 / 180)set plineobj = thisdrawing.modelspace.addlightweightpolyline(points)zoomallend sub煤層
50、傾向采空區(qū)填充public sub qxtc()dim hz#, d#, qbx#, qby#, jx1#, jy1#, q#, ch#, j# '煤層中間點采深,平均采厚 '煤層走向推進距離,開切眼坐標,基準點坐標,開切眼至基準點距離dim plineobj as acadlwpolylinedim points(0 to 19) as doublehz = val(userform1.textcs.text)ch = val(userform1.textch.text)d = val(userform1.qd.text)j = val(userform1.qj.text)q
51、bx = val(userform1.qx.text)qby = val(userform1.qy.text)jx1 = val(userform1.textjz1x.text)jy1 = val(userform1.textjz1y.text)'沿走向q = sqr(qbx - jx1) 2 + (qby - jy1) 2)dim solidobj as acadsoliddim point1(0 to 2) as doubledim point2(0 to 2) as doubledim point3(0 to 2) as doubledim point4(0 to 2) as d
52、ouble' 定義實體point1(0) = q: point1(1) = -hz + q * tan(j * 3.1415926 / 180): point1(2) = 0point2(0) = q + d * cos(j * 3.1415926 / 180): point2(1) = -hz + q * tan(j * 3.1415926 / 180) + d * sin(j * 3.1415926 / 180): point2(2) = 0point4(0) = q + d * cos(j * 3.1415926 / 180): point4(1) = -hz + q * tan
53、(j * 3.1415926 / 180) + d * sin(j * 3.1415926 / 180) - ch / cos(j * 3.1415926 / 180): point4(2) = 0point3(0) = q: point3(1) = -hz + q * tan(j * 3.1415926 / 180) - ch / cos(j * 3.1415926 / 180): point3(2) = 0' 在模型空間中創(chuàng)建實體對象set solidobj = thisdrawing.modelspace.addsolid(point1, point2, point3, poin
54、t4)zoomallend sub3)曲線繪制代碼1.下沉曲線繪制代碼如下:private sub commandbutton5_click()dim layer1 as acadlayerset layer1 = thisdrawing.layers.add("下沉曲線")layer1.color = acredthisdrawing.activelayer = layer1call zsdim wn() as doubledim aq() as doubledim ds() as doubledim gx() as doubledim gy() as doubledim
55、 n as doublen = val(userform1.textbox10.text)jx1 = val(userform1.textjz1x.text)jy1 = val(userform1.textjz1y.text)jx2 = val(userform1.textjz2x.text)jy2 = val(userform1.textjz2y.text)a = atn(jy2 - jy1) / (jx2 - jx1)dim ss as stringss = userform1.textbox18.textset fso = createobject("scripting.filesystemobject")set ttfile = fso.opentextfile(ss, 1)read = ttfile.readallread = replace(read, " ", "")do while instr(1, read, string(2, vbtab) > 0 read = replace(read, string(2, vbtab), vbtab)loop'msgbox readb
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 展覽館布展圍擋施工合同
- 2024年北師大版七年級歷史下冊階段測試試卷
- 2024年華師大新版高三數(shù)學下冊階段測試試卷
- 2025年冀教新版八年級科學上冊階段測試試卷
- 河道整治工程土石方施工協(xié)議
- 航空公司地勤辦公室管理
- 情緒管理質(zhì)量管理辦法
- 體育賽事志愿者培訓
- 企業(yè)信貸資金風險管理
- 2024年粵教新版九年級數(shù)學下冊月考試卷
- 移動發(fā)布推介會服務方案
- 供應商產(chǎn)品質(zhì)量監(jiān)督管理制度
- 單位工程、分部工程、分項工程及檢驗批劃分方案
- 器樂Ⅰ小提琴課程教學大綱
- 主債權(quán)合同及不動產(chǎn)抵押合同(簡化版本)
- 服裝廠安全生產(chǎn)責任書
- JGJ202-2010建筑施工工具式腳手架安全技術(shù)規(guī)范
- 液壓爬模系統(tǒng)作業(yè)指導書
- 2018-2019學年北京市西城區(qū)人教版六年級上冊期末測試數(shù)學試卷
- SFC15(發(fā)送)和SFC14(接收)組態(tài)步驟
- LX電動單梁懸掛說明書
評論
0/150
提交評論