AutoCAD高級培訓(xùn)_第1頁
AutoCAD高級培訓(xùn)_第2頁
AutoCAD高級培訓(xùn)_第3頁
AutoCAD高級培訓(xùn)_第4頁
AutoCAD高級培訓(xùn)_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、.AutoCAD高級培訓(xùn)第三講一、 AutoCAD的軟件配置1. 配置支持文件搜索路徑支持文件包括:菜單文件、線型文件、圖案填充文件、字體文件配置步驟:(1) 工具選項文件(2) 雙擊“支持文件搜索路徑”(3) 添加(4) 輸入路徑或“瀏覽”查找(5) 確定2. 配置自己的樣板圖形文件路徑配置步驟:(1) 工具選項文件(2) 雙擊“樣板設(shè)置”(3) 雙擊“樣板圖形文件位置”(4) 瀏覽選擇確定(5) 應(yīng)用3. 配置默認(rèn)的樣板圖形文件在快速新建時,系統(tǒng)直接使用默認(rèn)樣板圖形文件。當(dāng)沒有配置時,系統(tǒng)讓用戶選擇。配置方法舉例:將A3.dwt配置為默認(rèn)的樣板圖形文件(1) 工具選項文件(2) 雙擊“樣板

2、文件”(3) 雙擊“快速新建的默認(rèn)樣板圖形文件” (4) 瀏覽選擇A3.dwt打開(5) 應(yīng)用二、AutoCAD的顯示配置1. 窗口元素:滾動條、屏幕菜單、工具欄大按鈕、顯示工具欄提示、顯示快捷鍵2. 十字光標(biāo)大小3. 文字顯示方式三、AutoCAD的文件兼容性以及安全措施1. 低版本的AutoCAD打開高版本的圖形文件方法向上兼容方法改變AutoCAD圖形文件保存格式2. 自動備份圖形文件.bak恢復(fù)備份文件方法改名3. 自動保存圖形文件自動保存時間間隔設(shè)置設(shè)置自動保存文件的路徑在“文件”選項卡中四、AutoCAD命令別名的定制命令別名:AutoCAD鍵盤命令的簡寫。如“Line”簡化為“L

3、”,“Circle”簡化為“C”等。1. 命令別名的定義所有的命令別名都記錄在ACAD.PGP中,可用“記事本”打開并編輯。2. 定義命令別名的語法格式命令別名,*命令全名如: TR, *TRIM XJ, *TRIM JQ, *TRIM YUAN, *CIRCLE3. 注意事項:(1)編輯ACAD.PGP的方法: 工具自定義“編輯程序參數(shù)(ACAD.PGP)”(2)雖然可以修改,也可以添加,但建議不要修改。 AutoCAD允許一個命令有多個別名。(3)如果不同命令有相同別名,則該命令別名最后的一個定義有效。(4)使新的命令別名生效的方法: 命令:REINIT五、AutoCAD菜單的定制技術(shù)1.

4、 AutoCAD的菜單文件類型:.MNU菜單樣板文件,ASC碼文本文件,可以編輯。.MNC已編譯的菜單文件,二進制,不能編輯。.MNR菜單資源文件,包含由菜單使用的位圖等,每次生成.MNC文件時,自動生成.MNR文件,不能編輯。.MNS源菜單文件,與.MNU文件相同,但不包含注釋,可編輯。.MNT菜單資源文件,在.MNR文件無效(如為“只讀”)時生成該文件,不能編輯。.MNL菜單的LISP程序文件,加載同名菜單文件時,.MNL文件被自動加載,可編輯。2. 菜單文件結(jié)構(gòu):第一部分 菜單組名 (形式為:*MENUGROUP=菜單組名)第二部分 下拉菜單 (*POP n,n表示下拉菜單的序號)第三部

5、分 菜單項 (菜單項的語法結(jié)構(gòu)見后)第四部分 顯示狀態(tài)欄中的文字 (*HELPSTRINGS)這里,“*MENUGROUP=”、“*POP n”、“*HELPSTRINGS”是必需的內(nèi)容,否則,無法顯示正常菜單!3. 菜單項結(jié)構(gòu)及語法 名稱標(biāo)記 標(biāo)簽 菜單宏(標(biāo)識菜單項) (顯示給用戶) (菜單執(zhí)行的操作)例如:ID_Line &LineCC_line這里:“ID_Line”是名稱標(biāo)記部分,由用戶自己確定;“&Line” 是標(biāo)簽部分,“ ”是必不可少的,“Line”則顯示為菜單項目;“CC_line” 是菜單宏部分,“CC”的作用是連續(xù)兩次終止正在執(zhí)行命令的執(zhí)行,是軟件容錯性的

