• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于特征的軸參數(shù)化繪圖系統(tǒng)

      2014-03-23 08:00:28孫志學(xué)
      關(guān)鍵詞:對(duì)話框繪圖菜單

      孫志學(xué), 張 揚(yáng)

      (陜西理工學(xué)院 機(jī)械工程學(xué)院, 陜西 漢中 723000)

      計(jì)算機(jī)輔助設(shè)計(jì)在各行業(yè)的應(yīng)用已經(jīng)十分廣泛,絕大部分的CAD軟件常常是一種通用的繪圖設(shè)計(jì)軟件,它們適應(yīng)的行業(yè)比較廣泛,但專業(yè)性不強(qiáng),無法在特定領(lǐng)域或行業(yè)很好地發(fā)揮輔助設(shè)計(jì)作用。為了使CAD軟件能在某些特定的專業(yè)領(lǐng)域得到更好的應(yīng)用,對(duì)CAD軟件進(jìn)行有目的、有方向、專業(yè)化的二次開發(fā)是很必要的。下面主要對(duì)機(jī)械設(shè)計(jì)中的軸零件的參數(shù)化繪圖系統(tǒng)進(jìn)行研究。

      1 軸的概述

      1.1 軸的分類

      圖1 軸的分類

      軸是組成機(jī)械的主要零件之一。按照軸線形狀的不同,軸可分為兩大類:直軸和曲軸。直軸按照所受載荷性質(zhì)的不同,可分為三種:心軸、傳動(dòng)軸和轉(zhuǎn)軸。直軸根據(jù)外形的不同,可分為兩種:光軸和階梯軸。光軸具有下列特點(diǎn):形狀簡(jiǎn)單,加工容易,應(yīng)力集中源少,光軸主要用于傳動(dòng)軸;階梯軸與光軸相反,階梯軸常用于轉(zhuǎn)軸。軸的分類情況可以用圖1清晰表示。此外,還有一些特殊用途的軸,如凸輪軸和鋼絲軟軸等。

      1.2 軸的特征分析

      在特征的基礎(chǔ)上可以考慮建立軸的信息模型。通常一個(gè)機(jī)械零部件包含有眾多的特征,其中形狀特征是這些特征中最重要的,它是其它信息的載體??梢园研螤钐卣鬟M(jìn)行分解研究,認(rèn)為若干輔助特征和主特征組合而成了軸的形狀特征,主特征間的空間相互位置關(guān)系是鄰接關(guān)系;輔助特征附屬于一個(gè)主特征,輔助特征可依附于主特征的輪廓表面或端面[1]。

      根據(jù)這種思想,本系統(tǒng)設(shè)計(jì)中采用了復(fù)合形狀特征,即由至少一個(gè)主形狀特征和若干個(gè)輔助形狀特征以一定的結(jié)合方式組合成具有特定功能的形狀特征。可以考慮建立多種不同復(fù)合形狀特征的特征庫(kù),供設(shè)計(jì)者選擇。

      結(jié)合本系統(tǒng)的實(shí)際情況,對(duì)常用直軸類零件進(jìn)行特征分析,得到如表1所示的形狀特征劃分結(jié)果。

      表1 直軸類零件形狀特征分類

      2 系統(tǒng)開發(fā)相關(guān)技術(shù)簡(jiǎn)介

      2.1 參數(shù)化設(shè)計(jì)技術(shù)

      當(dāng)前CAD技術(shù)重要的研究領(lǐng)域之一是參數(shù)化技術(shù)。它是指對(duì)結(jié)構(gòu)形狀有一定規(guī)律的設(shè)計(jì)對(duì)象,可以把對(duì)象的結(jié)構(gòu)尺寸用一組參數(shù)來表示,當(dāng)參數(shù)取值不同時(shí)則可以生成不同的設(shè)計(jì)對(duì)象,即設(shè)計(jì)結(jié)果受尺寸驅(qū)動(dòng)的影響,所以又稱為參數(shù)化尺寸驅(qū)動(dòng)[1]。

      2.2 ObjectARX

      ObjectARX是一個(gè)軟件開發(fā)包,它包含一組動(dòng)態(tài)鏈接庫(kù),這些庫(kù)能利用AutoCAD核心數(shù)據(jù)庫(kù)結(jié)構(gòu)與代碼。庫(kù)中包含一組通用工具,使得二次開發(fā)者可以直接訪問AutoCAD數(shù)據(jù)庫(kù)結(jié)構(gòu)、圖形系統(tǒng)及CAD幾何造型核心,以便能在運(yùn)行期間實(shí)時(shí)擴(kuò)展AutoCAD具有的類似其功能以及創(chuàng)建全面享受AutoCAD固有命令之特權(quán)的新命令[2]。

      2.3 相關(guān)接口技術(shù)

      ObjectARX應(yīng)用程序主要包含頭文件部分、函數(shù)聲明部分、接口函數(shù)部分和用戶函數(shù)主體部分[2]。其中接口函數(shù)部分使用initApp( )、acrxEntryPoint( )和unloadApp()三個(gè)關(guān)鍵函數(shù)。當(dāng)應(yīng)用程序被加載時(shí),AutoCAD調(diào)用initApp( );當(dāng)應(yīng)用程序被卸載時(shí),AutoCAD調(diào)用unloadApp( )。這兩個(gè)函數(shù)均是通過acrxEntryPoint( )函數(shù)來實(shí)現(xiàn)AutoCAD調(diào)用的。

      ObjectARX是一個(gè)用C++編寫的軟件開發(fā)包,在Visual C++的下拉菜單“Project”中設(shè)置其具體物理路徑就可以使用它。 具體操作為:“Project”→“Setting”→“C/C++”→“Preprocessor” →“Additional include directories”,在其后的編輯框中輸入ObjectARX中的文件夾inc的具體物理路徑;同理按照操作路徑:“Project”→“Setting”→“Link”→“Input” →“Additional library path”,在其后的編輯框中輸入ObjectARX中的文件夾lib的具體物理路徑。這樣就可以在Visual C++程序中使用ObjectARX中的函數(shù)。

      本研究以AutoCAD 2006為開發(fā)平臺(tái),并采用Visual C++6.0、ObjectARX等開發(fā)工具開發(fā)基于特征的軸參數(shù)化繪圖系統(tǒng)。

      3 系統(tǒng)菜單設(shè)計(jì)

      本設(shè)計(jì)是基于AutoCAD平臺(tái)來進(jìn)行開發(fā)的,設(shè)計(jì)了軸CAD系統(tǒng)子菜單,并把它添加到AutoCAD的標(biāo)準(zhǔn)菜單文件ACAD.mnu中。同時(shí)還開發(fā)了圖像塊菜單,這樣將會(huì)大大增強(qiáng)用戶界面的效果。新的菜單文件ACAD.mnu被加載、編譯后就可以使用[3]。當(dāng)用鼠標(biāo)點(diǎn)擊用戶自定義菜單“軸CAD系統(tǒng)”時(shí),出現(xiàn)下拉菜單。下拉菜單中內(nèi)容有:設(shè)置、軸的分類等;其中菜單項(xiàng)“設(shè)置”有子菜單:圖幅、層和線型、文字樣式和標(biāo)注樣式,“圖幅”可以用來繪制出圖的圖幅,其它幾個(gè)菜單項(xiàng)在繪圖時(shí)起輔助作用;菜單項(xiàng)“軸的分類”有子菜單:直軸和曲軸,系統(tǒng)子菜單設(shè)計(jì)效果(部分截圖)如圖2所示。

      圖2 系統(tǒng)子菜單

      用戶自定義菜單中某些菜單項(xiàng)含有圖像控件菜單[4],如“直軸”。當(dāng)用鼠標(biāo)單擊菜單項(xiàng)“直軸”時(shí),系統(tǒng)彈出圖像塊菜單“直軸特征分類”對(duì)話框,如圖3所示。對(duì)話框中展示了各種直軸的原型及其對(duì)應(yīng)的圖形,圖中左側(cè)的列表框中顯示的是直軸的名稱,右側(cè)顯示了直軸的預(yù)覽圖形。例如當(dāng)在“直軸特征分類”中選擇“圓柱面+倒角”時(shí),右側(cè)預(yù)覽區(qū)顯示對(duì)應(yīng)的圖形預(yù)覽(預(yù)覽圖形底色變黑),其中“圓柱面”是此直軸的主特征,“倒角”是它的輔助特征。選中類型后,單擊按鈕“確定”,就可以打開此直軸的設(shè)計(jì)對(duì)話框。

      圖3 圖像塊菜單

      圖4 直軸結(jié)構(gòu)設(shè)計(jì)對(duì)話框

      4 軸參數(shù)化繪圖系統(tǒng)的實(shí)現(xiàn)

      4.1 對(duì)話框設(shè)計(jì)

      以“圓柱面+圓角+倒角(逆向)”為例。當(dāng)用戶在圖3中選擇“圓柱面+圓角+倒角(逆向)”時(shí)系統(tǒng)自動(dòng)顯示對(duì)應(yīng)幻燈片,此時(shí)用鼠標(biāo)單擊該對(duì)話框中的按鈕“確定”,便可以關(guān)掉圖3的對(duì)話框,彈出“圓柱面+圓角+倒角(逆向)”的設(shè)計(jì)對(duì)話框如圖4所示。

      在圖4所示的直軸結(jié)構(gòu)設(shè)計(jì)對(duì)話框中輸入直軸的繪制圖形的定位點(diǎn)參數(shù)和設(shè)計(jì)參數(shù)[5]:R、B、D、L、a(各長(zhǎng)度參數(shù)單位為mm,角度單位為度,各參數(shù)的意義如圖中左側(cè)圖形預(yù)覽中尺寸標(biāo)注所示)。其中“圖形定位點(diǎn)P0”既可以在對(duì)應(yīng)編輯框中輸入點(diǎn)的坐標(biāo)也可以在繪圖區(qū)域拾取點(diǎn)的坐標(biāo)。

      4.2 軸零件工作圖的繪制

      設(shè)計(jì)參數(shù)輸入后,單擊圖4中的按鈕“確定”,系統(tǒng)彈出子對(duì)話框“選擇繪圖比例”。當(dāng)用戶選擇了需要的比例,然后單擊子對(duì)話框中的按鈕“繪制零件工作圖”,系統(tǒng)可自動(dòng)繪制出與設(shè)計(jì)參數(shù)相對(duì)應(yīng)的軸零件工作圖,并對(duì)圖形進(jìn)行自動(dòng)尺寸標(biāo)注。

      取一組合理的數(shù)據(jù):插入點(diǎn)X=50,Y=50;R=50,a=45,B=50,D=200,L=300,則繪制出直軸的零件工作圖如圖5所示。為方便起見零件工作圖繪圖中比例都選擇為1∶1。另外設(shè)計(jì)過程中如果輸入的設(shè)計(jì)參數(shù)不合理,則點(diǎn)擊圖4中“確定”按鈕時(shí)系統(tǒng)有相應(yīng)的提示信息,要求用戶輸入合理的參數(shù)。

      如果再次改變參數(shù)的值,則可得到類似的零件工作圖,此處不再贅述。當(dāng)用戶選擇其它類型的軸時(shí),系統(tǒng)繪圖過程和結(jié)果與上邊類似,如系統(tǒng)可生成帶有雙圓頭平鍵的直軸(見圖6)。

      圖5 簡(jiǎn)單直軸的零件工作圖 圖6 帶有雙圓頭平鍵的直軸

      4.3 部分關(guān)鍵繪圖程序

      在VC中編程實(shí)現(xiàn)ObjectARX的應(yīng)用程序[6],首先需要在本系統(tǒng)中構(gòu)造直軸類零件特征庫(kù),具體是采用面向?qū)ο蟮姆椒▉砻枋鰪?fù)合特征信息模型。首先定義特征基類,然后通過特征基類派生出其它特征類。

      軸的零件工作圖的繪制代碼可以添加到選擇比例的對(duì)話框中的“確定”按鈕對(duì)應(yīng)的消息處理函數(shù)中,以“圓柱面+倒角+圓角(逆向)”直軸的零件工作圖的繪制為例,其核心代碼如下:

      ……

      //定義一系列三維點(diǎn)

      //定義俯視圖上的可見點(diǎn),即實(shí)線點(diǎn)

      ads_point pt0,pt1,pt2,pt3,pt4,pt5,pt6,pt7, pt8,pt9, pt10,pt12, pt13;

      //下面點(diǎn)用于畫中心線

      ads_point pt11,pt14;

      //求一系列點(diǎn)的坐標(biāo)

      pt0[X]=XPT; pt0[Y]=YPT; pt1[X]=pt0[X]; pt1[Y]=pt0[Y]+0.5*L0-B*tan(a);

      pt2[X]=pt0[X]+B; pt2[Y]=pt0[Y]+0.5*L0; pt3[X]=pt0[X]+L-R; pt3[Y]=pt2[Y];

      pt4[X]=pt0[X]+L; pt4[Y]=pt2[Y]; pt5[X]=pt4[X]; pt5[Y]=pt4[Y]+R;

      pt6[X]=pt4[X]; pt6[Y]=pt4[Y]-L0; pt7[X]=pt4[X]; pt7[Y]=pt6[Y]-R;

      pt8[X]=pt4[X]-R; pt8[Y]=pt3[Y]-L0; pt9[X]=pt2[X]; pt9[Y]=pt2[Y]-L0;

      pt10[X]=pt0[X]〗; pt10[Y]=pt9[Y]+B*tan(a); pt11[X]=pt4[X]+10; pt11[Y]=pt0[Y];

      pt12[X]=pt3[X]; pt12[Y]=pt5[Y]; pt13[X]=pt8[X]; pt13[Y]=pt7[Y];

      pt14[X]=pt0[X]-10; pt14[Y]=pt0[Y];

      //清屏

      acedCommand(RTSTR,"Erase",RTSTR,"All",RTSTR,"",RTNONE);

      //繪制圖中直線

      acedCommand(RTSTR,"Line",RTPOINT,pt0,RTPOINT,pt1,RTSTR,"",RTNONE);

      acedCommand(RTSTR,"Line",RTPOINT,pt1,RTPOINT,pt2,RTSTR,"",RTNONE);

      acedCommand(RTSTR,"Line",RTPOINT,pt2,RTPOINT,pt3,RTSTR,"",RTNONE);

      acedCommand(RTSTR,"Line",RTPOINT,pt4,RTPOINT,pt5,RTSTR,"",RTNONE);

      acedCommand(RTSTR,"arc",RTSTR,"C",RTPOINT,pt12,RTPOINT,pt3,RTPOINT,pt5,RTNONE);

      acedCommand(RTSTR,"Line",RTPOINT,pt4,RTPOINT,pt6,RTSTR,"",RTNONE);

      acedCommand(RTSTR,"Line",RTPOINT,pt6,RTPOINT,pt7,RTSTR,"",RTNONE);

      acedCommand(RTSTR,"arc",RTSTR,"C",RTPOINT,pt13,RTPOINT,pt7,RTPOINT,pt8,RTNONE);

      acedCommand(RTSTR,"Line",RTPOINT,pt8,RTPOINT,pt9,RTSTR,"",RTNONE);

      acedCommand(RTSTR,"Line",RTPOINT,pt9,RTPOINT,pt10,RTSTR,"",RTNONE);

      acedCommand(RTSTR,"Line",RTPOINT,pt10,RTPOINT,pt0,RTSTR,"",RTNONE);

      acedCommand(RTSTR,"Line",RTPOINT,pt2,RTPOINT,pt9,RTSTR,"",RTNONE);

      //畫中心線

      //創(chuàng)建一個(gè)新層:1層,用于畫中心線且此層的顏色選擇紅色

      acedCommand(RTSTR,"Layer",RTSTR,"M",RTSTR,"1",RTSTR,"C",RTSTR,"Red",RTSTR,"",〗RTSTR,"",RTNONE);

      //加載并設(shè)置中心線

      acedCommand(RTSTR,"Linetype",RTSTR,"Load",RTSTR,"CENTER",RTSTR,"",RTSTR,"Y",〗 RTSTR,"Set",RTSTR,"CENTER",RTSTR,"",RTNONE);

      //畫中心線

      acedCommand(RTSTR,"Line",RTPOINT,pt14,RTPOINT,pt11,RTSTR,"",RTNONE);

      //設(shè)置當(dāng)前層為"實(shí)體"層acedCommand(RTSTR,"layer",RTSTR,"S",RTSTR,"0",RTSTR,"",RTNONE);

      ……

      其它軸零件工作圖的繪制核心代碼與上邊的代碼類似,不再贅述。

      5 結(jié) 語(yǔ)

      軸是機(jī)械中一種常用的零件,它的種類繁多,結(jié)構(gòu)較復(fù)雜,這些都給設(shè)計(jì)工作帶來了許多困難。本研究中通過軸的特征分析,在Visual C++中采用面向?qū)ο蟮姆椒ń⑷舾苫惡突惖呐缮惖龋⒕幊虒?shí)現(xiàn)了軸參數(shù)化繪圖系統(tǒng)。研究發(fā)現(xiàn):特征分析技術(shù)可以大大提高CAD系統(tǒng)的描述能力,從而提高CAD系統(tǒng)的建模能力。在機(jī)械設(shè)計(jì)中,軸的設(shè)計(jì)還涉及一些扭矩、彎矩、軸徑等參數(shù)的計(jì)算以及強(qiáng)度、剛度等的校核[7-9]。在以后的工作中,應(yīng)對(duì)系統(tǒng)功能進(jìn)一步擴(kuò)充,可以考慮在系統(tǒng)添加這些計(jì)算、校核等功能,從而增強(qiáng)系統(tǒng)的集成化、智能化。

      [參考文獻(xiàn)]

      [1] 李玉峰.基于特征與數(shù)據(jù)庫(kù)的軸CAD系統(tǒng)(SHAFTCAD)開發(fā)與研究[D].西安:西安建筑科技大學(xué),2002:7-19.

      [2] 王福軍,張志民,張師偉.AutoCAD2000環(huán)境下C/Visual C++應(yīng)用程序開發(fā)教程[M].北京:北京希望電子出版社,2008:3-4.

      [3] 梁雪春,宋德明.AutoCAD2002二次開發(fā)技術(shù)指南[M].北京:清華大學(xué)出版社,2001:111-116.

      [4] 葛敬俠,崔洪斌.塔設(shè)備CAD參數(shù)化繪圖系統(tǒng)研究與開發(fā)[J].機(jī)械設(shè)計(jì)與制造,2006(1):75-77.

      [5] 楊可楨,程光蘊(yùn).機(jī)械設(shè)計(jì)基礎(chǔ)[M].5版.北京:高等教育出版社,2011:244-251.

      [6] 陳海霞,高廣德.基于ObjectARX和Visual C++開發(fā)工具的格柵參數(shù)化設(shè)計(jì)[J].三峽大學(xué)學(xué)報(bào):自然科學(xué)版,2006,28(1):61-64.

      [7] 周慧蘭,周新建.軸強(qiáng)度設(shè)計(jì)及自動(dòng)修改CAD系統(tǒng)研究與實(shí)現(xiàn)[J].華東交通大學(xué)學(xué)報(bào),2007,24(5):53-56.

      [8] 易慧君,鐘經(jīng)農(nóng).減速器軸系部件CAD系統(tǒng)的研制[J].湖南大學(xué)學(xué)報(bào):自然科學(xué)版,2003,30(3):41-43,61.

      [9] 潘秀石,倪俊芳.基于Solid Edge軸參數(shù)化設(shè)計(jì)系統(tǒng)研究[J].蘇州大學(xué)學(xué)報(bào):工科版,2012,32(3):21-25.

      猜你喜歡
      對(duì)話框繪圖菜單
      來自河流的你
      “禾下乘涼圖”繪圖人
      中國(guó)新年菜單
      正?;謴?fù)虛擬機(jī)
      Bootlace Worms’Secret etc.
      基于HTML5 Canvas繪圖技術(shù)應(yīng)用
      本月菜單
      美食堂(2017年1期)2017-01-13 01:37:42
      Surfer和ArcView結(jié)合在氣象繪圖中的應(yīng)用
      河北遙感(2015年2期)2015-07-18 11:11:14
      一個(gè)“公海龜”的求偶菜單
      鴨綠江(2013年10期)2013-03-11 19:41:55
      快速抓取對(duì)話框中的完整信息
      電腦迷(2012年22期)2012-04-29 20:30:54
      永宁县| 甘洛县| 定远县| 平塘县| 肥西县| 德化县| 花莲市| 山东省| 三原县| 涟水县| 凤冈县| 右玉县| 曲周县| 湖口县| 北票市| 南岸区| 德庆县| 襄汾县| 滁州市| 平果县| 宁都县| 临武县| 当涂县| 兖州市| 青田县| 镇平县| 锦州市| 聂荣县| 景洪市| 安顺市| 西昌市| 天镇县| 女性| 中西区| 乌兰浩特市| 珲春市| 林西县| 呼图壁县| 贵德县| 桂东县| 慈溪市|