創(chuàng)建Lisp程序步驟_第1頁(yè)
創(chuàng)建Lisp程序步驟_第2頁(yè)
創(chuàng)建Lisp程序步驟_第3頁(yè)
創(chuàng)建Lisp程序步驟_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

1、使用Visual LISP創(chuàng)建簡(jiǎn)單的LISP應(yīng)用程序作者:佚名 點(diǎn)擊數(shù):1523 更新:2007-2-2 7:08:10   熱      【字體:小 大】a>     本節(jié)通過(guò)一個(gè)簡(jiǎn)單的實(shí)例來(lái)講述LISP程序的創(chuàng)建過(guò)程,介紹編制LISP程序的一些基本步驟,以及LISP程序在AutoCAD中的加載和運(yùn)行的方法。首先來(lái)創(chuàng)建一個(gè)最簡(jiǎn)單的LISP程序-“Hello.lsp”,在AutoCAD 2002中加載并運(yùn)行該程序,將會(huì)在命令行出現(xiàn)“Hello, Visual LISP!

2、”。36.2.1 Visual LISP與AutoCAD的通信    用戶可以直接在AutoCAD命令行中鍵入AutoLISP表達(dá)式。AutoCAD通過(guò)括號(hào)來(lái)確認(rèn)AutoLISP表達(dá)式。AutoCAD每當(dāng)發(fā)現(xiàn)一個(gè)左括號(hào),就確認(rèn)為AutoLISP表達(dá)式,并由AutoLISP求表達(dá)式的值后返回AutoCAD,AutoCAD使用返回結(jié)果并繼續(xù)進(jìn)行其他工作。     注意 在AutoLISP表達(dá)式中,左、右括號(hào)必須配對(duì),否則AutoCAD將給出提示符n>,n表示右括號(hào)丟失數(shù)目。   &#

3、160;此外,在AutoCAD中調(diào)用并執(zhí)行AutoLISP程序。在AutoLISP程序中采用COMMAND函數(shù)來(lái)與AutoCAD命令程序處理器通信,COMMAND從AutoLISP獲得命令并將其傳給AutoCAD。36.2.2 實(shí)例1 最簡(jiǎn)單的LISP程序“Hello.lsp”    Step 1 創(chuàng)建新文件    (1) 運(yùn)行AutoCAD 2002系統(tǒng),以“acadiso.dwt”為樣板創(chuàng)建圖形文件,并調(diào)用“vlisp”命令進(jìn)入Visual LISP環(huán)境。     (2)

4、 單擊“Standard(標(biāo)準(zhǔn))”工具欄中的 按鈕,新建一個(gè)LISP文件。    Step 2 輸入代碼并保存文件    (1) 在編輯窗口中輸入源文件“Hello.lsp”的代碼,如圖36-3所示。程序清單如下:    * Hello.lsp Visual LISP文件實(shí)例    (prompt "Pick point:") ;指定運(yùn)行時(shí)的提示信息    (setq ipt

5、(getpoint) ;在屏幕上指定一點(diǎn)并將其坐標(biāo)值賦予變量“ipt”    (setq hgt 15) ;給變量“hgt”賦值    (Command "_.TEXT" "_S" "STANDARD" ipt hgt 0 "Hello, Visual LISP!")    調(diào)用“Commnad”函數(shù)與AutoCAD進(jìn)行通信    (2) 單擊“Standa

6、rd(標(biāo)準(zhǔn))”工具欄中的 按鈕,以“Hello.lsp”為名保存該文件。    Step 3 運(yùn)行LISP程序    (1) 確認(rèn)編輯窗口處于前臺(tái)狀態(tài),選擇菜單【Tools(工具)】【Load Text in Editor(加載編輯器中的文字)】,則該程序被加載并運(yùn)行。系統(tǒng)將返回AutoCAD窗口,并提示用戶選擇一點(diǎn),并以指定點(diǎn)為基點(diǎn)來(lái)繪制文字。結(jié)果如圖36-4所示。     (2) 如果用戶退出Visual LISP環(huán)境并返回AutoCAD系統(tǒng)窗口,則需要對(duì)該程序進(jìn)行加載后

7、,才能運(yùn)行。選擇菜單【Tools(工具)】【Load Appcation(加載應(yīng)用程序)】,彈出“Load/Unload Applications(加載/卸載應(yīng)用程序)”對(duì)話框,如圖36-5所示。查找并選擇上一步中所創(chuàng)建的“Hello.lsp”文件,并單擊Load按鈕進(jìn)行加載。加載后的文件名稱將顯示在“Loaded Applications(已加載的應(yīng)用程序)”列表中,并在對(duì)話框的左下部顯示加載信息。    (3) 完成加載后,單擊Load按鈕關(guān)閉對(duì)話框,系統(tǒng)將運(yùn)行“Hello.lsp”程序。    實(shí)例說(shuō)明

8、60;   1. LISP源文件為ACSII格式,并忽略空格鍵、Tab鍵和回車鍵產(chǎn)生的空白。文件中的注釋部分可放在文件中任何一處,但必須以分號(hào)“;”開始。    2. 在編輯窗口中對(duì)文件進(jìn)行編輯時(shí),如果對(duì)文件進(jìn)行了修改或添加了文本,則編輯窗口標(biāo)題欄上的控制圖標(biāo)將變?yōu)?,同時(shí)Visual LISP在狀態(tài)欄上的文件名后面顯示星號(hào)“*”。用戶保存該文件后,控制圖標(biāo)變?yōu)?,同時(shí)狀態(tài)欄上的星號(hào)消失。     3. Visual LISP中為程序編寫提供了專門的文本編輯器。該編輯器不僅僅是一個(gè)書寫

