AutoCAD2000ObjectARX二次開發(fā)技術(shù)_第1頁(yè)
AutoCAD2000ObjectARX二次開發(fā)技術(shù)_第2頁(yè)
AutoCAD2000ObjectARX二次開發(fā)技術(shù)_第3頁(yè)
AutoCAD2000ObjectARX二次開發(fā)技術(shù)_第4頁(yè)
AutoCAD2000ObjectARX二次開發(fā)技術(shù)_第5頁(yè)
已閱讀5頁(yè),還剩44頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

AutoCAD2000

ObjectARX二次開發(fā)技術(shù)AutoCAD二次開發(fā)技術(shù)綜述ObjectARX開發(fā)的一般步驟菜單設(shè)計(jì)綜合實(shí)例:參數(shù)化齒輪設(shè)計(jì)AutoCAD二次開發(fā)技術(shù)綜述AutoCAD為目前在微機(jī)上應(yīng)用最廣泛的CAD軟件,但它為通用軟件,即支撐系統(tǒng),只提供了一個(gè)初步設(shè)計(jì)和繪圖的環(huán)境。利用它完成具體項(xiàng)目開發(fā)時(shí)還要查閱手冊(cè)、標(biāo)準(zhǔn)等,較為繁瑣。Autodesk采用了開放的軟件設(shè)計(jì)風(fēng)格,留有了包括C/C++在內(nèi)的多種二次開發(fā)接口,允許用戶定制、開發(fā)本軟件,使之更適應(yīng)某一設(shè)計(jì)領(lǐng)域,可大大減少設(shè)計(jì)人員的工作量。各種開發(fā)方法的比較第一代:利用AutoLisp語(yǔ)言開發(fā):AutoLisp為解釋型語(yǔ)言,可完成參數(shù)化程序設(shè)計(jì)及重復(fù)性工作、客戶化開發(fā)、編制AutoCAD菜單及命令注冊(cè)。當(dāng)開發(fā)的程序被加載后,它作為一個(gè)單獨(dú)的進(jìn)程,通過(guò)進(jìn)程間通訊與AutoCAD交互。它的特點(diǎn)就是簡(jiǎn)單但速度較慢,難以開發(fā)大型程序。第二代:以ADS、ARX、ADSRX為代表的C環(huán)境下的開發(fā)語(yǔ)言ADS(AutoCADDevelopmentSystem)應(yīng)用C開發(fā)環(huán)境,與ADS庫(kù)、標(biāo)準(zhǔn)C庫(kù)連接即可生成可執(zhí)行文件(EXE文件)。89年,在AutoCADR11中,提供了c語(yǔ)言的編程接口。它增加了專門用于對(duì)AutoCAD操作的函數(shù)。但它仍然用AutoLisp解釋器加載,而且采用進(jìn)程間通訊,當(dāng)軟件規(guī)模較大時(shí),速度較慢。但因使用c編譯器,所以在源程序安全性、內(nèi)存操作的效率、文件大小及運(yùn)行速度上要好于AutoLisp。第二代:以ADS、ARX、ADSRX為代表的C環(huán)境下的開發(fā)語(yǔ)言ARX:在95年的AutoCADR13中,autodesk向開發(fā)用戶提供了一種能夠直接存取的面向?qū)ο蟮膬?nèi)核,即ARX(AutoCADRuntimeeXtension)。ARX為一用C++開發(fā)的動(dòng)態(tài)連接庫(kù),用其開發(fā)的應(yīng)用程序能在AutoCAD運(yùn)行時(shí)存取其內(nèi)核及內(nèi)存地址,從而共享AutoCAD的地址空間。因此,其應(yīng)用程序就不需要再通過(guò)進(jìn)程間通訊與AutoCAD通訊了,這樣速度就加快了。第二代:以ADS、ARX、ADSRX為代表的C環(huán)境下的開發(fā)語(yǔ)言ADSRX:在出現(xiàn)ObjectARX后,原ADS庫(kù)就變成為ADSRX,它像ObjectARX一樣,要VC++編譯器生成動(dòng)態(tài)連接庫(kù)文件(DLL)。在執(zhí)行等方面都與ObjectARX兼容。第三代:VisualLISP、ObjectARX、VBA等新型開發(fā)方法VisualLISP是一種新型LISP編程工具,它提供了完整的集成開發(fā)環(huán)境,是AutoLISP的擴(kuò)展和延伸,與AutoLISP完全兼容,是一種編譯型的應(yīng)用程序接口?;贏ctiveXAutomation技術(shù)的VBA是在96年產(chǎn)生ActiveXAutomation技術(shù)后,Autodesk公司增加了ActiveXAutomation服務(wù)器的功能,使許多語(yǔ)言和應(yīng)用程序可通過(guò)ActiveX與AutoCAD通訊,操縱AutoCAD功能。AutoCAD將其各功能封裝在AutoCADActiveX對(duì)象中,供編程時(shí)各語(yǔ)言或應(yīng)用程序調(diào)用。各應(yīng)用程序通過(guò)Automation對(duì)象的屬性、方法和事件來(lái)實(shí)現(xiàn)對(duì)AutoCAD的操作,其過(guò)程如下頁(yè)圖所示:ObjectARX開發(fā):為面向向?qū)ο蟮腁utoCAD運(yùn)行時(shí)擴(kuò)展,,在vc++環(huán)境下開發(fā),,是在ADS基礎(chǔ)上發(fā)展起起來(lái)的,它包包含一組動(dòng)態(tài)態(tài)連接庫(kù),可可直接訪問(wèn)AutoCAD核心數(shù)據(jù)結(jié)構(gòu)構(gòu)、圖形系統(tǒng)統(tǒng)、CAD幾何造型,在在運(yùn)行時(shí)可擴(kuò)擴(kuò)展新命令。。在編譯時(shí),,它不生成EXE文件,而是生生成DLL(動(dòng)態(tài)連接庫(kù)庫(kù))文件。各種開發(fā)方法法的比較綜述述:速度方面:直接與AutoCAD通訊比進(jìn)程間間通訊快,編編譯型比解釋釋型快。因此此,ObjectARX程序運(yùn)行速度度比AutoLisp快。穩(wěn)定性:當(dāng)因嚴(yán)重錯(cuò)誤誤而導(dǎo)致應(yīng)用用程序進(jìn)程崩崩潰時(shí),Autolisp因進(jìn)程的獨(dú)立立性強(qiáng),不會(huì)會(huì)影響AutoCAD的進(jìn)進(jìn)程程。。但但因因ObjectARX的應(yīng)應(yīng)用用程程序序與與AutoCAD本身身的的核核心心進(jìn)進(jìn)程程共共享享內(nèi)內(nèi)存存空空間間,,所所以以當(dāng)當(dāng)應(yīng)應(yīng)用用程程序序崩崩潰潰時(shí)時(shí),,容容易易影影響響到到AutoCAD自身身的的進(jìn)進(jìn)程程,,但但若若應(yīng)應(yīng)用用程程序序經(jīng)經(jīng)過(guò)過(guò)嚴(yán)嚴(yán)格格測(cè)測(cè)試試,,則則不不會(huì)會(huì)發(fā)發(fā)生生問(wèn)問(wèn)題題。。性能能::ObjectARX實(shí)時(shí)時(shí)擴(kuò)擴(kuò)展展AutoCAD,共共享享其其內(nèi)內(nèi)存存地地址址,,可可隨隨意意調(diào)調(diào)用用其其核核心心數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù),,功功能能強(qiáng)強(qiáng)大大。。而而其其他他方方法法僅僅限限于于使使用用AutoCAD命令令或或系系統(tǒng)統(tǒng)定定義義的的函函數(shù)數(shù),,功功能能有有限限。。技術(shù)術(shù)難難度度::VBA、AutoLisp等方方法法較較容容易易,,學(xué)學(xué)習(xí)習(xí)周周期期短短;;而而ObjectARX依賴賴于于C++,需需經(jīng)經(jīng)嚴(yán)嚴(yán)格格的的編編譯譯、、連連接接,,學(xué)學(xué)習(xí)習(xí)的的周周期期長(zhǎng)長(zhǎng)。。2.ObjectARX開發(fā)發(fā)的的一一般般步步驟驟與與應(yīng)應(yīng)用用程程序序加加載載ObjectARX開發(fā)發(fā)概概述述開發(fā)發(fā)的的基基本本過(guò)過(guò)程程及及應(yīng)應(yīng)用用程程序序加加載載開發(fā)發(fā)Win32Dynamic-LinkLibrary型工工程程開發(fā)發(fā)MFCAppwizard(dll)型工工程程ObjectARX開發(fā)發(fā)概概述述應(yīng)用用ObjectARX所開開發(fā)發(fā)的的應(yīng)應(yīng)用用程程序序稱稱為為ObjectARX應(yīng)用用程程序序,,為為WindowsDLL程序序。。而而AutoCAD本身身為為Windows程序序。。Windows程序序與與DLL之間間采采用用Windows消息息傳傳遞遞機(jī)機(jī)制制通通訊訊,,如如下下圖圖所所示示::ObjectARX開發(fā)發(fā)概概述述在ObjectARX應(yīng)用用程程序序加加載載時(shí)時(shí),,AutoCAD傳遞遞消消息息AcRx::kInitAppMsg給應(yīng)應(yīng)用用程程序序,,這這時(shí)時(shí)通通過(guò)過(guò)acedRegCmds宏的的addCommand命令令注注冊(cè)冊(cè)一一個(gè)個(gè)命命令令,,同同時(shí)時(shí)指指定定命命令令所所要要調(diào)調(diào)用用的的函函數(shù)數(shù),,然然后后定定義義此此函函數(shù)數(shù)。。卸卸載載時(shí)時(shí),,傳傳遞遞AcRx::kUnloadAppMsg,同樣調(diào)調(diào)用acedRegCmd宏的removeGroup函數(shù),完完成應(yīng)用用程序的的卸載。。開發(fā)的基基本過(guò)程程及應(yīng)用用程序加加載定制開發(fā)發(fā)環(huán)境編輯應(yīng)用用程序編譯、連連接、生生成arx文件及應(yīng)應(yīng)用程序序加載定制開發(fā)發(fā)環(huán)境分兩部分分:每個(gè)個(gè)工程都都需要的的部分和和單獨(dú)為為某一工工程單獨(dú)獨(dú)定制的的。每個(gè)工程程都需要要的部分分:進(jìn)行行ObjectARX開發(fā)時(shí),,需要使使用ObjectARX開發(fā)工具具包資源源,并且且每個(gè)工工程項(xiàng)目目中都要要使用,,因此可可將其資資源的目目錄設(shè)置置于開發(fā)發(fā)環(huán)境配配置中。。方法:?jiǎn)螕鬞ools|Options菜單,在在彈出的的對(duì)話框框中單擊擊Directories(目錄))屬性頁(yè)頁(yè),點(diǎn)擊擊showdirectoriesfor下拉列表表框的分分別選擇擇和添加加OBJECTARX2000目錄下的的INC和LIB兩個(gè)路徑徑,這樣樣便包含含了以后后所要使使用的頭頭文件和和庫(kù)文件件。定制開發(fā)發(fā)環(huán)境為某一工工程單獨(dú)獨(dú)定制的的部分::每個(gè)項(xiàng)項(xiàng)目在建建立后,,還應(yīng)設(shè)設(shè)置ARX程序的編編譯開關(guān)關(guān),使程程序能夠夠按預(yù)定定的編譯譯方案進(jìn)進(jìn)行編譯譯。步驟:?jiǎn)螕舨藛螁蝡roject|settings,在彈出出的對(duì)話話框projectsettings中1.選擇c/c++屬性頁(yè),,選擇category為CodeGeneration,使Userun-timelibrary為DebugMutilthreadedDLL。定制開發(fā)發(fā)環(huán)境2.選擇Link屬性頁(yè),,選擇Category為General。在Outputfilename文本框中中,將文文件擴(kuò)展展名改為為arx,在Object/Librarymodules列表中添添加輸入入庫(kù),需需要加入入哪些庫(kù)庫(kù)由項(xiàng)目目中用到到的函數(shù)數(shù)來(lái)確定定。然后后選擇Category為Input,在Ignorelibraries文本框中中輸入msvcrtd.lib。最后,,選擇Category為Output,在Baseaddress文本框中中輸入0x1c000000。這樣,,便完成成了應(yīng)用用程序的的設(shè)置。。編輯應(yīng)用用程序一般的ObjectARX應(yīng)用程序序包含頭頭文件、、源文件件和模塊塊定義文文件,這這也是動(dòng)動(dòng)態(tài)連接接庫(kù)文件件所包含含的文件件。模塊定義義文件::指定了了庫(kù)文件件名和輸輸出函數(shù)數(shù)名。LIBRARY節(jié)輸出的的文件名名,必須須和工程程最后生生成的動(dòng)動(dòng)態(tài)庫(kù)((即ARX應(yīng)用程序序)同名名;所有有的ObjectARX程序必須須輸出兩兩個(gè)函數(shù)數(shù):acrxEntryPoint和acrsGetApiVersion。編輯應(yīng)用用程序一般的ObjectARX應(yīng)用程序序源文件件及頭文文件應(yīng)包包含以下下函數(shù)::入口點(diǎn)函函數(shù):acrxEntryPoint()。為接收收AutoCAD消息的函函數(shù),在在函數(shù)體體中有一一switch語(yǔ)句,可可分別處處理從AutoCAD程序接收收到的消消息,執(zhí)執(zhí)行相應(yīng)應(yīng)的操作作。添加命令令函數(shù)::應(yīng)用acedRegCmds宏的addCommand函數(shù)可給給應(yīng)用程程序添加加一條外外部命令令,并指指定此命命令所要要調(diào)用的的函數(shù)。。上步中外外部命令令所要調(diào)調(diào)用的函函數(shù):此此函數(shù)中中操作的的為我們們所要完完成的任任務(wù)。編輯應(yīng)用用程序所要包含含的頭文文件:在在程序中中引用了了許多函函數(shù),其其說(shuō)明在在頭文件件中,而而其定義義在庫(kù)文文件中。。在工程程的設(shè)置置中已經(jīng)經(jīng)包含了了庫(kù)文件件,需要要在頭文文件或源源文件開開頭將其其頭文件件包含進(jìn)進(jìn)去。如如函數(shù)acedCommand用于在應(yīng)用程程序中執(zhí)行一一條或多條AutoCAD命令,它在頭頭文件acedads.h中說(shuō)明。所以以,當(dāng)程序中中用到它時(shí),,必須包含此此頭文件。編譯、連接、、生成arx文件及應(yīng)用程程序加載將各文件編輯輯好后,編譯譯、連接便可可生成以arx為擴(kuò)展名的動(dòng)動(dòng)態(tài)連接庫(kù)文文件。應(yīng)用程序的加加載:菜單命令Tools|LoadApplication。命令:ARX。自動(dòng)加載。在在啟動(dòng)目錄下下建立acad.rx文件,包含要要執(zhí)行的命令令名,系統(tǒng)在在啟動(dòng)時(shí)便可可自動(dòng)加載該該程序。開發(fā)Win32Dynamic-LinkLibrary型工程動(dòng)態(tài)連接庫(kù)文文件分為兩類類:Win32Dynamic-LinkLibrary型和MFCApplication(dll)型。第一種種較簡(jiǎn)單,,而第二種種則有MFC的支持。Win32Dynamic-LinkLibrary型工程項(xiàng)目目的創(chuàng)建過(guò)過(guò)程:?jiǎn)螕鬎ile|New,選擇Projects屬性頁(yè),在在對(duì)話框中中選中Win32Dynamic-LinkLibrary。確定適當(dāng)當(dāng)?shù)穆窂胶秃兔Q,確確認(rèn)。在下下一頁(yè)中,,選擇AnemptyDLLproject。按照前面所所述,設(shè)定定程序的編編譯開關(guān),,在link屬性頁(yè)的庫(kù)庫(kù)模塊列表表中,添加加acad.lib,rxapi.lib,acrx15.lib,acutil15.lib及acedapi.lib一般可滿足足需要。開發(fā)Win32Dynamic-LinkLibrary型工程添加文件::至少應(yīng)添添加一個(gè)源源文件和一一個(gè)模塊定定義文件。。在源文件件中,至少少應(yīng)包含一一個(gè)入口點(diǎn)點(diǎn)函數(shù),用用它來(lái)接收收從AutoCAD發(fā)送來(lái)的消消息。一般般還應(yīng)包含含一個(gè)命令令注冊(cè)函數(shù)數(shù)和注冊(cè)函函數(shù)所要調(diào)調(diào)用的函數(shù)數(shù)。模塊文文件中,指指定庫(kù)名并并添加輸出出函數(shù)名。。編譯、連接接及運(yùn)行程程序:如““開發(fā)的基基本過(guò)程及及應(yīng)用程序序加載”所所述。開發(fā)MFCAppwizard(dll)型工程MFCApplication(dll)型工程項(xiàng)目目的特點(diǎn)::ObjectARX提供了一組組類,使得得開發(fā)者能能夠創(chuàng)建基基于MFC的界面。而而這組類是是繼承于vc的CDialog類,所以要要使用這些些類,必須須使工程基基于MFC,然后再對(duì)對(duì)里面的文文件作適當(dāng)當(dāng)?shù)脑O(shè)置。。MFCApplication(dll)型工程項(xiàng)目目的創(chuàng)建過(guò)過(guò)程:建立項(xiàng)目文文件:?jiǎn)螕魮鬎ile|New,選擇Projects屬性頁(yè),在在對(duì)話框中中選中MFCApplication(dll)。確確定定適適當(dāng)當(dāng)?shù)牡穆仿窂綇胶秃兔Q稱((假假設(shè)設(shè)為為Mymfc),確確認(rèn)認(rèn)。。在在下下一一頁(yè)頁(yè)中中,,選選擇擇MFCExtensionDLL(UsingsharedMFCDLL)。這這時(shí)時(shí),,程程序序自自動(dòng)動(dòng)建建立立Mymfc.cpp,Mymfc.def,StdAfx.h,Resource.h,StdAfx.cpp等六六個(gè)個(gè)文文件件。。按照照前前面面所所述述,,設(shè)設(shè)定定項(xiàng)項(xiàng)目目::在在link屬性性頁(yè)頁(yè)的的庫(kù)庫(kù)模模塊塊列列表表中中,,添添加加acge15.lib,acad.lib,acedapi.lib,acrx15.lib,acdb15.lib,acutil15.lib,rxapi.lib,acui15.lib,adui15.lib一般般可可滿滿足足需需要要。。創(chuàng)建建對(duì)對(duì)話話框框::應(yīng)應(yīng)用用基基于于MFC的工工程程的的主主要要目目的的是是處處理理對(duì)對(duì)話話框框,,所所以以要要?jiǎng)?chuàng)創(chuàng)建建對(duì)對(duì)話話框框。。其其創(chuàng)創(chuàng)建建方方法法與與一一般般的的VC程序序相相似似。。創(chuàng)建建類類和和控控件件::創(chuàng)創(chuàng)建建操操作作此此對(duì)對(duì)話話框框的的類類和和控控件件,,以以完完成成對(duì)對(duì)對(duì)對(duì)話話框框的的操操作作,,此此步步驟驟與與一一般般的的VC程序序相相似似。。編輯輯對(duì)對(duì)話話框框頭頭文文件件::將將對(duì)對(duì)話話框框的的父父類類由由CDialog改為為由由ObjectARX定義義的的類類,,以以繼繼承承由由ObjectARX定義的的特征征。創(chuàng)建處處理程程序并并向其其添加加代碼碼:添添加處處理對(duì)對(duì)話框框及其其中控控件的的函數(shù)數(shù),并并添加加操縱縱代碼碼。修改基基本文文件::在創(chuàng)創(chuàng)建工工程時(shí)時(shí)自動(dòng)動(dòng)生成成的基基本文文件StdAfx.h,StdAfx.cpp,Mymfc.cpp,Mymfc.def,并不能能完全全滿足足程序序需要要,還還要作作進(jìn)一一步修修改,,以增增加與與ObjectARX的接口口。編譯、、連接接及運(yùn)運(yùn)行程程序::如““開發(fā)發(fā)基本本過(guò)程程及應(yīng)應(yīng)用程程序加加載””所述述。3.菜單設(shè)計(jì)計(jì)為方便外外部命令令的調(diào)用用,AutoCAD提供了菜菜單定制制的途徑徑,用戶戶可通過(guò)過(guò)菜單來(lái)來(lái)調(diào)用自自定義的的外部命命令。AutoCAD中所有的的菜單均均可自定定義,如如下拉菜菜單、工工具按鈕鈕、圖像像菜單、、屏幕菜菜單等。。菜單文件件的編輯輯、加載載菜單樣板板文件可可以在文文本編輯輯狀態(tài)下下編輯,,其擴(kuò)展展名為mnu,在經(jīng)過(guò)過(guò)加載后后,系統(tǒng)統(tǒng)會(huì)生成成編譯后后的文件件(擴(kuò)展展名為mnc)、菜單單資源文文件(擴(kuò)擴(kuò)展名為為mnr)等等文文件。加加載的方方法:在命令狀狀態(tài)下執(zhí)執(zhí)行命令令:menu,選擇文文件類型型為樣板板文件即即可加載載mnu文件。執(zhí)行菜單單命令::工具|自定義菜菜單,選選擇要加加載的文文件即可可。修改系統(tǒng)統(tǒng)文件::acad.mnu。將要添添加的部部分寫入入此文件件,程序序啟動(dòng)加加載菜單單時(shí)便可可自動(dòng)加加載自定定義的部部分。通過(guò)菜單單對(duì)外部部命令的的調(diào)用菜單文件件的定義義分為菜菜單組、、菜單節(jié)節(jié)和菜單單項(xiàng)。每每個(gè)菜單單文件為為一組。。而菜單單的每一一部分為為一項(xiàng),,如一條條下拉菜菜單。而而菜單的的每一項(xiàng)項(xiàng)為一菜菜單項(xiàng)。。而菜單單項(xiàng)由標(biāo)標(biāo)示符,,標(biāo)簽文文本和宏宏命令,,其中標(biāo)標(biāo)簽文本本為顯示示在菜單單上的文文字,而而宏命令令就是將將要執(zhí)行行的內(nèi)部部或外部部命令。。因此執(zhí)執(zhí)行此菜菜單命令令就如同同在命令令行執(zhí)行行一樣。。圖像菜單單的制作作與調(diào)用用如右圖所所示,為為繪制三三維曲面面的圖像像菜單。。利用對(duì)對(duì)圖像菜菜單的調(diào)調(diào)用,可可以更形形象的表表達(dá)出所所要繪制制的圖形形。圖像菜單單的制作作與調(diào)用用幻燈片文文件的制制作:要要制作圖圖像菜單單要先制制作幻燈燈片然后后利用AutoCAD提供供的的工工具具制制作作幻幻燈燈片片庫(kù)庫(kù)文文件件。。圖像像菜菜單單的的制制作作::圖圖像像菜菜單單以以***IMAGE開頭頭,,此此為為一一節(jié)節(jié)。。在在節(jié)節(jié)內(nèi)內(nèi)還還有有子子菜菜單單名名,,以以**開開頭頭。。如如右右邊邊代代碼碼所所示示::***image**image_3DObjects[三維對(duì)象][acad(Box3d,長(zhǎng)方體)]^C^C_ai_box[acad(Pyramid,棱錐體)]^C^C_ai_pyramid[acad(Wedge,楔體)]^C^C_ai_wedge[acad(Dome,上半球)]^C^C_ai_dome[acad(Sphere,球體)]^C^C_ai_sphere[acad(Cone,圓錐體)]^C^C_ai_cone[acad(Torus,圓環(huán))]^C^C_ai_torus圖像菜單的制制作與調(diào)用圖像菜單的加加載與調(diào)用::圖像菜單必必須經(jīng)過(guò)加載載與調(diào)用才能能顯示。它一一般通過(guò)下拉拉菜單來(lái)調(diào)用用,在下拉菜菜單的宏命令令中調(diào)用圖像像菜單的子菜菜單名,即可可調(diào)用整個(gè)圖圖像菜單。如如以下程序段段:ID_3dsurface[三維曲面(&3)...]$I=ACAD.image_3dobjects$I=ACAD.*后面以$開頭的話即為為對(duì)圖像菜單單的調(diào)用。4.綜合實(shí)例:參參數(shù)化齒輪設(shè)設(shè)計(jì)利用ObjectARX技術(shù)可進(jìn)行設(shè)設(shè)計(jì)環(huán)境的定定制、功能的的擴(kuò)充以及菜菜單的定制。。本例利用了ObjectARX的圖形數(shù)據(jù)庫(kù)庫(kù)功能、基于于MFC的用戶界面功功能和ADS的部分函數(shù)來(lái)來(lái)實(shí)現(xiàn)了直齒齒輪的參數(shù)化化設(shè)計(jì)。它根根據(jù)輸入的齒齒數(shù)、模數(shù)、、齒型、材料料及內(nèi)孔直徑徑等參數(shù)來(lái)自自動(dòng)計(jì)算齒輪輪的各參數(shù)并并根據(jù)機(jī)械設(shè)設(shè)計(jì)的要求來(lái)來(lái)得出齒輪的的結(jié)構(gòu),并按按國(guó)標(biāo)繪出齒齒輪的圖形。。分析軟件需求求概要設(shè)計(jì)詳細(xì)設(shè)計(jì)編寫代碼調(diào)試、測(cè)試并并完成菜單制制作和程序加加載分析軟件需求求本軟件要求按按照輸入的參參數(shù)計(jì)算齒輪輪各變量并為為齒輪的結(jié)構(gòu)構(gòu)提供設(shè)計(jì)方方案。其中,,對(duì)每種齒輪輪必須提供的的基本參數(shù)為為:齒數(shù)模數(shù)壓力角齒寬齒型材料內(nèi)孔直徑(或或軸的直徑))銷孔高度(對(duì)對(duì)于齒輪軸式式可不提供))分析軟件需求求對(duì)于齒輪軸式式和輪輻式,,因還牽扯其其他參數(shù),此此程序略。對(duì)于實(shí)心式。。若為帶有臺(tái)臺(tái)階的,還需需以下參數(shù)::臺(tái)階高度臺(tái)階的圓周直直徑分析軟件需求求對(duì)于腹板式,,還應(yīng)提供如如圖所標(biāo)示的的各參數(shù)和孔孔的個(gè)數(shù)。其其中輸入的參參數(shù)的值在機(jī)機(jī)械設(shè)計(jì)中有有一定的范圍圍要求,所以以要求系統(tǒng)能能檢驗(yàn)輸入值值的可接受性性,也可由系系統(tǒng)根據(jù)機(jī)械械設(shè)計(jì)的要求求直接給出各各參數(shù)的值。。分析軟件需求求根據(jù)輸入的參參數(shù)計(jì)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論