LispLink綠色版是一款基于CAD的autolisp程序編寫軟件,該軟件功能強大,包括匹配括號、自動縮進、優(yōu)化程序格式、語法高亮等功能,需要的用戶快來下載吧。
不僅可以獨立于CAD運行,還可與lsp文件相關(guān)聯(lián),方便用戶進行程序的編輯,是一款操作方便,功能非常強大的編程工具。
【特點介紹】
1、AutoLISP語言是在普通的LISP語言基礎(chǔ)上,又擴充了許多適用于CAD應(yīng)用的功能而形成的一種程序設(shè)計語言。它是一種解釋性求值語言,速度較慢,難以保密,可用任何文字編輯軟件編輯,用純文本的格式保存。例如:
?。╯etq i 1);就是代碼i值是1
?。╟ommand “CIRCLE” ‘(0 0) 100);命令在坐標(biāo)原點繪制半徑100的圓。
2、AutoLISP語言中的一切成分都是以函數(shù)形式給出的,它沒有語句概念或其他語法結(jié)構(gòu)。執(zhí)行AutoLISP程序就是執(zhí)行一些函數(shù),再調(diào)用其它函數(shù)。例如:
(setq pt1 (getpoint “\n請選擇圓心插入點”))
?。╟ommand “CIRCLE” pt1 100);命令這個插入點繪制圓,半徑為100
3、AutoLISP把數(shù)據(jù)和程序統(tǒng)一表達為表結(jié)構(gòu),故可把程序當(dāng)作數(shù)據(jù)來處理,也可把數(shù)據(jù)當(dāng)作程序來執(zhí)行。
例如:一條直線,起點坐標(biāo)’(0 0),端點坐標(biāo)‘(1000 0),圖層為0層,顏色為1【紅色】這個是一條直線的一些數(shù)據(jù),怎么執(zhí)行變?yōu)槌绦虼a如下:
?。╡ntmake (list ’(0 . “LINE”) ‘(8 . “0”) ’(62 . 1) ‘(10 0 0) ’(11 1000 0)))
以上可以直觀的看數(shù)據(jù),也可以粘貼到AutoCAD的命令行,就繪制出以上要求的直線。
4、AutoLISP語言中程序運行過程就是對函數(shù)求值的過程,是在對函數(shù)求值的過程中實現(xiàn)函數(shù)的功能。在AutoCAD里面,所有的對象可以看成是由無數(shù)的點構(gòu)成,每個點都有自己的坐標(biāo),函數(shù)的運行就是計算出這些點的數(shù)值,根據(jù)得到的數(shù)值進行判斷。
5、AutoLISP語言的主要控制結(jié)構(gòu)是采用遞歸方式。遞歸方式的使用,使得程序設(shè)計簡單易懂。例如:
?。╯etq &k1 (entsel));選擇對象
?。╯etq &k1 (car &k1));提取圖元
(setq #g1 (entget &k1));取得屬性列表
?。╯etq c0 (cdr (assoc 0 #g1)));取得圖元名稱
以上是一個個的寫下來,可以寫成以下:
?。╯etq c0 (cdr (assoc 0 (entget (car (entsel))))));簡單易懂
6、由于autolisp簡單,容易,所以上手很快。編寫程序后,可以大大的提高繪圖效率,有名的【天正】插件,就是繪圖的好幫手。
7、autolisp程序也有不足的地方,如提取坐標(biāo),這個只能在圖元屬性里面提取,這樣的話會有局限性,法向坐標(biāo)1與-1的坐標(biāo)值相同,但是圖形的位置不同,造成計算坐標(biāo)的困難,所以提取坐標(biāo)值,最好使用VLAX函數(shù)來提取。