最近幫朋友做了一個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二次開發時能快速入門,我也是在初期找了很多資料都是很零碎且古老的,在記錄自己開發經歷的同時希望幫助到更多像我一樣的小菜。
最后再附上這個粗糙小工具的效果圖,給大家看一下實際運行效果