国产精品一区二区久久精品_一区二区三区中文字幕_国产 天天做天天爱夭大综合网|国产草裙社区在线观看|久久人

歡迎光臨深圳市凱迪賢模具有限公司官網(wǎng)!
0755-26825352
18948189678
為AUTOLISP建立缺省輸入函數(shù)

/ 2021/6/5 10:43:41

使用LISP編程時(shí),常常需要用戶回答一些參數(shù),為了提高工作效率,希望能用回車代替某個(gè)特定輸入即缺省值。此時(shí),在程序中增加一個(gè)判斷可使變量得到缺省回答。



(setqwidth(getreal″inputwidth:″))


(if(nullwidth)(setqwidth0.3));回車置width的值為0.3。


有時(shí)需要依上一次的輸入值為本次的缺省輸入(如寬度、角度、距離等),這時(shí)就需要用全局變量保存上一次輸入值提供缺省輸入。例如,若欲將上次輸入的寬度值作為缺省輸入可使用下述函數(shù)


(if(not?硍idth)
(setq?硍idth0.3);第一次依0??3為缺省值)
(princ″\inputwidth:″)
(princ″\n
(princ?硍idth)
(princ″:″);顯示提示信息
(setqw1(getrea1))
(if(notw1)
(setqw1?硍idth)
(setq?硍idthw1);用全局變量保存當(dāng)前輸入值
(princw1)
)


函數(shù)的執(zhí)行結(jié)果是第一次執(zhí)行時(shí)依寬度0??3為缺省值,提示信息為inputwidth:,給定新的輸入值后如0??5,下一次依寬度0??5為缺省提示值,提示信息為inputwidth:。


在一般情況下,還可通過建立缺省處理函數(shù),加快程序處理速度,減少編碼。如


(defundefal(strval)
(setq?砱lobaval)
(princ(strcatstr″
(princ?砱loba)
(princ″″)
(setqvar(getreal))
(if(notvar)
(setqvar?砱loba);用缺省值作為輸入
)
(princvar)
)


這是一個(gè)有參函數(shù),它將輸入的實(shí)數(shù)作為返回值。當(dāng)按(defal″inputwidth″0.5)調(diào)用時(shí)提示信息為inputwidth:。該函數(shù)能按str的提示缺省輸入實(shí)數(shù)(由val給定)類值(如角度、距離等),加入到ACAD?盠SP文件中即可像LISP標(biāo)準(zhǔn)函數(shù)一樣供其它函數(shù)調(diào)用。



服務(wù)熱線

0755-26825352

企業(yè)微信銷售咨詢