6、一種措施,“_line”的作用是執(zhí)行AutoCAD的內(nèi)部命令畫直線。4. 菜單項部分的控制符- 形成菜單項之間的分隔線。5. 菜單標(biāo)簽部分的控制符在菜單標(biāo)簽部分,使用下列特殊字符控制級聯(lián)菜單的層次結(jié)構(gòu): 表示該菜單項有子菜單。< 表示此項目是子菜單的最后一項。<< 表示該項目是子菜單的最后一項,也是上級菜單的最。后一項6菜單宏部分的控制符 表示等待用戶輸入。7. 使用自定義菜單的方法命令:MENULOAD8舉例:(下面是一個菜單文件的完整內(nèi)容,“/”及以后的內(nèi)容表示注釋或說明)*MENUGROUP=我的菜單 /菜單組的名稱*pop1ID_MyMenu 自定義菜單(&C

7、) /在菜單欄顯示的名稱為“自定義菜單”ID_FILE ->文件操作 /文件操作菜單項彈出子菜單ID_Save 保存(&S)tCtrl+SCC_qsave/文件操作菜單項第一個子菜單ID_Saveas <-另存為(&A).tCtrl+Shift+SCC_saveas /文件操作菜單項最后一個子菜單-ID_FreCircle ->常用圓 /常用圓菜單項彈出子菜單ID_Circle_10 半徑10的圓CC_circle 10 ID_Circle_20 半徑20的圓CC_circle 20ID_Circle_50 <-半徑50的圓CC_circle 50*HE

8、LPSTRINGS /以下定義為各菜單在狀態(tài)欄顯示的提示文字ID_Circle_10 繪制半徑為10的圓ID_Circle_20 繪制半徑為20的圓ID_Circle_50 繪制半徑為50的圓ID_Save 保存當(dāng)前圖形:QSAVEID_Saveas 以新文件名保存當(dāng)前圖形文件的副本六、定制線型AutoCAD中的線型文件有:ACAD.LIN ACADISO.LIN。線型分類:簡單線型、復(fù)雜線型。1. 簡單線型:只有線段、空和點組成線型定義的語法結(jié)構(gòu)(有兩行):標(biāo)題行格式:* 線型名,說明定義行格式:A,dash_1, dash_2, dash_nA對齊代碼。dash_n正數(shù)為畫線長度,負(fù)數(shù)為空

9、出長度,0為畫點,描述線型的一個周期即可。2. 復(fù)雜線型:定義行中加入嵌套文字串或嵌套形的內(nèi)容其格式為:“TEXT”,textstylename,scale,rotation,Xoffset,Yoffset3舉例:(下面是一個線型文件,定義了4種線型)*HIDDEN_LINE, A,3.5,-1.5*CENTER_LINE, - - - - - A,12.5,-1.5,1.5,-1.5*DOUBLE_CENTER_LINE, - - - - - - A,12.5,-1.5,1.5,-1.5,1.5,-1.5*Railway, RW RW RW A,3.5,-1.5,3.5,-1.5,3.5,-

10、1.5,3.5,-1.5,"RW",STANDARD,S=0.5,R=0.0,X=0.0,Y=-0.25,-1.5七、定制填充圖案AutoCAD中的填充圖案文件有:ACAD.PAT(英制) ACADISO.PAT(公制)1. 圖案填充文件格式填充圖案的單元由一系列的直線段組成。填充圖案的定義有兩部分組成:第一部分:定義名稱及說明,格式為: *圖案名稱,說明第二部分:填充圖案描述部分,可有一行,也可有多行,每行用來描述一段線,每行的格式為:Angle,X-origin, Y-origin,delta-x,delta-y,dash-1,dash-2其含義是:Angle所繪直線的

11、角度X-origin, Y-origin所繪直線起點的坐標(biāo)delta-x圖案中對應(yīng)直線間沿直線方向上的位移量delta-y圖案中對應(yīng)直線間的垂直間距dash-n繪制直線的長度,可是正數(shù),也可是負(fù)數(shù)。正數(shù)為畫線長度,負(fù)數(shù)為空出長度2. 舉例(下面是一個圖案填充文件的完整內(nèi)容,定義了一個菱形填充圖案,“/”及以后的內(nèi)容表示注釋或說明)圖案設(shè)計 填充效果*菱形 /定義圖案名稱68,0,-27.8155,-10.1007,25,30,-5.9889 /描述A B段112,11.2382,0,10.1007,25,30,-5.9889 /描述B C段68,-11.2382,0,-10.1007,25,3

