六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

使用C#進(jìn)行AutoCAD的二次開(kāi)發(fā)(一)

[摘要]眾所周知,對(duì)AutoCAD進(jìn)行二次開(kāi)發(fā)用到的主要工具有:ObjectArx,VBA,VLisp。但它們的優(yōu)缺點(diǎn)是顯而易見(jiàn)的:ObjectArx功能強(qiáng)大,編程效率高,但它的缺點(diǎn)是編程者必須掌握VC++,而這門(mén)語(yǔ)言非常的難學(xué);VBA和VLisp雖然簡(jiǎn)單易上手,但它們對(duì)于開(kāi)發(fā)大型的程序好象無(wú)能為力。那究...

    眾所周知,對(duì)AutoCAD進(jìn)行二次開(kāi)發(fā)用到的主要工具有:ObjectArx,VBA,VLisp。但它們的優(yōu)缺點(diǎn)是顯而易見(jiàn)的:ObjectArx功能強(qiáng)大,編程效率高,但它的缺點(diǎn)是編程者必須掌握VC++,而這門(mén)語(yǔ)言非常的難學(xué);VBA和VLisp雖然簡(jiǎn)單易上手,但它們對(duì)于開(kāi)發(fā)大型的程序好象無(wú)能為力。那究竟有沒(méi)有一種語(yǔ)言能結(jié)合它們的優(yōu)點(diǎn)而盡量避免它們的缺點(diǎn)呢? 回答是肯定的,那就是微軟新推出的21世紀(jì)編程語(yǔ)言C#。關(guān)于C#的詳細(xì)介紹,大家可以參考有關(guān)的文章。
  C#是通過(guò)AutoCAD ActiveX 這座橋梁來(lái)和AutoCAD之間進(jìn)行通訊的。AutoCAD ActiveX 使用戶能夠從 AutoCAD 的內(nèi)部或外部以編程方式來(lái)操作 AutoCAD。它是通過(guò)將 AutoCAD 對(duì)象顯示到“外部世界”來(lái)做到這一點(diǎn)的。一旦這些對(duì)象被顯示,許多不同的編程語(yǔ)言和環(huán)境就可以訪問(wèn)它們。關(guān)于AutoCAD ActiveX 的情況,大家可以參考AutoCAD自帶的幫助。
  呵呵,說(shuō)了這么多無(wú)聊的,還是讓我們通過(guò)一個(gè)具體的例子來(lái)說(shuō)明怎樣利用C#進(jìn)行AutoCAD的二次開(kāi)發(fā)吧。在介紹例子之前先講一下有關(guān)的配置:
(1)Visual Studio .net (2003和2002都可以,我用的是2002)

(2)AutoCAD2000以上版本(我用的是2004)
  這個(gè)例子非常簡(jiǎn)單,就是通過(guò)C#建立的窗體來(lái)啟動(dòng)AutoCAD并畫(huà)一條直線。下面是編程的具體步驟:
(1)通過(guò)Visual Studio .net 建立一C#的windows應(yīng)用程序。
(2)在“解決方案資源管理器”中右擊“引用”標(biāo)簽,在彈出的菜單中選擇“添加引用”,在“添加引用”對(duì)話框中選擇“com"選項(xiàng)卡下的下拉列表框中的“AutoCAD 2004 Type Library"項(xiàng)(注意:不同版本的CAD的數(shù)字不同),單擊右邊的“選擇”按鈕,最后單擊下面的“確定”按鈕。
(3)在C#窗體中加入兩個(gè)文本框和一個(gè)按鈕,分別用于輸入直線起點(diǎn)、終點(diǎn)的坐標(biāo)和在CAD中畫(huà)直線。下面主要解釋一下添加的代碼。
(a)在程序的開(kāi)頭加入:using AutoCAD;//導(dǎo)入AutoCAD引用空間
(b)在窗體的變量聲明部分加入: private AcadApplication a;//聲明AutoCAD對(duì)象
(c)在窗體的構(gòu)造函數(shù)部分加入:a=new AcadApplicationClass();//創(chuàng)建AutoCAD對(duì)象
                    a.Visible=true;//使AutoCAD可見(jiàn)
(d)在按鈕的消息處理函數(shù)中加入:
double[] startPoint=new double[3]; //聲明直線起點(diǎn)坐標(biāo)
double[] endPoint=new double[3];//聲明直線終點(diǎn)坐標(biāo)
string[] str=textBox1.Text.Split(',');//取出直線起點(diǎn)坐標(biāo)輸入文本框的值,文本框的輸入模式為"x,y,z"
for(int i=0;i<3;i++)
startPoint[i]=Convert.ToDouble(str[i]);//將str數(shù)組轉(zhuǎn)為double型
    str=textBox2.Text.Split(',');//取出直線終點(diǎn)坐標(biāo)輸入文本框的值
for(int i=0;i<3;i++)
endPoint[i]=Convert.ToDouble(str[i]);
a.ActiveDocument.ModelSpace.AddLine(startPoint,endPoint);//在AutoCAD中畫(huà)直線
   a.Application.Update();//更新顯示
好了,簡(jiǎn)單吧,你可以試著編譯一下。關(guān)于上面一些語(yǔ)句的用法,我會(huì)在下一講中作詳細(xì)介紹。




主站蜘蛛池模板: 日韩精品视频美在线精品视频 | 人人鲁免费播放视频人人香蕉 | 在线观看视频污 | 日韩高清免费观看 | 日本精品久久久久久久久免费 | 五月激情丁香网 | 日韩在线国产精品 | 亚洲国产精品日韩专区avtube | 青娱乐九色 | 日本成人免费观看 | 日本成人免费在线 | 日韩一级片在线观看 | 中文国产成人精品久久一 | 深夜国产一区二区三区在线看 | 日日摸夜夜添夜夜添一区二区 | 亚洲黄色一区 | 影音先锋精品国产资源 | 四虎在线播放免费永久视频 | 天天插狠狠干 | 日本三级成人午夜视频网 | 日韩中文字幕高清在线专区 | 欧美网站www | 天天色踪合合 | 香港三日本三级人妇三级99 | 色网站观看 | 日本人的一区二区三区四区 | 欧美又粗又硬 | 欧美亚洲综合一区 | 日本伊人色 | 最近手机中文字幕1页 | 欧美一级在线观看播放 | 中文字幕视频免费在线观看 | 日韩精品一区二区三区 在线观看 | 色噜噜狠狠狠色综合久 | 日韩在线视频免费播放 | 日韩欧美一区二区三区久久 | 午夜看毛片 | 日日摸日日操 | 色噜噜噜噜 | 在线播放国产色视频在线 | 日韩欧美综合在线 |