• 
    

    
    

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

      在AutoCAD中應(yīng)用Autolisp實現(xiàn)軸承參數(shù)化繪圖

      2012-03-30 08:05:00王弘慧李建輝
      哈爾濱軸承 2012年1期
      關(guān)鍵詞:子程序二次開發(fā)繪圖

      王弘慧 ,李建輝

      (1.哈爾濱軸承集團公司 質(zhì)量管理部,黑龍江 哈爾濱 150036;2.中航工業(yè)哈爾濱軸承有限公司 研發(fā)中心,黑龍江 哈爾濱 150036)

      1 前言

      AutoCAD是由美國Autodesk公司推出的通用繪圖設(shè)計軟件,功能強大,但其功能還僅限于幫助用戶完成CAD中的圖形顯示和繪制。AutoCAD開發(fā)性好,可以利用Autolisp進行二次開發(fā),通過接口將其余高級應(yīng)用相連接,可實現(xiàn)結(jié)合造型、分析計算等功能,提高輔助設(shè)計能力。本文通過編寫Autolisp程序,實現(xiàn)AutoCAD能以參數(shù)化繪圖為基礎(chǔ)的實體參數(shù)化設(shè)計。用戶只要給出參數(shù)如直徑、長度等信息,通過檢索圖形庫,即可快速生成所需圖形。

      2 參數(shù)化繪圖

      所謂參數(shù)化繪圖,是指用戶根據(jù)參數(shù)對話框的提示,輸入相關(guān)的參數(shù),就能繪制出所需的圖樣。實質(zhì)上,就是將圖形信息記錄在程序中,圖形的描述通??煞譃椋簣D形的拓撲關(guān)系、圖形的幾何參數(shù)以及這些集合參數(shù)與圖形結(jié)構(gòu)參數(shù)之間的聯(lián)系,通常用一組變量記錄圖形的集合參數(shù)(如點的坐標),用一系列的賦值語句表達幾何參數(shù)與及結(jié)構(gòu)參數(shù)(如圖形的長、寬等)之間的關(guān)系,然后用一系列的調(diào)用語句來描述圖形的拓撲關(guān)系。對于一般的參數(shù)化繪圖的程序設(shè)計,可以遵循以下步驟:

      (1)分析結(jié)構(gòu)特征,確定繪圖參數(shù)。通常繪制一個零件圖樣,需要很多尺寸,但是不可能把所有尺寸都做參數(shù)化。這時就需要我們分析這個零件,確定既能體現(xiàn)零件的結(jié)構(gòu)特征,又能推導(dǎo)出其他尺寸的基本尺寸作為繪圖參數(shù),參數(shù)越少越好。

      (2)按照圖形要求,編寫繪圖程序。在工程設(shè)計中,所有圖形都可以分解為點、直線、圓弧、圓這四種基本圖元。在二維圖形中,集合信息表示為圖形元素的關(guān)鍵點,例如點的坐標、直線的起點和終點、圓弧的起點和終點和圓的圓心,基本圖元用多種參數(shù)表示,將這些拓撲關(guān)系及控制變量信息編制成程序,設(shè)計出一組在形狀和結(jié)構(gòu)上具有相似性的產(chǎn)品模型,當修改圖形數(shù)據(jù)庫中的參數(shù)時即可生成不同尺寸的圖形。

      3 Autolisp語言的特點與AutoCAD的二次開發(fā)

      Autolisp語言是嵌套于AutoCAD內(nèi)部,是AutoCAD開放式設(shè)計的具體表現(xiàn)。使用Autolisp可直接調(diào)用幾乎所有AutoCAD命令,Autolisp語言既具有一般高級語言的基本結(jié)構(gòu)和功能,又具有一般高級語言所沒有的強大的圖形處理功能,是當今世界上cad軟件廣泛應(yīng)用的語言之一。

      Autolisp語言的一個最大特點是語法較為簡單易懂,廣泛地應(yīng)用于AutoCAD的二次開發(fā)上。此外,Autolisp語言還能夠利用pdb函數(shù)驅(qū)動dcl(dialog control language)文件創(chuàng)建自己的對話框,實現(xiàn)自定義的交互式參數(shù)設(shè)定對話模式,實現(xiàn)個性化圖形設(shè)計。

      4 Autolisp程序示例

      編制參數(shù)化繪制深溝球軸承的Autolisp程序,各坐標點如圖1 所示。

      圖1 深溝球軸承示例圖

      (defun c:test_exmaple()

      (setvar "cmdecho" 0)

      (setqD_out (getreal " 輸入軸承外徑尺寸D:")

      d_in (getreal " 輸入軸承內(nèi)徑尺寸d:")

      T_all (getreal " 輸入軸承裝配高T:")

      D2_out (getreal " 輸入軸承外圈擋邊徑尺寸D2:")

      d2_in (getreal " 輸入軸承內(nèi)圈擋邊徑尺寸d2:")

      P0(getreal " 輸入軸承中心徑尺寸P0:")

      Dw(getreal " 輸入軸承配套鋼球直徑Dw:")

      draw0_pt_0 '(0.0 0.0))

      (sub_draw01 draw0_pt_0)

      (sub_draw02 draw0_pt_0)

      (sub_draw04 draw0_pt_0)

      (sub_trim circle_draw04_pt0_1 draw01_pt_4_5 draw02_pt_4_5)

      (sub_trim circle_draw04_pt0_2 draw01_pt_6_7 draw02_pt_6_7))

      (defun sub_draw01(draw0_pt_0) ;此處為子程序"sub_draw01 "的開始。

      (setq draw01_pt_0 (polar draw0_pt_0 (* pi 0.5) (/D_out 2.0))

      draw01_pt_1 (polar draw01_pt_0 0.0T_all)

      draw01_pt_3 (polar draw01_pt_0 (* pi 1.5)D_out)

      draw01_pt_4 (polar draw0_pt_0 (* pi 0.5) (/D2_out 2.0))

      draw01_pt_4_5 (polar draw01_pt_4 0.0 (/T_all 2.0))

      draw01_pt_7 (polar draw0_pt_0 (* pi 1.5) (/D2_out 2.0))

      draw01_pt_6_7 (polar draw01_pt_7 0.0 (/T_all 2.0)))

      (command "line" draw01_pt_0 draw01_pt_1 "")

      (setq line01_0_1 (entlast))

      (command "line" draw01_pt_3 draw01_pt_0 "")

      (setq line01_0_3 (entlast))) ;此處為子程序"sub_draw01 "的結(jié)束。

      ……"sub_draw01"為第一個子程序,負責(zé)計算"draw01_pt_0"與 "draw01_pt_1"的坐標并繪畫出兩點間的直線,其余的子程序"sub_draw02"、"sub_draw04"、" sub_trim "因篇幅較長且彼此相似,故將其省略。

      5 輸入方法

      程序編制完畢保存后,在AutoCAD下方的輸入欄中輸入"(load "test_exmaple")命令,按“回車鍵”將看到狀態(tài)欄中顯示提示"test_exmaple",再次在輸入欄中輸入"test_exmaple"命令,將看到輸入欄提示"輸入軸承外徑尺寸D: ",在冒號后輸入外徑尺寸例如:100,然后按回車,將看到輸入欄提示"輸入軸承內(nèi)徑尺寸d: ",然后依次根據(jù)提示的文字內(nèi)容輸入d,T,D2,d2,P0,Dw等軸承參數(shù)所對應(yīng)的數(shù)據(jù)。輸入完畢后,AutoCAD自動進行各坐標點的計算并繪制出示意圖,雙擊鼠標中鍵,將看到按照用戶輸入尺寸所繪制的軸承示意圖。

      6 結(jié)束語

      實踐表明,與傳統(tǒng)的交互式繪圖相比,應(yīng)用AutoCAD中內(nèi)嵌的Autolisp進行參數(shù)化繪圖的方法,可以實現(xiàn)復(fù)雜、繁瑣、重復(fù)性繪圖的“一鍵化”操作,這將大大減少工程設(shè)計人員不必要的 重復(fù)繪圖勞動,明顯提高設(shè)計效率和準確性。此外,不僅僅在二維圖中可以進行參數(shù)化繪圖,而且在三維立體圖中也同樣可以進行廣泛的應(yīng)用。

      猜你喜歡
      子程序二次開發(fā)繪圖
      來自河流的你
      中國三峽(2022年7期)2022-12-02 05:28:02
      “禾下乘涼圖”繪圖人
      淺談基于Revit平臺的二次開發(fā)
      甘肅科技(2020年20期)2020-04-13 00:30:02
      淺談Mastercam后處理器的二次開發(fā)
      模具制造(2019年3期)2019-06-06 02:11:02
      基于HTML5 Canvas繪圖技術(shù)應(yīng)用
      電子測試(2018年4期)2018-05-09 07:28:32
      西門子Easy Screen對倒棱機床界面二次開發(fā)
      淺談子程序在數(shù)控車編程中的應(yīng)用
      Surfer和ArcView結(jié)合在氣象繪圖中的應(yīng)用
      河北遙感(2015年2期)2015-07-18 11:11:14
      子程序在數(shù)控車加工槽中的應(yīng)用探索
      西門子840D系統(tǒng)JOG模式下PLC調(diào)用并執(zhí)行NC程序
      天门市| 潢川县| 宁国市| 公安县| 深泽县| 鸡泽县| 通河县| 汉川市| 墨脱县| 曲水县| 德清县| 原阳县| 博野县| 澄城县| 南通市| 岑巩县| 桑植县| 新昌县| 浦北县| 太仆寺旗| 枞阳县| 金寨县| 长子县| 阿图什市| 石棉县| 沁水县| 宾川县| 莱州市| 宜章县| 周宁县| 姜堰市| 莆田市| 宝山区| 那曲县| 菏泽市| 安多县| 石景山区| 青海省| 济南市| 龙州县| 三原县|