請教LISP內REFEDIT的問題
<p>不知是那裡錯,無法執行</p><p>我要把圖塊內的LINE都刪除</p><p>拜託...謝謝...</p><p> (setq aaa (ssget "x" (list (cons 0 "insert")))) <br/> (setq lis (sslength aaa)) <br/> (setq i 0) <br/> (repeat lis <br/> (setq ename (ssname aaa i)) <br/> (command "refedit" ename "o" "" "") <br/> (command "erase" (ssget "x" (list (cons 0 "line"))) "") <br/> (command "refclose" "s") <br/> (setq i (+ 1 i)) <br/> ) </p> ;;删除块内直线(defun c:bbb (/ Blocks)
(setq Blocks (vla-get-blocks (vla-get-ActiveDocument (vlax-get-acad-object))))
(vlax-for block blocks
(if (= (vla-get-IsLayout block) :vlax-FALSE)
(vlax-for object block
(and (= (vla-get-objectname object) "AcDbLine")
(vla-delete object))
)
)
)
)
<p>謝謝...謝謝...</p><p>看了大哥您寫的程式</p><p>我還要好好努力</p><p>我在台灣,聽說兩岸有些稱呼不太一樣</p><p>稱您大哥應該不會失禮吧(在我們這邊是尊敬的表達)</p><p>我在LISP書上好像沒看到您所用的語法</p><p>是LISP嗎?</p>
我的AUTOCAD是2005
<p>我的AUTOCAD是2005</p><p>剛剛我試執行好像有問題</p><p>; 錯誤: no function definition: VLAX-GET-ACAD-OBJECT</p><p>不知是什麼問題</p> 请先使用(vl-load-com)函数以加载这些函数。这属于Visual LISP范畴。 yenbl发表于2010-5-17 17:48:00static/image/common/back.gif謝謝...謝謝...看了大哥您寫的程式我還要好好努力我在台灣,聽說兩岸有些稱呼不太一樣稱您大哥應該不會失禮吧(在我們這邊是尊敬的表達)我在LISP書上好像我不會加載(vl-load-com)函数...
<p>大哥我不會加載(vl-load-com)函数</p><p>可以告訴我程式碼怎麼寫嗎?</p><p>拜託...拜託...</p> ;;删除块内直线(defun c:bbb (/ Blocks)
(vl-load-com)
(setq Blocks (vla-get-blocks (vla-get-ActiveDocument (vlax-get-acad-object))))
(vlax-for block blocks
(if (= (vla-get-IsLayout block) :vlax-FALSE)
(vlax-for object block
(and (= (vla-get-objectname object) "AcDbLine")
(vla-delete object))
)
)
)
)怪了!!!
謝謝...
謝謝...
页:
[1]