CAD程序設(shè)計(jì)課程第一次作業(yè)_第1頁(yè)
CAD程序設(shè)計(jì)課程第一次作業(yè)_第2頁(yè)
CAD程序設(shè)計(jì)課程第一次作業(yè)_第3頁(yè)
CAD程序設(shè)計(jì)課程第一次作業(yè)_第4頁(yè)
CAD程序設(shè)計(jì)課程第一次作業(yè)_第5頁(yè)
已閱讀5頁(yè),還剩4頁(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)介

1、第一作業(yè)Visual LISP練習(xí)一、目的要求1、了解如何啟動(dòng)Visual LISP,熟悉VLISP編程界面。2、在Visual LISP環(huán)境下編輯并運(yùn)行程序。3、Visual LISP環(huán)境下查找VLISP程序錯(cuò)誤。4、了解VLISP賦值與求值函數(shù)及主要計(jì)算函數(shù)的功能、格式及應(yīng)用。二、作業(yè)內(nèi)容1、按下列步驟試運(yùn)行程序1)啟動(dòng) Visual LISP啟動(dòng)AutoCAD后,可采用以下任一種方法進(jìn)入 VLISP :Command: VLISP 或者 VLIDE菜單一Tooli AutoLISPVisual LISP Editor2)在文本編輯區(qū)鍵入以下程序(defun box (x y pl Iw)

2、(setq p2 (polar pl 0 x)p3 (list (+ (car pl) x) (+ (cadr pl) y)p4 (Polar p3 pi x)command pline pl w iw pZ p3 Pq c)該程序的功能是定義一個(gè)畫矩形白函數(shù),此函數(shù)有四個(gè)形參:x、y、pl及l(fā)w分別代表矩形的長(zhǎng)、寬、基點(diǎn)和線寬,用戶調(diào)用該函數(shù)時(shí)用實(shí)際的數(shù)值賦予該四個(gè)形參即可畫出任意尺寸的矩形。注:程序中可能存在錯(cuò)誤請(qǐng)自行查找3)保存文件:下拉菜單FileSave保存該文件,取名為:box.lsp4)文件裝入內(nèi)存command: (load “box” )程序如無(wú)語(yǔ)法錯(cuò)誤,將返回函數(shù)名box;

