回复 redcat 的帖子
(if xflag
(mapcar 'vlax-ename->vla-object ssetlist);转化为vla对象表
ssetlist) ;_
蓝色部分上次可能没有或者我没看到。
------------------------------------------------------------------------------
- ;;如下两种方法仅为理论推理,运行速度未经测试。
- (defun sset->list (sset xflag / lst)
- (foreach x (ssnamex sset)
- (if (not (listp (setq x (cadr x))))
- (if xflag
- (setq lst (cons (vlax-ename->vla-object x) lst))
- (setq lst (cons x lst))
- )
- )
- )
- lst
- )
- (defun sset->list (sset xflag / lst)
- (foreach x (ssnamex sset)
- (if (not (listp (setq x (cadr x))))
- (setq lst (cons x lst))
- )
- )
- (if xflag
- (mapcar 'vlax-ename->vla-object lst)
- lst
- )
- )
;;经过露水的测试 if xflag 放在循环里面慢的很多
|