AutoCAD顧問
還沒有註冊嗎...即日起免費註冊,所有最完整的AutoCAD討論、教學及資源都在論壇裡喔~

[討論]LISP判斷 功能

上一篇主題 下一篇主題 向下

[討論]LISP判斷 功能

發表 由 jaco4942 于 2015-08-14, 02:13

大家好,今天小弟我想請問各位前輩一個關於LISP判斷的問題

我寫了一個LISP,只要一呼叫它,它就會在畫面一固定處畫出一個備註欄。


LISP如下:
(defun c:note()

 (setq osn (getvar 'osnapcoord))
 (setq olayer (getvar 'clayer))
 (setvar 'osnapcoord 1)
 (setvar 'cmdecho 0)
 
 (command "-layer" "s" "0"  "")
 (command "-layer" "m" "f" "")
 (command "pline" "25,15" "152,15" "152,45" "25,45" "25,15" "25,25" "152,25" "152,35" "25,35" "")
 (command "-layer" "s" "tex"  "")
 (command "-layer" "m" "t" "")
 (command "-layer" "c" "6" "t" "")
 (command "text" "j" "mc" "88.5,40" "5" "0" "Notes" "")
 (command "text" "j" "mc" "88.5,30" "5" "0" "1." "")
 (command "text" "j" "mc" "88.5,20" "5" "0" "2." "")

 (command "-layer" "s" olayer  "")
 (setvar 'osnapcoord osn)
 (princ)
 )

我想請問一下,如果我已經下過一次這個指令,再下第二次時我是不是有機會能在這LISP之中加入某種判斷,讓CAD知道此標註欄已經存在,進而使LISP去執行另一個命令



總之我希望我能用同一個指令讓這個備註欄開啟、關閉、開啟、關閉
avatar
jaco4942
初級會員
初級會員

文章總數 : 65
年齡 : 25
來自 : 台中
職業 : 車銑加工業
愛好 : 機械
個性 : 隨興
使用年資 : 1年
使用版本 : 2016
積分 : 1
經驗值 : 3214
威望值 : 14
注冊日期 : 2009-12-01
男 天秤座 猴

回頂端 向下

回復: [討論]LISP判斷 功能

發表 由 brucechang 于 2015-08-25, 02:53

如果你用BLOCK+屬性, 再去判斷BLOCK存不存在, 這樣可行嗎?
avatar
brucechang
一般會員
一般會員

文章總數 : 6
年齡 : 54
來自 : 台北
職業 :
愛好 : 系統規劃.VBA
個性 : 溫和
使用年資 : 15
使用版本 : 2016
經驗值 : 1001
威望值 : 24
注冊日期 : 2015-05-10
男 處女座 兔

回頂端 向下

回復: [討論]LISP判斷 功能

發表 由 jaco4942 于 2015-09-04, 02:26

可以,但具體上要如何判斷blosk是否存在呢???
avatar
jaco4942
初級會員
初級會員

文章總數 : 65
年齡 : 25
來自 : 台中
職業 : 車銑加工業
愛好 : 機械
個性 : 隨興
使用年資 : 1年
使用版本 : 2016
積分 : 1
經驗值 : 3214
威望值 : 14
注冊日期 : 2009-12-01
男 天秤座 猴

回頂端 向下

回復: [討論]LISP判斷 功能

發表 由 明~ 于 2015-09-15, 16:44

就是在每次插入圖塊前,先尋找圖面是否有圖塊~
avatar
明~
高級會員
高級會員

文章總數 : 307
年齡 : 37
來自 : 彰化
職業 : 機械
愛好 : 打球 騎車 健行 音樂 電影 (說不完...)
個性 : 不與人爭
使用年資 : 從學生時代接觸到現在(工作中不一定使用)
使用版本 : 2004和2008
積分 : 17
經驗值 : 4663
威望值 : 670
注冊日期 : 2009-12-24
藍鵲292號
男 雙魚座 猴

回頂端 向下

上一篇主題 下一篇主題 回頂端


 
這個論壇的權限:
無法 在這個版面回復文章