cq4920 发表于 2020-11-5 19:57:38

属性刷怎么能判断多重属性块之类?

本帖最后由 cq4920 于 2020-11-5 19:59 编辑

(defun c:DA (/ aa bb ss objlay n)
      (vl-load-com)
      (setq aa (nentsel "选取源图元或:<源图层>"))
      (if (= nil (type aa))
                (progn;;修改图元图层
                (setq aa (nentsel "选取源图层上的一个图元:"))      
                (setq bb (nentsel "选取被修改图层上的一个图元:"))
(setq en1(entget(car aa)))
(setq en2(entget(car bb)))
      (command "_.change" (ssget "x" (list (cons 8 (cdr(assoc 8 en2 ))))) "" "p" "la" (cdr(assoc 8 en1 )) "")
)      
      (progn
      (setq ss (mc-ssget (strcat "\n选取被修改图元特性或:<图层>") "S" '((0 . "*"))))
      ;(setq ss (ssget))
(if (= nil (type ss))         
      (progn;;修改图元图层
                (setq ss (mc-ssget (strcat "\n选取被修改图层的图元") "S" '((0 . "*"))))
                (setq objlay (vla-get-layer (vlax-ename->vla-object (car aa))))
(setq n 0)
(while (< n (sslength ss))
    (vla-put-layer (vlax-ename->vla-object (ssname ss n)) objlay)
    (setq n (1+ n))
)      
      )
(command "MATCHPROP"aa ss "");;修改图元特性
      ))
      )
      (princ)
      )


在选取到特殊块的时候,提示错误,如合能过滤特殊块 或直接提示不可选取块
页: [1]
查看完整版本: 属性刷怎么能判断多重属性块之类?