9、工具,不但具有常規(guī)的編輯功能,同時(shí)還具有許多專為支持AutoLISP編程而設(shè)計(jì)的功能,主要包括:    (1) 文件語(yǔ)法著色:用于識(shí)別AutoLISP程序的不同部分并給它們指定各自的顏色。這使得用戶可以更容易地找到程序的各個(gè)組成部分和拼寫錯(cuò)誤。    (2) 設(shè)置文本格式:可以設(shè)置AutoLISP代碼的格式,使代碼更易于閱讀。用戶可以從許多種不同的格式樣式中挑選自己喜歡的格式。    (3) 括號(hào)匹配:可以通過(guò)查找與任意開括號(hào)匹配的閉括號(hào)來(lái)幫助用戶檢測(cè)括號(hào)匹配錯(cuò)誤。 

10、;   (4) 執(zhí)行AutoLISP表達(dá)式:不必離開文本編輯器就可以測(cè)試表達(dá)式和代碼行。    (5) 多文件查找:文本編輯器用單個(gè)命令就可以在多個(gè)文件中查找某個(gè)詞或表達(dá)式。    (6) AutoLISP代碼的語(yǔ)法檢查:文本編輯器可以對(duì)AutoLISP代碼進(jìn)行求值并亮顯語(yǔ)法錯(cuò)誤。    4. 在AutoCAD中還可以自動(dòng)加載LISP程序。每次啟動(dòng)AutoCAD時(shí),AutoCAD都從庫(kù)路徑中搜索acad.lsp文件。如果找到該文件,則將它加載到內(nèi)

11、存中。如果用戶在每次運(yùn)行AutoCAD時(shí)都需要加載某個(gè)AutoLISP程序,則可將該程序復(fù)制到acad.lsp文件中即可實(shí)現(xiàn)自動(dòng)加載。用戶還可指定在每次創(chuàng)建新文件時(shí)加載acad.lsp文件,請(qǐng)參見第29章。     另一種由AutoCAD自動(dòng)加載的AutoLISP程序文件用于定義當(dāng)前菜單的支持函數(shù),其文件擴(kuò)展名為.mnl。當(dāng)AutoCAD加載菜單文件時(shí),它用匹配的文件名來(lái)搜索.mnl文件。如果AutoCAD找到了該文件,則將它加載到內(nèi)存中。此功能確保AutoCAD加載適當(dāng)?shù)牟藛尾僮魉璧腁utoLISP函數(shù)。因此,也可以把LISP程序復(fù)制在當(dāng)前菜單相應(yīng)的.mnl文件中以實(shí)現(xiàn)自動(dòng)加載。.mnl文件在acad.lsp之后加載。小 結(jié)    本章簡(jiǎn)要介紹了Visual LISP的基本概念和作用,并通過(guò)一個(gè)簡(jiǎn)單的實(shí)例講述了在AutoCAD中開發(fā)Visual LISP程序的過(guò)程。教程錄入:秘密花園    責(zé)任編輯:秘密花

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論