亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        關于生成抽采鉆孔的CAD二次開發(fā)及應用

        2018-01-01 00:00:00張景軒
        大科技·D版 2018年6期

        摘 要:用Visual Basic 6.0和Microsoft Excel2007對AutoCAD2007進行開發(fā),使得CAD的功能得到擴展,介紹了VB中如何調用Excel和CAD的類型庫和從VB代碼中來操作EXCEL和CAD的方法和技術,從而可以在VB中調用Excel和CAD,并引用Excel的數(shù)據(jù)來生成CAD中的圖元,進而探討如何由煤礦中涉及到的抽采鉆孔參數(shù)數(shù)據(jù)快速生成鉆孔平面圖,最后用AutoCAD2007中自帶的VBA編輯器開發(fā)AutoCAD2007的菜單,添加新的菜單項,并將開發(fā)出的能生成鉆孔的可執(zhí)行文件與新的菜單項并聯(lián),達到能從CAD的菜單中快速調用關于生成抽采鉆孔的CAD二次開發(fā)程序。

        關鍵詞:Visual Basic 6.0;Excel;AutoCAD;evelopment;類型庫;鉆孔;菜單

        中圖分類號:TD712.6 文獻標識碼:A 文章編號:1004-7344(2018)18-0153-02

        在高瓦斯礦井和突出礦井都會采取一些措施來治理瓦斯,常常會采取用頂抽巷、底抽巷打穿層鉆孔,或沿煤層打順層鉆孔來抽瓦斯達到降低或消除突出危險性和瓦斯含量。在作月度或年度驗收評價時會需要期間所打鉆孔的實際分布圖,一般都用CAD來完成制圖工作,如果只用CAD中提供的基本的繪圖命令和編輯工具并依照日常統(tǒng)計的鉆孔參數(shù)數(shù)據(jù)來完成百上千個鉆孔圖形會是一個繁瑣費事的過程,而卻還很容易出錯,因此就需要探索一種快速準確的并基于鉆孔基本參數(shù)數(shù)據(jù)完成制圖方法,將日常統(tǒng)計的鉆孔參數(shù)數(shù)據(jù)快速準確的轉換為CAD圖形的鉆孔。

        1 基本原理

        本本所涉及的發(fā)開方法是用Visual Basic 6在CAD2007和office2007基礎上所開發(fā)的,關鍵在于解決鉆孔的excel數(shù)據(jù)裝換成CAD特定鉆孔圖形。

        ActiveX Automation interface[1](ActiveX自動化界面技術)是微軟公司推出的一個技術標準,該技術是在Windows系統(tǒng)的統(tǒng)一管理下協(xié)調不同的應用程序,允許應用程序之間相互控制、相互調用。AutoCAD作為一種具有高度開放結構的CAD平臺軟件,它提供了強大的二次開發(fā)環(huán)境,并AutoCAD引入了ActiveX技術。所以許多面向對象化編程的語言和應用程序,可以通過ActiveX與AutoCAD進行通信,并操縱AutoCAD的許多功能。

        從圖1中可以看出,能使用ActiveX自動化界面技術的語言環(huán)境有很多,這是ActiveX技術的一大優(yōu)點。另外,采用ActiveX技術還可以是應用程序之間很好地共享數(shù)據(jù),如AutoCAD、office excel、office word等。Visual Basic是一種可視化的計算機開發(fā)語言,是一門容易掌握和使用的計算機語言可以輕松的創(chuàng)建ActiveX控件。所以在做此項開發(fā)時,用vb6.0的ActiveX技術同時調用excel和AutoCAD的類型庫來并完成數(shù)據(jù)交換處理。

        2 如何實現(xiàn)Excel數(shù)據(jù)轉為CAD圖

        2.1 VB中調用CAD的方法與技術

        VB中的用CAD可分為以下幾步來完成,其中關鍵在于如何調用CAD類型庫[2]。

        (1)打開VB建立一個新的工程,添加一個名為Module1標準模塊單。

        (2)啟動“工程”菜單下的“引用”命令,打開應用對話框,找到“AutoCAD2007 TypeLibrary”并在其復選框上打鉤,然后單擊確“確定”。

        (3)啟動“工程”菜單下的“工程引用”命令,單擊工程屬性對話框中的“啟動對象”欄右端的箭頭,在其組合框中選中“Sub Main”,單擊確定。(把Sub Main設定為啟動過程[1])

        (4)在SubMain過程中添加以下程序代碼:

        Public acadapp As Object

        Public acaddoc As Object

        Public mospace As Object

        Sub Main()

        On Error Resume Next

        ‘錯誤處理,如果錯誤執(zhí)行下一句

        Set acadapp=GetObject(,\"Autocad.Application\")

        If Err <> 0 Then

        Err.Clear

        ‘如果CAD打開把當前打開圖檔作為操作圖檔

        Set acadapp=CreateObject(\"Autocad.Application\")

        If Err<>0Then

        Err.Clear

        MsgBox\"CAD未打開,_

        請打先打開一個CAD圖檔!\",48,\"錯誤:\"

        Exit Sub

        End If

        ‘如果CAD沒打開,自動新建新的圖檔文件

        End If

        Set acaddoc=acadapp.ActiveDocument

        Set mospace=acaddoc.ModelSpace

        Set paspace=acaddoc.PaperSpace

        acadapp.Visible=acTrue

        End Sub

        2.2 VB調用Excel的方法與技術

        (1)在D盤目錄中建立名為\"列表.xls\"的Excel文件。

        (2)打開VB建立一個新的工程,添加一個名為窗體,在窗體上添加兩個控件將command1標簽改為“修改”,command2標簽改為“退出”。

        (3)用2.1中所述的方法引用Excel的類型庫。

        (4)添加如下代碼:

        Private Sub Command1_Click()

        Dim xlapp As Excel.Application

        Dim xlbook As Excel.Workbook

        Dim xlsheet As Excel.Worksheet

        Set xlapp=CreateObject(\"excel.application\")

        Set xlbook=_

        xlapp.Workbooks.Open(\"D:\列表.xls\")

        xlapp.Visible=1

        Set xlsheet=xlbook.Worksheets(\"sheet1\")

        xlsheet.Cells(1,1)=\"河南煤化\"

        xlbook.Close(True)

        xlapp.Quit

        Set xlapp=Nothing

        End sub

        Private Sub Command2_Click()

        End

        End sub

        運行程序后單擊“修改”后,打開“列表.xls”文件,會發(fā)現(xiàn)其A1單元格內容變成了“河南煤化”。

        3 根據(jù)鉆孔參數(shù)生成CAD圖形技術

        將打成的鉆孔數(shù)據(jù)制成Excel表,假如現(xiàn)有穿層鉆孔參數(shù)列表,如表1所示,先要將根據(jù)此參數(shù)生成CAD圖。

        3.1 程序設計預期

        根據(jù)表1中的參數(shù),在CAD圖檔中生成三條鉆孔,其鉆孔間距為1.2m,都于巷道中線垂直,圖中所畫各段長度均為根據(jù)傾角轉換的投影長,在補下28號孔的見煤處,和補下30號孔的50m處標記噴孔符號“”,分別把孔號標記到各個鉆孔上如圖2所示。

        3.2 程序設計思路

        要想生成如圖2中的鉆孔首先要建立一個匿名圖塊[3],并此匿名塊命名為“*Z”,用來在其中添加所插入的所有鉆孔和孔號及噴孔標記,在添加鉆孔時每個鉆孔有三條線段構成分別是紅色的頂板段、綠色的煤段、紅色的底板段,添加時把巷道視為水平的從左到右依次是補下29、補下28、補下30號鉆孔,此時鉆孔與中線夾角為鉆孔和用戶坐標系X正半軸的夾角,每條鉆孔需要4個點的坐標來定三條線段,每條鉆孔的起點坐標為橫坐標依次增大一個間距,縱坐標不變,可取為0,因此每條鉆孔的起點坐標已知,可根據(jù)其與X正半軸夾角求出其他三點坐標,當坐標求出之后,那就可以根據(jù)此這些坐標點添加每條線段、孔號和噴孔標記,補下30號的“50m噴孔”中的50m指的是從鉆孔起點開始向此鉆孔終點方向的50m處。所有圖元添加完畢之后就要用insertblock方法[1]插入此匿名塊的塊參照,然后sendCommand方法[3]調用CAD2007中的“_rotate”來任意旋轉插入后的塊參照[1],再用explode方法[1]分解此塊參照,最后刪除塊參照便留下分解后的所有圖元。

        其中用來添加鉆孔頂板段、煤段、底板段投影線段的四點坐標用以下公式求的,坐標示意圖如圖3。

        Xn1=(n-1)·J(1)

        Yn1=0(2)

        Xn2=Xn1+i·cos(γ)(3)

        Yn2=Yn1+i·sin(γ)(4)

        Xn3=Xn1+(i+j)·cos(γ)(5)

        Yn3=Yn1+(i+j)·sin(γ)(6)

        Xn4=Xn1+(i+j+k)·cos(γ)(7)

        Yn4=Yn1+(i+j+k)·sin(γ)(8)

        式中:J為鉆孔間距;γ為鉆孔與巷道中線的夾角;α為鉆孔與水平面的夾角;n=1,2,3…按照鉆孔生成先后順序依次增大,表示第n條鉆孔;i為頂板段投影,i=頂板段·cos(α);j為煤段投影,j=煤段·cos(α);k為底板段投影,k=底板段·cos(α)。

        4 結 論

        (1)CAD經(jīng)過此項開發(fā)后可以根據(jù)鉆孔參數(shù)快速準確地生成所設計好樣式的鉆孔平面圖。

        (2)可以利用本方法作更多的開發(fā),使CAD的功能得到擴展,更適合制圖人員所從事的專業(yè)的使用。

        參考文獻

        [1]王 鈺.用VBA開發(fā)Autocad2000應用程序[M].北京:人民郵電出版社,1999.

        [2]朱桂華.基于VBA技術實現(xiàn)Excel數(shù)據(jù)生成CAD對象的方[J].中國西部科技,2007(8):88~89.

        [3]張 帆.AutocadVBA二次開發(fā)教程[M].北京:清華大學出版社,2006.

        收稿日期:2018-5-24

        日日噜噜噜夜夜狠狠久久蜜桃| 欧洲中文字幕| 亚洲AV小说在线观看| 高清国产亚洲精品自在久久| 18禁止看的免费污网站| 国产丝袜在线精品丝袜| 亚洲精品美女久久久久久久 | 午夜丰满少妇性开放视频| 日韩啪啪精品一区二区亚洲av| 91中文在线九色视频| 国产成人a级毛片| 真人直播 免费视频| 午夜福利影院不卡影院| 三级国产自拍在线观看| 亚洲av日韩综合一区久热| 亚洲欧洲中文日韩久久av乱码| 国产欧美激情一区二区三区| 亚洲国产一区二区中文字幕| 欧美变态另类刺激| 欧美国产日产一区二区| 中文字幕成人精品久久不卡| 国内精品少妇高潮视频| 白天躁晚上躁麻豆视频| 999精品免费视频观看| 亚洲中文字幕在线第六区| 无码熟妇人妻av影音先锋| 人人妻人人添人人爽日韩欧美| 黑丝美女被内射在线观看| 国产自拍精品视频免费| 国产无人区码一码二码三mba| 久久尤物av天堂日日综合| 国产人妖伦理视频在线观看| 极品白嫩的小少妇| 国产另类综合区| 青青草绿色华人播放在线视频| 国产精品麻豆va在线播放| 国产精品麻豆aⅴ人妻| 精品丝袜一区二区三区性色| 亚洲天堂成人av在线观看| 中文字幕av无码免费一区| 中国免费av网|