cad如何用lisp或者宏批量实现图层颜色随层?

画图时有些图层在块里,不随层,蛮多的,想批量处理一下

;一键,所有图元颜色随层颜色
(defun c:tes ( / block e obj ss)
 (if (null vlax-dump-object) (vl-load-com) )
 (if (setq ss (ssget "X"))
  (progn
   (vla-startundomark (vla-get-activedocument (vlax-get-acad-object)))
   ;; å—定义内实体
   (vlax-for block (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object)))
    (vlax-for obj block
     (vla-put-color obj 256)
    )
   )
   
   (while (setq e (ssname ss 0))
    (setq ss (ssdel e ss) obj (vlax-ename->vla-object e))
    (vla-put-color obj 256)
   )
  )
 )
 (princ)
)追问

再请教一下,需要输入什么命令吗?还是直接加载?我直接加载了好像没有什么变化

温馨提示:答案为网友推荐,仅供参考