-------------------------------------------------------------------------------------------------------------------------------------------------------------------- 【注】所有文字,,權(quán)當(dāng)個人留存。若君不幸踏訪,,切無譏諷,,確有可取之處,不妨隨心借取,,確有錯漏之處,,還望不吝賜教。交流:[email protected] -------------------------------------------------------------------------------------------------------------------------------------------------------------------- 【正文】今已踏入通信行業(yè)年余,,諸多ObjectArx繁雜事情間或纏身,,為避此瑣事,特就其所知一一整理,,陸續(xù)記載于ObjectArx版塊中,。 此篇為該版塊第一篇,擬介紹ObjectArx一些繁雜瑣碎的細(xì)節(jié),。后續(xù)篇章將從淺入深的介紹ObjectArx的相關(guān)知識(我所涉及),。 該篇內(nèi)容概覽如下: 1、ObjectArx簡介 2,、ObjectArx環(huán)境搭建 3,、ObjectArx學(xué)習(xí)資料 4、ObjectArx學(xué)習(xí)方法 【1】ObjeactArx簡介 這一節(jié)的知識通過關(guān)鍵字【ObjectArx】在百度和google,可以得到詳細(xì)介紹,。在此,,引用百度百科和ObjectArx官網(wǎng)(即AUTOCAD官網(wǎng):http://usa./adsk/servlet/index?id=773204&siteID=123112)的內(nèi)容做個簡單的介紹。 ObjectARX是什么,?---------Autodesk公司提供的針對AutoCAD平臺做二次開發(fā)的以C++為基礎(chǔ)的軟件包,。 ObjectArx的主要用途就是對AutoCAD軟件做二次開發(fā),比如定制一些復(fù)雜的圖形,,開發(fā)一些快捷的繪圖模式等,,還有人在AutoCAD上用它開發(fā)各種小游戲??傊?,ObjectArx是Autodesk公司特意開發(fā)的一個軟件包,這個包提供了大量訪問AutoCAD軟件底層的接口(函數(shù),、api),,通過這些接口你就能夠在AutoCAD平臺上做一些你想做,而AutoCAD又沒有自帶的事情,。所以,,你應(yīng)該只能用ObjectArx處理AutoCAD,,而不應(yīng)該用來做其他事情,比如Web程序,。 【2】ObjectArx環(huán)境搭建 從上一節(jié)可知,,ObjectArx是通過訪問AutoCAD軟件底層接口用來擴(kuò)展AutoCAD軟件的。然而,,AutoCAD又各種不同的版本(2004,、2006、2007,、2008,、2010等),他們的底層接口(函數(shù),、API)必然不盡相同,,因而,ObjectArx也理應(yīng)根據(jù)不同AutoCAD版本提供不同的版本,??墒牵琌bjectArx只是一個軟件包,,對AutoCAD做二次開發(fā)需要借助開發(fā)平臺(編寫,、編譯程序的平臺),支持ObjectArx的開發(fā)平臺最好的莫過于Microsoft visual studio,而Microsoft visual studio也有自己不同時期的各個版本,。因此,,要搭建好ObjectArx開發(fā)環(huán)境就需要對ObjectArx軟件包(SDK)版本,、AutoCAD軟件版本,、Microsoft visual studio平臺版本有正確的搭配(組合),。如果組合不合理,,則會出現(xiàn)各種問題,,增加不少煩惱,,嚴(yán)重打擊開發(fā)激情,。 網(wǎng)上已經(jīng)有很多這個知識點(diǎn)介紹的博客和文章,。下面列舉一篇比較詳細(xì)的相關(guān)文章: AutoCAD ObjectArx vs vc++ 最佳組合 http://blog.csdn.net/houjinfeng210/article/details/7451346 AutoCAD與ARX SDK及VS版本對應(yīng)關(guān)系 用VS2010一勞永逸解決AutoCAD ObjectArx開發(fā)中VS版本問題 授人以魚,,不如授人以漁,。 通過正確的關(guān)鍵詞就能檢索到,推薦用:CAD ObjectArx VS 開發(fā)環(huán)境 版本 組合 等詞匯,,先google檢索一遍,,如果沒有滿意的再百度檢索一遍,如果都沒有,,則考慮換關(guān)鍵詞不停的檢索吧,,一定是有的。 為了防止其他連接都不在了,,在此記錄下,,對應(yīng)關(guān)系,。 AutoCAD版本 | ARX版本 | VS版本 | | AutoCAD(R12) | ARX1 | VC2 | AutoCAD(R14) | ARX202 | VC4.2 | AutoCAD2000/2002(R15/R15.6) | ObjectARX2002 | VC6 | AutoCAD2004(R16) | ObjectARX2004 | Vs2002(VC7.0) | AutoCAD2005(R16.1) | ObjectARX2005 | Vs2003(VC7.1) | AutoCAD2006(R16.2) | ObjectARX2006 | VS2003(VC7.1) | AutoCAD2007(R17) | ObjectARX2007 | VS2005(VC8.0) | AutoCAD2008(R17.1) | ObjectARX2008 | VS2005(VC8.0) | AutoCAD2009R(R17.2) | ObjectARX2009 | VS2005(VC8.0) | AutoCAD2010(R18) | ObjectARX2010 | VS2008(VC8.0) | | ObjectARX2011 | VS2008(VC8.0) | | AutoCAD2011(R19) | |
選定版本后,就可以開始搭建開發(fā)環(huán)境了,,我是3年前初次接觸CAD二次開發(fā),,由于項(xiàng)目需求,指定版本為CAD2008+ObjectArx2008+VS2005,。后續(xù)所有篇章都是基于該開發(fā)環(huán)境,。關(guān)于這個環(huán)境的搭建將在下一篇中《AutoCAD2008+ObjectArx2008+VS2005開發(fā)環(huán)境搭建》中詳細(xì)介紹。 【3】ObjectArx學(xué)習(xí)資料 在國內(nèi),,AutoCAD的使用是非常廣泛的;在國內(nèi),,不想出錢的企業(yè)是非常多的,。所以,在國內(nèi),,ObjectArx的學(xué)習(xí)資料也是不少的,。ObjectArx的學(xué)習(xí)資料可以分為兩類:書籍類和網(wǎng)絡(luò)類。書籍類也可以為了兩類:紙質(zhì)的和電子版的,。網(wǎng)絡(luò)類指的是QQ群,、BBS、博客,、網(wǎng)絡(luò)文章等,。 在使用ObjectArx過程中,購買了兩本紙質(zhì)書籍,,《AutoCAD ObjectArx程序開發(fā)技術(shù)》,、《AutoCAD2000 objectARX編程指南》,參考了大量電子版書籍,,如下圖所示: 這些書籍中《ObjectARX開發(fā)實(shí)例教程》最簡單,、實(shí)在;搭建好環(huán)境后,,復(fù)制該書中的例子就可運(yùn)行得到結(jié)果,,所見即所得,是入門的最佳實(shí)踐書籍之一,。另外,,一本是《AutoCAD2000 objectARX編程指南》,這本書是國外ObjectARX開發(fā)的經(jīng)典書籍,,詳細(xì)介紹了ObjectARX開發(fā)的原理,。雖然有點(diǎn)老,但永不失指導(dǎo)意義,。吃透這兩本書,,就可以用ObjectArx做一些想做的事情了,。 網(wǎng)絡(luò)類:國內(nèi)比較好的是:ObjectArx編程站 明經(jīng)CAD社區(qū) 國外的:Autodesk ObjectARX - Autodesk Discussion Groups 另外,想得到實(shí)時交互咨詢,,可以加入一些QQ群,,BBS等。比較有人氣,,實(shí)力強(qiáng)勁的ObjectArx QQ群就是ObjectArx編程站附屬的兩個QQ群(人滿為患,,所以我被T了。QQ群號也不記得了,,想加入的可以去他們的網(wǎng)站上問問),。 當(dāng)然,還有一個最重要的ObjectArx知識寶庫,,那就是ObjectArx SDK自帶的幫助文檔和示例文件:
個人極端的認(rèn)為,,如果你熟悉了上面提到的兩本書,也就是了解了ObjectArx開發(fā)的理論和基礎(chǔ)知識,。那么,,按objectarx SDK自帶的docs和samples操作一遍,并搞懂每一行代碼的來由,。在ObjectArx領(lǐng)域,,你就算的上一個專家了。 【4】ObjectArx學(xué)習(xí)方法 ObjectArx是一個基于C++的針對AutoCADR做二次開發(fā)的軟件包,。因此,,在學(xué)習(xí)使用該方法之前,你必須有一定的C++基礎(chǔ)和一定的AutoCAD基礎(chǔ),。如果,,二者有缺,你的補(bǔ)上先,。否則,,學(xué)習(xí)的路途上倍加艱辛。 如果有C++基礎(chǔ)和AutoCAD基礎(chǔ),,那么就只有一個最簡單,、最有效的學(xué)習(xí)方法了:編程實(shí)踐,不懂就問,,不問就查,。 如何問? 問身邊的高手,,問網(wǎng)上的高手,。如果沒有問的機(jī)會,那就苦B了點(diǎn),。就只有直接查了,,查書查文獻(xiàn)查網(wǎng)絡(luò),,網(wǎng)絡(luò)查是最快捷了,但是不容易查得準(zhǔn),,因?yàn)?,提煉問題的關(guān)鍵字,也是一門學(xué)問,。關(guān)鍵字對了,,一查就準(zhǔn),關(guān)鍵字錯了,,天明查到天黑也可能一無所獲,。 紙上得來終覺淺,絕知此事要躬行,;眼過千遍,,不如手動一遍;實(shí)踐出真知,。做程序開發(fā)更是如此。 用手練,,用嘴問,,終有所成。 ====== 后記:該文初于13年1月寫于新浪博客,,發(fā)現(xiàn)略有價值,,遂騰挪至此。
|