ssget如何重新调用并过滤备份过的选择集?
本帖最后由 arthwon 于 2012-3-13 23:33 编辑手动选择了要处理的图元,并将该选择集备份了,之后想重新再调用,应该如何操作?
(PRINC "\n选择转换的图形 ")
(setq ss (ssget))
(setq ss_all (ssget "p")) ;备份了上面的选择集
;中间对变量ss进行了其他操作,使ss的选择集改变了
(setq ss ss_all) ;将备份的选择集重新赋值给变量ss
(setq ss (ssget "p" ;用P或其他sel-method都没能调用原来的选择集
'((0 . "TEXT")
(7 . "Standard")
(8 . "1528")
)
)
)
参考:
1、(command "_.select" ss_all)(ssget "p"),前提是中间操作没有删除图元
2、先将选择集转表,然后表转选择集,若中间有删除操作,可以先判断选择集内图元是否被删除; 本帖最后由 arthwon 于 2012-3-14 10:19 编辑
哈哈,我太菜了。用select可以选择为上一个选择集,平时都没用到这个命令。
感谢楼上的兄弟啊~~
因为没有删除图元,所以没转表了。其实我还不会转来转去呢
还是贴出完整代码供大家参考吧。
(PRINC "\n选择转换的图形 ")
(setq ss (ssget))
(setq ss_all (ssget "p")) ;备份了上面的选择集
;中间对变量ss进行了其他操作,使ss的选择集改变了
(command "_.select" ss_all "") ;使备份的选择集成为上一个选择集
(setq ss (ssget "p" '((0 . "TEXT") (7 . "Standard") (8 . "1528"))))
本帖最后由 gcho 于 2012-3-14 10:52 编辑
能否把lsp中途在屏幕上输出的一列数据定义为选择集,该选择集也是这个lsp下一步要提取的参数 原来是备份的意思。 (sssetfirst nil ss_all) 这个好! 经常会出现(command "_.select" ss_all "") 命令 无效的情形。
页:
[1]