1. 程式人生 > >C#呼叫CAD2018進行繪圖

C#呼叫CAD2018進行繪圖

最近幫朋友做了一個CAD繪圖小工具軟體,過程中發現網上這方面資料很少(原諒我不會用google),在這裡總結一下自己過程中的遇到的問題和CAD二次開發基本的方法,供各位後來者作為參考。

由於這個小工具做的很簡單粗糙,所以沒有過深的研究過CAD的API,但是這些資料引導大家入手起步還是挺友好的,特別是對於像我一樣的菜鳥。

一、新建Winfrom專案

在這裡我使用的是VS2015+CAD2018。
首先建立一個Winfrom窗體程式,然後右鍵引用——選擇COM——選中“AutoCAD 2018 Type Library”,確定引用。
(一般會顯示多個相同名稱的庫,選中一個即可)
在這裡插入圖片描述


在這裡插入圖片描述

二、呼叫API開啟CAD例項

通過這種方式開啟CAD存在一個問題,CAD程序必須在開啟狀態才能啟動成功,並且偶爾會出現報錯情況,這個我沒有深入研究原因,但是嘗試重啟軟體一般能夠解決,如果有深入研究過的同學也歡迎大家留言提供方案,方便後來者參考。

private AcadApplication a;//宣告AutoCAD物件 
a = new AcadApplicationClass();//建立AutoCAD物件                     
a.Visible = true;//使AutoCAD可見

三、使用API進行基本圖形繪製

1、畫直線

double[] startPoint={ 4000, 4000, 0 };//起點座標
double Distance={ 6000, 4000, 0 };//終點座標
a.ActiveDocument.ModelSpace.AddLine(startPoint, endPoint);

2、畫圓

double[] CenterPoint={ 4000, 4000, 0 };//圓心座標
double radius=5.5;//半徑
a.ActiveDocument.ModelSpace.AddCircle(CenterPoint, radius);

3、畫弧

畫弧需要注意的是起點弧度和終點弧度使用的是弧度制,不是角度制,繪畫之前記得進行轉換。

double[] CenterPoint={ 4000, 4000, 0 };//弧心座標
double StartRadian=1.5882497;//起點弧度
double EndRadian= 4.6949358;//終點弧度
double radius=5.5;//半徑
a.ActiveDocument.ModelSpace.AddArc(CencerPoint, radius, StartRadian, EndRadian);

4、更多基本圖形及方法

需要用到其他圖形及方法請F12進入IAcadModelSpace介面自行查詢使用,我就不一一列舉了。
在這裡插入圖片描述

四、結語

以上都是很初級的一些API呼叫,但是足夠幫助大家在需要做到關於CAD二次開發時能快速入門,我也是在初期找了很多資料都是很零碎且古老的,在記錄自己開發經歷的同時希望幫助到更多像我一樣的小菜。

最後再附上這個粗糙小工具的效果圖,給大家看一下實際執行效果

在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述