马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
TRIM命令,提示在选择对象时,如果选择的是块里的对象,是仍然可以以块中所选择的对象作为边界进行剪裁和延伸的,但是如果我把TRIM命令用LISP组合起来,就不行了,想选择块中的对象,结果却选择了整个块对象。
如何新建一个选择集,能让其选中块内的单独的对象?
- [FONT=courier new]
- (defun c:t (/ cm ps ss)
- (princ "\n* 修剪对象→|边=延伸、组选=关闭| *")
- (setq cm (getvar "cmdecho"))
- (setq ps (getvar "pickstyle"))
- (setq *error* ee_err)
- (setvar "cmdecho" 1)
- (setvar "pickstyle" 0)
- (setvar "edgemode" 1)
- (princ "\n选择对象或 <全部选择>:")
- (if (setq ss (ssget))
- (command ".trim" ss "")
- (command ".trim" "" "e" "n")
- )
- (while (/= 0 (getvar "cmdactive")) (command pause))
- (setvar "cmdecho" cm)
- (setvar "pickstyle" ps)
- (princ)
- )
- (defun ee_err (s)
- (setvar "cmdecho" cm)
- (setvar "pickstyle" ps)
- (command "_.undo" "_e")
- )
- [/FONT]
利用上面的代码,如果选择块的话,将是整个块对象。但是如果用TRIM命令来选择块中的对象对,则是选择的是块中的单一的一个对象,为什么会有这样的区别?请求高手们指点一下?另我是一个LISP外行,上面的代码如何修改可以让其选择块中的单一的一个对象做为剪裁边界呀?
谢谢! |