3、如有語(yǔ)法錯(cuò)誤,將返回錯(cuò)誤提示用戶需回到 VLISP 編輯器中,修改程序。注意:如果用10ad函數(shù)加載,后面的文件需要標(biāo)明盤符/文件夾等 5)運(yùn)行應(yīng)用程序在AutoCAD圖形窗口中:Command: (box 80 60 '(40 40) 0.4)并回車,程序執(zhí)行結(jié)果自動(dòng)畫出,基點(diǎn)在40,40點(diǎn),寬80,高60,線粗0.4的矩形。2、用VLISP表達(dá)式計(jì)算下列各式1)7"2 .154程序段:(setq x (expt 2.154 (/ 1.0 7)結(jié)果: 1.1158523.55 16.7778.33 11.452),34.56 78.44程序段:(setq x (/ (- (

4、* 23.55 16.77) (* 18.33 11.45)(* 34.56 78.44)結(jié)果:0.06826363).4.5523.342 6.78332.552 8.993程序段:(setq x (expt (+ (expt 4.55 2) (/ (* 3.34 (expt 6.78 3) (+ (expt 2.55 2) (expt 8.99 3) 0.5)結(jié)果:4.70346 ._ 214). Log5程序段:(setq x (log (expt 5 21)結(jié)果:20.98495).tag45程序段:(setq x (/ (sin(* 0.017453 45)(cos(* 0.0174

5、53 45)0.999974結(jié)果:0.9999746).arcsin0.4程序段:(setq x (* (/ (atan (expt (- (/ 1 (-1 (expt 0.4 2) 1) 0.5) pi) 180)結(jié)果:23.57823、求下列表達(dá)式的返回值(setq LLL ,(1 “A”)(2 “B” ) (3 “C”)(4 “D" )程序段:_$ (setq LLL '( (1 "A") (2 "B") (3 "C") (4 "D")(1 "A") (2 "B

6、") (3 "C") (4 "D")_$ (assoc 2 LLL)(2 "B") _$ (car LLL) (1 "A") _$ (cadr LLL) (2 "B") _$ (nth 3 LLL) (4 "D") _$ (length LLL) 4_$ (cadr (assoc 3 LLL) "C"4、設(shè)(setq La ' (A B)(C)(D E)從 La 表中取出元素 A、B、C、D、E程序段:_$ (setq La '(

7、A B)(C)(D E)(A B) (C) (D E)_$ (car (car (car La)A_$ (last (car (car La)B_$ (car (cadr (car La)C_$ (car (car (cdr La)D_$ (last (cadr La)E5、比較LIST、APPEND、CONS用法的區(qū)別(LIST (a b c) (x y z)(APPEND (a b c) (x y z)(CONS (a b c) (x y z)程序段:_$ (list '(a b c) '(x y z)(A B C) (X Y Z)_$ (append '(a b

8、c) '(x y z)(A B C X Y Z)_$ (cons '(a b c) '(x y z)(A B C) X Y Z)6、實(shí)踐練習(xí):輸入下面程序,查看結(jié)果:r-atriangle. Isp(defun c:r-a-triangle();以下值須由用戶輸入_(setq pa (getpoint ”請(qǐng)輸人直第二角形左下用點(diǎn):“) (setq ww (getreal -n 人直角三角形底邊長(zhǎng)度.(etq kk (get二.;丫 jg通八直南三角陶型卡度) ;以下pb,pc,hh值須由程序依據(jù)計(jì)算后出(setq pb (polar pa 0 w) (setq hh (

9、sqrt (- (* kk kk)(* vhj w)(setq pc (polar pa (/ pi 2) hh);以下痣據(jù)pa,pb pc點(diǎn)畫由直角三角揚(yáng)(command "line*1 pa pb pc "c")(princ "n 另一邊hh的長(zhǎng)度=")(princ hh);以下將三角形兩個(gè)夾角自動(dòng)求出,并顯示在命令行(setq angpb (atan (/ hh uw)(setq ang_pb (* ang_pb (/ 18Q pi)(setq ang pc (- 90 ang pb)(princ "Xn PB莢角="

10、)(princ ang_pb)(princ “度“)(princ "n PC夾角=")(princ ang pc)(princ "度(princ)(prompt 'An <<BT r-d-SianglE自動(dòng)直角三角形繪制)輸出:本程序的功能是什么?答:本程序用于繪制直角三角形,三角形的直角頂點(diǎn)是 pa點(diǎn),兩條底邊長(zhǎng)分別為 ww、 長(zhǎng)為hh,斜邊三、思考題1、運(yùn)行一個(gè)自定義的 VLISP 程序需要那幾個(gè)步驟?1. 進(jìn)入 AutoCAD 。2. Command: VLISP 進(jìn)入 VLISP 編程環(huán)境。3. 下拉菜單 File New File創(chuàng)建

11、一個(gè)新文件。4. 在文本編輯區(qū)鍵入自定義程序。5. 下拉菜單一Load FileSave,保存該文件。6. 下拉菜單ToolsLoad Text in Editor,加載當(dāng)前編輯窗口的文件。7. 運(yùn)行應(yīng)用程序。2、如何利用VLISP 的分色功能、括號(hào)匹配和設(shè)置斷點(diǎn)檢查程序的錯(cuò)誤?分色功能 :VLISP編程環(huán)境具有按照語(yǔ)法分色的功能,系統(tǒng)內(nèi)的標(biāo)準(zhǔn)函數(shù)(如setq defun、getpoint等)被顯示為藍(lán)色;而VLISP 不能識(shí)別的內(nèi)容將顯示為黑色,如用戶定義的變量;字符串用粉紅色。如果應(yīng)當(dāng)是系統(tǒng)函數(shù)而沒有呈藍(lán)色顯示,就一定是函數(shù)名拼寫錯(cuò)誤。如果字符串中的文字不為粉紅色,一定是在當(dāng)前程序的后方少

12、了引號(hào)。括號(hào)匹配:將光標(biāo)放在檢查的起始位置上之后,按下相關(guān)的快捷鍵:Ctrl+ :向程序前方匹配括號(hào)Ctrl+ :向程序后方匹配括號(hào)設(shè)置斷點(diǎn):先在編輯器中選定需要檢查的若干行程序片段,然后執(zhí)行以下操作:菜單ToolsCheck Selection (檢查編輯器中選定的程序)。如果有錯(cuò)誤,就在編譯輸出窗口中雙擊這個(gè)錯(cuò)誤信息, VLISP 就會(huì)激活編輯窗口,并將光標(biāo)放在出錯(cuò)的程序行的頭部,并亮顯相關(guān)表達(dá)式。3、 VLISP 程序結(jié)構(gòu)有什么特點(diǎn)?1. AutoLISP 程序是一個(gè)由許多子表組成的一個(gè)大表。 所謂表, 就是由圓括號(hào)括起來(lái)的,用空格分隔的若干元素形成的數(shù)據(jù)結(jié)構(gòu)形式,如表( A B C ) ,表中有三個(gè)元素,表的長(zhǎng)度為3.表的結(jié)構(gòu) 可層層嵌套,如(A (BC) (D),該表有三個(gè)元素,即一個(gè)原子 A,兩個(gè)子表(BC)和(D)。 表是有序的,如(AB)不等于(BA)。若表中無(wú)元素,稱為空表,可寫作()。2. 表中的兩個(gè)元素之間至少有一個(gè)空格,多個(gè)空格的作用與一個(gè)空格的作用相同。3. 一段完整的 LISP 程序,左右括號(hào)數(shù)必須相同

溫馨提示

  • 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)論