12、0,-5.9889 /描述D C段112,0,-27.8155,10.1007,25,30,-5.9889 /描述A D段3. 自定義圖案的引用(1)將圖案文件保存到“支持文件搜索路徑”下; 文件名必須與填充圖案名稱完全相同(2)“繪圖”“圖案填充”“自定義”“選擇圖案” 其他與用“預(yù)定義”圖案填充操作方法相同。第四講一、 AutoCAD中幾何計算器的應(yīng)用幾何計算:運算的參數(shù)和結(jié)果均為幾何量(點坐標(biāo)、矢量等)的運算。點坐標(biāo)還可以使用對象捕捉。使用幾何計算器的命令:CAL此命令可以透明使用,即在其它命令的執(zhí)行過程中使用。命令透明使用的方式是:在命令前加“”舉例1:以直線的左端點與圓的圓心間的中點

13、為圓心,以25為半徑畫圓。舉例2:將圓在沿直線方向距離為100的位置復(fù)制一份。舉例3:繪制一個新圓,使它與直線和圓均相切,半徑為已知圓半徑的一半。在幾何計算器中常用的特殊功能函數(shù)有:函數(shù)功能說明ang(p1,p2)求X軸與直線(p1,p2)之間的夾角dist(p1,p2)求p1及p2間的距離deedist(end,end)的便捷功能函數(shù)ill(p1,p2,p3,p4)求直線(p1,p2)和直線(p3,p4)的交點illeill(end,end,end,end) 的便捷功能函數(shù)rad求圓或圓弧的半徑vec(p1,p2)求點p1至點p2的向量vec1(p1,p2)求點p1至點p2的單位向量veev

