SuperliuC 发表于 2012-5-31 09:53:09

自动修改图层颜色(索引颜色)

我希望实现的功能:
预先设定,名字为"a"的图层,颜色为“1”;名字为"b"的图层,颜色为“2”……
依次类推。
当然,可以让我自由修改这些初始设定的图层名字及其对应的颜色(这里指索引颜色,不是真彩色)。
当调用程序后,直接把现有图纸上的图层,按我设定的规则,全部处理完。

这个功能一般用于建筑设计里面,非建筑专业套用建筑底图的时候,可以快速处理建筑图的颜色。
当然,需要使用者自己按喜好预先设定好各种对应值。

这里附上一个能够改为真彩色的lisp,仅供参考!

(defun c:tc()
(vl-load-com)
(setq acmCol (vla-getinterfaceobject
         (vlax-get-acad-object)(strcat "AutoCAD.AcCmColor." (substr (getvar "ACADVER") 1 2))))
(vlax-for x (vla-get-layers (vla-get-activedocument (vlax-get-acad-object)))
(cond
    ((= (vla-get-name x) "DOTE") (vla-setrgb acmCol 0 114 153) (vla-put-TrueColor x acmCol))
    ((= (vla-get-name x) "dote") (vla-setrgb acmCol 0 114 153) (vla-put-TrueColor x acmCol))
    ((= (vla-get-name x) "wall") (vla-setrgb acmCol 0 153 114) (vla-put-TrueColor x acmCol))
    ((= (vla-get-name x) "WALL") (vla-setrgb acmCol 0 153 114) (vla-put-TrueColor x acmCol))
    ((= (vla-get-name x) "window") (vla-setrgb acmCol 0 153 204) (vla-put-TrueColor x acmCol))
    ((= (vla-get-name x) "WINDOW") (vla-setrgb acmCol 0 153 204) (vla-put-TrueColor x acmCol))
)
)
)

开心无惧 发表于 2024-8-23 11:52:36

本帖最后由 开心无惧 于 2024-8-23 12:01 编辑

【KAIXIN】 发表于 2012-5-31 14:17
附件里面含:
   通用函数介绍,
   含输入层名改层和层对象的颜色

请问下 批量修改图层颜色时
当前操作的结果是把已存在的图形对象颜色也修改了;
但当使用其它命令把图形切换图层时(经常使用), 图形的图层已转换但是颜色未变 ,还是刚刚修改后的对象颜色;
如何在批量修改图层颜色时仅修改图层本身的颜色, 截图中特性工具栏的颜色211改为bylayer;


mokson 发表于 2020-7-21 10:01:15

attach://67609.rar
学习一下,感谢大神!

mokson 发表于 2020-7-21 10:00:11

attach://67609.rar
学习一下,感谢大神!

yanguangfei 发表于 2012-5-31 11:49:07

没这么深吧,把图层颜色设成参数,写个自定义函数把参数传过来就行

【KAIXIN】 发表于 2012-5-31 14:17:12

实用(含通用函数)更新(加上错误判断)

本帖最后由 【KAIXIN】 于 2012-6-1 10:04 编辑


附件里面含:
   通用函数介绍,
   含输入层名改层和层对象的颜色
   含选取对象改层和层对象的颜色
**** Hidden Message *****



soly2006 发表于 2012-5-31 14:20:45

有贴必顶,好贴必顶。

qincccken 发表于 2012-5-31 14:33:00

看看开心老大的大作,谢了

zhd81617 发表于 2012-5-31 16:44:10

学习中

功夫佬 发表于 2012-5-31 17:32:00

网上找过,对我没太大作用!

峰峰兒 发表于 2012-5-31 17:49:29

lincctw_ccl 发表于 2012-5-31 18:30:12

我也想看一下 開心老大的源碼!!

qincccken 发表于 2012-5-31 19:24:48

只能看看,没币了,呵呵
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 自动修改图层颜色(索引颜色)