如何得到上次插入的块?
(DEFUN C:wx(/ aa)(COMMAND "INSERT" "D:/backup/wx2.dwg" "x" "1" "y" "1" "r" "0")
(setq aa (ssget "l"));得不到块
(command "explode" aa "")
)
entlast也得不到块?
那怎么得到上次输入的块?
如何得到上次插入的块?
(DEFUN C:wx(/ aa)(COMMAND "INSERT" "D:/backup/wx2.dwg" "x" "1" "y" "1" "r" "0")
(setq aa (ssget "l"));得不到块
(command "explode" aa "")
)
entlast也得不到块?
那怎么得到上次输入的块?
null
你的程序不完整还有一个插入点你没给到,所以后面的不会运行了,直接跳过
要想炸开块就要在*error*函数里动点文章
不然你就在插入块之前指定一个点,再来(COMMAND……)
我知道你想玩动态
但,还是先把程序能用再说。
能用先用,再慢慢优化
还有,我想你还是检测乘虚是不是完整运行完了吧
知道"print"或者"princ"的用法吧 我只是想让插入的块是炸开的! 分开运行没问题啊,合起来aa为nil (DEFUN C:wx(/ aa)
(COMMAND "-INSERT" "D:/backup/wx2.dwg" "x" "1" "y" "1" pause "0")
(setq aa (entlast))
(command "explode" aa "")
)
这样更好:
(DEFUN C:wx (/ aa)
(COMMAND "-INSERT" "*D:/backup/wx2.dwg" pause 1 0)
)
null
分开当然没问题因为分开你的(command……)之后没有东西
放在一起…,
command后面的就有问题了
既然要炸开
名字前加“*”
版主已经帮你解决了
页:
[1]