14、ec(end,end) 的便捷功能函數(shù)vee1vec1(end,end)的便捷功能函數(shù)二、 在AutoCAD中繪制函數(shù)曲線方法步驟:1. 借Excel建立函數(shù)曲線的坐標(biāo)點,使用Windows的剪切板存放坐標(biāo)點; Excel具有強大的公式和函數(shù)運算以及合并功能。2. 使用spline命令。舉例1:繪制正弦曲線Y=100sin(x)三個周期的函數(shù)曲線。*三個周期:x值為0°1080°,設(shè)定步長為5°*函數(shù)的計算公式為: Y=100*sin(x/180*pi()*合并為單元格:A&“,”&B舉例2:繪制拋物線Y=x2/10,x從-20到20之間的曲線。三

15、、 幻燈片的制作和觀看1. 幻燈片文件的概念是相應(yīng)圖形的矢量圖象文件,是圖形在某個時刻的圖片。其文件類型是“.SLD”,它不同于圖形文件,只能被顯示和觀看,不能被編輯和打印。2. 創(chuàng)建幻燈片操作步驟:(1) 在繪圖窗口中顯示用于幻燈片的圖形(2) 使用命令:mslide(3) 為幻燈片文件指定文件名(4) 保存文件3. 觀看幻燈片操作步驟:(1) 使用命令:vslide (2) 選擇文件(3) 打開(4) 若要關(guān)閉幻燈片文件,需使用命令:REDRAW(菜單:視圖>重畫)注意:觀看幻燈片時,AutoCAD會臨時地在當(dāng)前圖形上“畫圖”,且將當(dāng)前圖形保持原樣并仍為活動狀態(tài),但不可見。若想恢復(fù)當(dāng)

16、前圖形,可用REDRAW命令清除幻燈片。四、 腳本的定制1. 腳本文件的概念把一系列的AutoCAD命令和參數(shù)組合在一起構(gòu)成一命令序列(相當(dāng)于一個程序),調(diào)用時可按指定順序執(zhí)行這些命令,這個命令和參數(shù)序列就稱為腳本。存放腳本的文件稱為腳本文件,其文件類型是“.SCR”。2. 腳本文件的格式與運行腳本文件的格式規(guī)則為:(1) 空格即代表回車;(2) 每行結(jié)尾無論有無空格都自動加一空格;(3) 腳本文件是以ASC碼格式建立的,可在任意編輯器中編輯;(4) 以“;”開頭的行為注釋行,注釋不能與命令或其他輸入位于同一行;(5) 字母大小寫不限。特別注意:腳本文件中,空格具有特定的意義,不得隨意增加或刪

17、除空格,否則可能導(dǎo)致腳本文件執(zhí)行時的非正常中斷或錯誤執(zhí)行。3. 舉例編寫一腳本文件,其功能是:先繪制A3圖紙的圖幅線和圖框線,再繪制下面的圖形。4. 腳本的調(diào)用命令:SCRIPT自行編制繪制下列圖形的腳本文件:5. 建立腳本式幻燈片顯示制作一系列幻燈片文件,用腳本文件實現(xiàn)幻燈片的順序自動播放。用DELAY命令控制幻燈片之間的時間間隔,DELAY命令的參數(shù)為延時時間,單位是毫秒,最大值是32767。在腳本的最后,還可以用RSCRIPT命令使幻燈片從頭開始循環(huán)重復(fù)播放,直至用Esc終止循環(huán)。舉例:自動循環(huán)播放四幅幻燈片五、 形的定制1. 形的概念形是用一組線段、圓弧或圓組成的一種特殊對象,它能被當(dāng)

18、作單一對象方便地插入到圖形中,在插入過程中指定插入的位置、比例系數(shù)和旋轉(zhuǎn)角度。形從定義到引用需經(jīng)過以下幾個步驟:(1) 按規(guī)定格式進行形定義;(2) 建立形文件(文件類型為“.shp”)(3) 編譯形文件,生成機器碼的形文件(文件類型為“.shx”)(4) 裝入編譯后的形文件(5) 插入某一個形2. 形定義的組成每個形定義有兩部分:第一部分是標(biāo)題行,第二部分是若干描述行。(1)標(biāo)題行以“*”開始,由形的編號、形描述部分的字節(jié)數(shù)和形名組成,各要素間用“,”分隔,格式為: *shapenumber,defbytes,shapenameShapenumber:形編號,占一個字節(jié),在1255之間。De

19、fbytes:形描述部分的字節(jié)數(shù),不超過2000。Shapename:形名,必須用大寫字母。(2)描述行用數(shù)字或字母(十六進制數(shù))描述形中所包含的線段、圓弧的大小和方向,有若干個字節(jié)組成,字節(jié)之間用“,”分開,以“0”結(jié)束。描述行可以占一行,也可以占多行,但包括結(jié)束符“0”不超過2000字節(jié)。3. 形的描述碼組成描述行的每個字節(jié)稱為一個描述碼,是按一定的編碼規(guī)則編制而成的。描述碼分為直線矢量代碼和特殊代碼兩類。(1) 矢量長度和方向編碼描述一個直線矢量的長度和方向需用3個字符,第一個必須是0,它表示后面兩個字符是十六進制數(shù),第二個字符代表矢量的長度,有效值為1F(115個單位長),第三個字符代

20、表矢量的方向,方向編碼見下圖。*傾斜矢量的長度取其對應(yīng)的X、Y偏移量的較小者。(2)特殊碼特殊碼也稱專用碼,是專門用于控制相關(guān)描述碼產(chǎn)生具體效果的描述碼,如相關(guān)的描述碼是生成直線段還是圓弧線段,是畫線(落筆)還是空走(抬筆),形定義是否結(jié)束等。這些特殊碼的前兩個字符均為0,也可以用十進制數(shù)表示。特殊碼有:000形定義結(jié)束001畫線(激活繪圖模式或稱落筆)002空走(關(guān)閉繪圖模式或稱抬筆)003用下一個字節(jié)除矢量長度004用下一個字節(jié)乘矢量長度005將當(dāng)前位置壓入棧006將棧中內(nèi)容彈到當(dāng)前位置007畫出由下一個字節(jié)給出的子形008下兩個字節(jié)給出X-Y位移量(繪制非標(biāo)準(zhǔn)矢量)009由(0,0)結(jié)束

21、的多個X-Y位移量(繪制多個非標(biāo)準(zhǔn)矢量)00A由下兩個字節(jié)定義八分弧00B由下五個字節(jié)定義的小段弧00C由X-Y位移和凸度定義的弧00D多個指定凸度的弧00E只在垂直文本方式處理下一個命令*當(dāng)特殊碼為00A(或10)時:用下兩個字節(jié)定義一段八分?。缍仁且粋€或多個45º的?。??;〉拿枋龈袷绞牵?0,radius,(-)0SC這里:10八分弧的專用碼 radius弧的半徑,在1255之間 (-)0SC弧的方向(正是逆時針,負(fù)是順時針)、起始位置(S,其值為07)、跨度(C,其值為07,0代表一個整圓)八分弧從時鐘上的三點鐘位置逆時針方向編號,如下圖示:其他特殊碼的含義和格式請閱讀輔導(dǎo)材

22、料!4. 生成形文件(1) 建立形文件用文本編輯器(如記事本)編輯成ASC碼的文本文件,保存文件類型為“.shp”。描述行中的()是為了增加可讀性,除此之外沒有任何作用。(2) 編譯形文件命令:compile把“.shp”類型的文件轉(zhuǎn)換成“.shx” 類型的文件,能被LOAD命令或STYLE命令調(diào)用。5. 調(diào)用形(1) 加載形文件命令:LOAD(2) 插入形命令:SHAPE交互過程:SHAPE(下達命令)確定形名確定位置確定形高確定旋轉(zhuǎn)角度*如果在確定形名時不記得形名,可用“?”響應(yīng)來查詢。6. 舉例(1)表面粗糙度符號的形定義*130,23,CCD3,8,2,8,(-3,4),1,9,(3,

23、-4),(5,8),(0,0),2,8,(-8,-4),1,8,(5,0),0(2)圓柱度符號的形定義*131,27,YZD3,8,2,8,(1,0),1,8,(2,8),2,8,(4,0),1,8,(-2,-8),2,8,(1,4),1,10,2,-000,0(3)穩(wěn)壓管符號的形定義*138,17,ZENER3,12,040,5,034,016,6,042,04C,5,040,6,04C,046,03C,01E,0第五講AutoCAD二次開發(fā)(AutoLISP 語言編程概述)一、 AutoLISP 語言簡介1. LISPList Processing Language2. AutoLISP:

24、嵌套于AutoCAD內(nèi)部,將LISP與AutoCAD有機結(jié)合,是AutoCAD開發(fā)的重要工具。3. AutoLISP的功能:¨可直接調(diào)用AutoCAD的幾乎全部命令¨具備一般高級語言的結(jié)構(gòu)和功能¨具備一般高級語言所沒有的強大的圖形處理功能4. AutoLISP的特點¨僅能以解釋方式運行于AutoCAD內(nèi)部(解釋性程序設(shè)計語言)¨程序的全部內(nèi)容均以函數(shù)形式給出,沒有語句的概念,也沒有其他語法結(jié)構(gòu),執(zhí)行程序就是執(zhí)行一系列的函數(shù)調(diào)用,也稱“函數(shù)語言”¨把數(shù)據(jù)和程序統(tǒng)一表達為表結(jié)構(gòu),程序即數(shù)據(jù),數(shù)據(jù)即程序,故也稱為“表語言”¨運行程

25、序就是對函數(shù)求值的過程,在此過程中實現(xiàn)函數(shù)的功能二、 AutoLISP的數(shù)據(jù)類型¨符號 (SYM)¨字符串 (STR)¨表 (LIST)¨文件描述符 (FILE)¨AutoLISP的內(nèi)部函數(shù)(SUBR)¨AutoCAD的選擇集 (PICKSET)¨AutoCAD的實體名 (ENAME)¨函數(shù)分頁表 (PAGETB)基本應(yīng)用:涉及前五種,前四種稱為“原子”。1. 原子(原子就是“表”中的元素,常作函數(shù)的參數(shù))(1)整數(shù)(2)實型數(shù)(3)符號(常用來作變量名)(4)字符串:在一對雙引號“”內(nèi)的一組字符2. 表表有如下幾

26、項特征:(1) 放在一對圓括號內(nèi)(2) 其中的元素可以是:數(shù)字、符號、字符串、表(3) 元素之間有空格(4) 可任意嵌套,如 (15 (a b) c d)(5) 元素在表中按先后順序取得序號,依次為0,1,2,(6) 表的大小即表的長度,沒有元素的稱為空表,用()或nil表示(7) 有兩種類型:標(biāo)準(zhǔn)表、引用表標(biāo)準(zhǔn)表實現(xiàn)函數(shù)調(diào)用的表,第一個元素是函數(shù),后面的元素是函數(shù)的參數(shù);引用表被當(dāng)作數(shù)據(jù)引用的表,如表示點的坐標(biāo)(x,y)的表3. 點對(dotted pair)也是一種表,有兩個元素,中間用“.”,圓點與元素之間必須用空格分開,可任意嵌套,常用于構(gòu)造連接表。三、 AutoLISP的程序結(jié)構(gòu)有一

27、個或一系列按順序排列的標(biāo)準(zhǔn)表組成,如:(setq x 25.0) (見輔導(dǎo)材料P34)(setq y 12.2)(+ (* x y) x)AutoLISP程序書寫格式的特點:1. AutoLISP程序全部由函數(shù)組成,函數(shù)的形式是表,表的括號需左右匹配;2. AutoLISP程序閱讀函數(shù)時按從左到右的規(guī)則;3. 函數(shù)必須是第一個元素,函數(shù)與參數(shù)、參數(shù)與參數(shù)之間均至少要一個空格分開;4. 兩個表之間和表內(nèi)的多余空格和回車是不產(chǎn)生作用的,因此一個表可占多行,一行也可以寫多個表。如前述程序可寫為: (setq x 25.0) (setq y 12.2) (+ (* x y) x)5. 用“;”開始的內(nèi)

28、容作為對程序的注釋;6. 文件類型為“.LSP”,是ASC碼的文本文件。AutoLISP程序就是對AutoLISP函數(shù)的調(diào)用,AutoLISP函數(shù)分為系統(tǒng)內(nèi)部函數(shù)和用戶定義的外部函數(shù),AutoLISP對函數(shù)的調(diào)用是通過標(biāo)準(zhǔn)表來實現(xiàn)的,程序的執(zhí)行就是對標(biāo)準(zhǔn)表依次進行求值的過程,在求值的過程中實現(xiàn)相應(yīng)的功能。四、 AutoLISP程序的執(zhí)行過程1. 加載AutoLISP文件一個簡單的彈出對話框的例子(設(shè)文件名為test.lsp):(defun c:testlisp()(alert “Hello, The World!”)加載AutoLISP文件有以下幾種方法:a) 命令行加載(鍵盤命令方式)命令:

29、(load “路徑文件名”)b) 對話框方式工具AutoLISP加載應(yīng)用程序選擇AutoLISP文件點擊加載c) 自動加載方式(略)2. 運行AutoLISP(1) 若為函數(shù),則在“命令:”提示符下輸入“(函數(shù)名)”并回車。(2) 若為命令,則在“命令:”提示符下輸入“命令名”并回車。五、 兩個AutoLISP例程1. 繪制圓的漸開線X=r(cosÆ+ÆsinÆ)Y=r(sinÆ-ÆcosÆ)r基圓半徑;程序代碼(involute.lsp)(defun c:inv(/ p0 phi phimax phimin) ;見輔導(dǎo)材料P43-4

30、4 (setq p0 (getpoint "n請輸入基圓的圓心:") ;見輔導(dǎo)材料P34和P46 (setq r (getdist p0 "n請輸入基圓的半徑:") ;見輔導(dǎo)材料P46 (command "circle" p0 r) ;見輔導(dǎo)材料P49 (setq phimin (getreal "n輸入漸開線的起始角度(弧度):") ;見輔導(dǎo)材料P45 (setq phimax (getreal "n輸入漸開線的終止角度(弧度):") (setq dphi (getreal "n輸入

31、角度增量(弧度):") (setq n (/ (- phimax phimin) dphi) ;見輔導(dǎo)材料P34 (setq dphi (/ (- phimax phimin) n) (setq x0 (car p0) y0 (cadr p0) ;表處理函數(shù) (setq phi phimin) (setq x1 (+ x0 (* r (+ (cos phi) (* phi (sin phi) (setq y1 (+ y0 (* r (- (sin phi) (* phi (cos phi) (while (<= phi phimax) ;見輔導(dǎo)材料P41 (setq phi (

32、+ phi dphi) (setq x2 (+ x0 (* r (+ (cos phi) (* phi (sin phi) ;見輔導(dǎo)材料P36 (setq y2 (+ y0 (* r (- (sin phi) (* phi (cos phi) (setq p1 (list x1 y1) ;表處理函數(shù) (setq p2 (list x2 y2) (command "pline" p1 p2 "") (setq x1 x2 y1 y2) ) )2. 繪制太極圖案程序源代碼:(defun yinyang(/ origin radius i-radius hal

33、f-r origin-x origin-y os) ;見輔導(dǎo)材料P43-44 (setq os (getvar "OSMODE") ;見輔導(dǎo)材料P51 (setvar "OSMODE" 0) ;見輔導(dǎo)材料P51 (setq origin (getpoint "nOrigin of inyn sign:") (setq radius (getdist "nRadius of inyn sign:" origin) (setq i-radius (getdist "nRadius of internal ci

34、rcle:" origin) (if (> i-radius radius) (setq i-radius (/ radius 4) ;見輔導(dǎo)材料P41 (setq half-r (/ radius 2) (setq origin-x (car origin) (setq origin-y (cadr origin) (command "CIRCLE" origin radius) (command "ARC" "C" (list origin-x (+ origin-y half-r) (list origin-x

35、(+ origin-y radius) origin ) (command "ARC" "C" (list origin-x (- origin-y half-r) (list origin-x (- origin-y radius) origin ) (command "CIRCLE" (list origin-x (+ origin-y half-r) i-radius ) (command "CIRCLE" (list origin-x (- origin-y half-r) i-radius )(setva

36、r "OSMODE" os) (princ) ;見輔導(dǎo)材料P49 )第六講AutoCAD二次開發(fā)(Visual LISP集成開發(fā)環(huán)境簡介)一、 Visual LISP概述Visual LISP簡稱VLISP,是為加速AutoLISP程序開發(fā)而設(shè)計的軟件工具,它提供了一個完整的集成開發(fā)環(huán)境,包括編譯器、調(diào)試器和其他工具,它可以顯著地提高自定義AutoCAD的效率。VLISP提供的主要工具有:文本編輯器、格式編排器、語法檢查器、源代碼調(diào)試器、檢驗和監(jiān)視工具、文件編譯器、工程管理系統(tǒng)、上下文相關(guān)幫助與自動匹配功能和智能化控制臺等。二、 啟動和退出Visual LISP集成開發(fā)環(huán)境

37、1. 啟動步驟:(菜單方式)(1) 啟動AutoCAD(2) 工具AutoLispVisual LISP編輯器若使用鍵盤命令,則:命令:vlisp或vlide2退出: 文件退出三、 Visual LISP 集成開發(fā)環(huán)境介紹包含以下幾個部分:1. 菜單欄2. 工具欄:標(biāo)準(zhǔn)、調(diào)試、工具、搜索、視圖 (共5個)3. 控制臺窗口可輸入AutoLisp命令,代替菜單和工具欄命令4. 狀態(tài)欄屏幕底部顯示Visual LISP的狀態(tài)信息5. 跟蹤窗口啟動時包含:關(guān)于Visual LISP當(dāng)前版本的信息、啟動Visual LISP遇到錯誤時的一些信息。6. 文本編輯器打開或新建一個Visual LISP源程序

38、,就可以看到文本編輯器的全貌。7. 其他Visual LISP窗口(必要時才打開)(一)Visual LISP菜單介紹¨菜單的內(nèi)容:隨著激活窗口的不同菜單內(nèi)容將會不同。1. 文件:打開、新建、保存2. 編輯:復(fù)制、粘貼、括號匹配3. 搜索:查找、替換文本、設(shè)置書簽4. 視圖:查找、替換變量及符號值等5. 工程:應(yīng)用程序的工程功能管理項目、編譯程序等6. 調(diào)試:提供程序調(diào)試功能設(shè)置和刪除斷點、單步執(zhí)行、檢查變量狀態(tài)、檢查表達式結(jié)果等7. 工具:設(shè)置Visual LISP選項文本格式、環(huán)境選項變量,如窗口和工具欄的位置8. 窗口:提供窗口管理功能9. 幫助:提供幫助功能,包括顯示在線幫助

39、(二)工具欄介紹工具欄包括一系列功能的Vlisp命令組1. 標(biāo)準(zhǔn):新建、打開、保存、打印輸出、剪切、復(fù)制、粘貼、取消、恢復(fù)、完成詞語功能2. 工具:加載整個活動窗口代碼、加載指定部分代碼、語法檢查(全部、指定部分)、對窗口代碼格式化(整個活動窗口、指定代碼)、設(shè)置注釋代碼、取消整塊注釋塊、在線幫助3. 搜索:查找、替換、查找并替換、設(shè)置或取消書簽、下一個書簽、上一個書簽4. 視圖:切換到AutoCAD窗口、選擇窗口、Visual LISP控制臺、打開檢驗窗口、堆棧跟蹤、符號服務(wù)、自動匹配、顯示監(jiān)視窗口5. 調(diào)試:下一層嵌套表達式、下一個表達式、跳出表達式、繼續(xù)執(zhí)行、退出、重置、設(shè)置或取消斷點切

40、換、添加監(jiān)視、顯示上一個斷點(三)控制臺操作1. 控制臺的功能這里是用命令操作的地方(Visual LISP命令、AutoLISP命令),并能看到結(jié)果,類似于AutoCAD的命令行窗口如:(setq a “hello,The world!”)查看a的值時在控制臺窗口用:a¿(¿表示回車)AutoCAD命令:!a¿2. Visual LISP控制臺窗口中的獨特特性¨可以在新的一行上輸入上一行沒有完成的AutoLISP表達式¨可在¿前輸入多個表達式,并在Visual LISP給控制臺返回一個值之前將為每一個表達式求值¨光標(biāo)在任意

41、位置均可用¿移至提示符所在行上,如果選中的有文本,則同時移至提示符所在行(此功能可以復(fù)制)¨使用Tab鍵可獲得以前輸入的文本,每按一次即可將上一次的文本顯示,循環(huán)執(zhí)行。Shift+Tab與Tab類似,只是方向相反¨使用Tab鍵可以實現(xiàn)關(guān)聯(lián)查找,如輸入“(+Tab”會在以前輸入的文本中查找以“(+”開頭的文本¨Esc鍵清除提示符下的所有字符,shift+Esc則離開當(dāng)前行上的文本,并在新的提示符下準(zhǔn)備接受用戶的輸入3. 系統(tǒng)控制臺的快捷菜單單擊右鍵*小技巧:可在控制臺窗口與AutoCAD命令行窗口之間復(fù)制和粘貼文本。(四)文本編輯器概述主要功能:1. 彩色

42、代碼顯示2. 文本格式化3. 括號匹配4. 執(zhí)行AutoLISP表達式(不離開文本編輯器)5. 在多文件間進行查找6. 語法檢查(五)加載和運行AutoLISP程序1. 在AutoCAD窗口操作(略)2. 在VLISP環(huán)境下操作可加載完整的和部分的AutoLISP程序文件¨加載完整的AutoLISP程序:文件打開文件選擇文件內(nèi)容工具加載選定代碼¨加載部分的AutoLISP程序:選擇部分文件內(nèi)容工具加載選定代碼四、 文本編輯器主要功能及其實現(xiàn)1. 文件/編輯/保存操作有關(guān)操作與Windows環(huán)境下的應(yīng)用軟件(如Word等)類似,這里從略。2. 代碼分色器和在控制臺窗口中相同,

43、一旦在文本編輯器中輸入文本后,Visual LISP會判斷所輸入的文本是否是一個AutoLISP內(nèi)部函數(shù)、數(shù)字、字符串或者其它的已知元素,并用每一種元素自己的顏色顯示這些文本。默認(rèn)的AutoLISP語言代碼配色方案AutoLISP元素顏色內(nèi)部函數(shù)和被保護的符號藍(lán)色字符串粉色整數(shù)綠色實數(shù)淺藍(lán)色注釋粉色,背景為灰色括號紅色其他(如用戶變量名等)黑色¨Visual LISP可以按照一些語言的種類確定代碼顏色,方法是:工具窗口屬性按語法著色¨用戶可以自定義顏色配置,方法是:工具窗口屬性配置當(dāng)前窗口打開“窗口屬性”對話框進行配置3. 文本格式化(1)設(shè)置AutoLISP代碼格式的對話

44、框工具環(huán)境選項Visual LISP格式選項(2)AutoLISP代碼格式的總體式樣有普通、寬行、窄行和分欄四種式樣。4. 語法檢查(1) 括號匹配向前匹配將插入點(光標(biāo)位置)移到和開括號相匹配的閉括號之后向后匹配將插入點(光標(biāo)位置)移到和閉括號相匹配的開括號之后向前選擇插入點的移動和“向前匹配”相同,同時選中文本向后選擇插入點的移動和“向后匹配”相同,同時選中文本(2) 檢查語法錯誤¨應(yīng)用彩色代碼功能檢查語法錯誤¨用語法檢查功能檢查語法錯誤主要檢查的語法錯誤為:·圓括號不匹配·函數(shù)的參數(shù)數(shù)目不正確·函數(shù)的參數(shù)類型不正確·某些特殊函數(shù)

45、的語法不正確方法:工具“檢測編輯器中的文字”如果檢測到錯誤,就會在“編譯輸出”窗口看到錯誤信息。五、 調(diào)試程序VLISP提供的調(diào)試程序工具有:¨監(jiān)視窗口:在程序執(zhí)行過程中查看變量的值¨檢驗窗口:在“檢驗”對話框中顯示指定對象的詳細(xì)信息¨“符號服務(wù)”對話框:符號可以使變量或函數(shù)名。通過符號服務(wù)對話框可以查看變量的當(dāng)前值、函數(shù)的定義和設(shè)置變量及函數(shù)的一些特性¨斷點循環(huán)模式:在程序內(nèi)部設(shè)置斷點,中斷程序的執(zhí)行,并允許用戶在中斷時查看和修改對象值下面再看幾個用AutoLISP語言編程畫圖的例子:3. 繪制太極圖案程序源代碼:(defun yinyang(/ or

46、igin radius i-radius half-r origin-x origin-y os) ;見輔導(dǎo)材料P43-44 (setq os (getvar "OSMODE") ;見輔導(dǎo)材料P51 (setvar "OSMODE" 0) ;見輔導(dǎo)材料P51 (setq origin (getpoint "n圖案的中心:") (setq radius (getdist "n圖案的半徑:" origin) (setq i-radius (getdist "n內(nèi)部圓的半徑:" origin) (if

47、 (> i-radius radius) (setq i-radius (/ radius 4) ;見輔導(dǎo)材料P41 (setq half-r (/ radius 2) (setq origin-x (car origin) (setq origin-y (cadr origin) (command "CIRCLE" origin radius) (command "ARC" "C" (list origin-x (+ origin-y half-r) (list origin-x (+ origin-y radius) origin ) (command "ARC" "C" (list origin-x (- origin-y half-r) (list origin-x (- origin-y radius)

溫馨提示

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

評論

0/150

提交評論