lisp更改图层属性
我试图找到一个lisp来更改图层线型和颜色,如果它们在图层名称中包含某些文本。e、 g如果我有一个名为“contour 1234”的图层,lisp可以从contour开始更改图层的颜色和线型吗?有谁知道我在哪里可以找到这个lisp吗? 欢迎先来论坛如果代码找到一个以轮廓开始的图层名,你能写下要更改的颜色和线型吗?
塔瓦特 更改代码中的线型和颜色以满足您的需要。
(defun c:Test (/ lt cl l e)
;; Tharwat 19.Sep.2013 ;;
(setq lt "DASHED" ;; LineType ;;
cl 3 ;; Color number ;;
)
(if (not (tblsearch "LTYPE" lt))
(vla-load
(vla-get-Linetypes
(vla-get-ActiveDocument
(vlax-get-acad-object)
)
)
lt
"acadiso.lin"
)
)
(while (setq l (tblnext "LAYER" (null l)))
(if (wcmatch (cdr (assoc 2 l)) "contour*")
(progn
(setq e (entget (tblobjname "LAYER" (cdr (assoc 2 l))))
e (subst (cons 62 cl) (assoc 62 e) e)
e (subst (cons 06
(if (and lt (tblobjname "ltype" lt))
lt
"Continuous"
)
)
(assoc 06 e)
e
)
)
(entmod e)
)
)
)
(princ)
)
(vl-load-com)
页:
[1]