不僅是CATIA軟件具有VBA二次開發接口,很多機械設計軟件也都具有VBA二次開發接口。本期,就來為大家介紹一下Auto CAD軟件的VBA二次開發,使用VisualStudio軟件編寫一個能夠在Auto CAD軟件中繪制圓的軟件。
Auto CAD軟件版本:Auto CAD 2018。
Visual Studio軟件版本:Microsoft Visual Studio Ultimate 2010。
一、項目創建在Microsoft Visual Studio Ultimate 2010軟件中創建“Windows窗口應用程序”模闆項目,項目名稱為Auto CAD畫圖工具。
二、Auto CAD對象庫引用在添加引用對話框中選擇“COM”标簽,然後在其下點選“AutoCAD 2018 Type Library”對象組件,将其引用到項目中。
三、軟件窗體布置與屬性設置
1.設置Form1窗體屬性。
2.在Form1窗體中添加兩個Label控件、1個TextBox控件、2個Button控件,添加完成後分别設置控件屬性。
3.控件添加與屬性設置完成後,将各個控件擺放至合适位置,然後拖動Form1窗體至合适大小。
四、Auto CAD軟件連接
1.雙擊Form1窗體控件,在代碼編輯區的最前面添加Auto CAD對象庫引用代碼。
2.在Form1窗口的Load事件中編寫代碼,實現畫圖工具軟件與Auto CAD軟件的控制連接。
五、新建圖紙功能實現
在“新建圖紙”按鈕的Click事件下編寫新建圖紙功能代碼,并在編寫完成後對功能進行運行測試。
六、畫圓功能實現
在“創建圓”按鈕的Click事件下編寫繪制圓的功能代碼,本此繪制使用的是圓心與半徑約束創建圓的方法。
軟件完整代碼如下所示。
Imports AutoCAD Public Class Form1 Dim AcadApp As AcadApplication Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load Try '獲取AutoCAD軟件COM對象 AcadApp = GetObject(, "AutoCAD.Application") Catch ex As Exception '未打開AutoCAD軟件時提示打開軟件 MsgBox("請先打開AutoCAD軟件。") End End Try End Sub Private Sub CmdCreateDrawing_Click(sender As System.Object, e As System.EventArgs) Handles CmdCreateDrawing.Click '創建新圖紙 AcadApp.Documents.Add() End Sub Private Sub CmdCreateCircle_Click(sender As System.Object, e As System.EventArgs) Handles CmdCreateCircle.Click Dim CircleObj As AcadCircle Dim CenterPoint(0 To 2) As Double Dim Radius As Double '定義圓心坐标數據 CenterPoint(0) = 100.0 : CenterPoint(1) = 100.0 : CenterPoint(2) = 0.0 '獲取圓半徑數據 Radius = Val(CircleRadiusTextBox.Text) Try '創建圓 CircleObj = AcadApp.ActiveDocument.ModelSpace.AddCircle(CenterPoint, Radius) '顯示整個圖形 AcadApp.ZoomAll() '更新視圖 CircleObj.Update() Catch ex As Exception MsgBox("請先新建一張圖紙或打開一張圖紙。") End Try End Sub End Class
七、軟件運行測試1.對編寫的代碼進行測試,在沒有打開Auto CAD軟件的情況下彈出提示語句“請先打開AutoCAD軟件”,若是Auto CAD軟件已經打開,軟件則可正常啟動。
2.Auto CAD軟件啟動後,點擊畫圖工具中的“創建圓”按鈕,若是Auto CAD軟件還未添加圖紙文件,此時會彈出對話框提示“請先新建一張圖紙或打開一張圖紙”。
3.點擊畫圖工具中的“新建圖紙”按鈕,在Auto CAD軟件中新建一張圖紙,然後再次點擊“創建圓”按鈕,可以看到在Auto CAD軟件中創建了一個圓心位于(100,100)位置處,半徑為50mm的圓。
4.改變圓半徑設定值,再次點擊“創建圓”按鈕,将在相同位置處繪制出設定半徑值的圓。
The End
上一篇:CATIA軟件二次開發:焊點小球生成工具應用程序編寫
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!