明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1509|回复: 8

[提问] 图层快速改色

  [复制链接]
发表于 2023-8-30 12:13:53 | 显示全部楼层 |阅读模式
求助有没有图层快速改色的工具,输入数字键直接选择图层所在图元改色操作?
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2023-8-30 17:58:02 | 显示全部楼层
直接从图层 那里改,不是很方便吗,另外论坛里面也有,搜一下嘛
http://bbs.mjtd.com/thread-185715-1-1.html
http://bbs.mjtd.com/forum.php?mo ... hlight=%B8%C4%C9%AB
发表于 2023-8-30 18:03:41 | 显示全部楼层

(defun C:NM (/ cc ent layobj)
        (setq ent(car(entsel "\n請拾取")))
        (setq cc(cdr(assoc 8 (entget ent))))
        (setq LAYOBJ (vla-item (vla-get-Layers (vla-get-ActiveDocument (vlax-get-acad-object))) cc))
        (vla-put-color layobj 1) ;改为1号颜色
        (princ)
)
发表于 2023-8-30 18:04:43 | 显示全部楼层
aggdqty 发表于 2023-8-30 17:58
直接从图层 那里改,不是很方便吗,另外论坛里面也有,搜一下嘛
http://bbs.mjtd.com/thread-185715-1-1.h ...

他是想改图元所在图层颜色,不是要改图元颜色
 楼主| 发表于 2023-8-30 21:03:31 | 显示全部楼层
aggdqty 发表于 2023-8-30 17:58
直接从图层 那里改,不是很方便吗,另外论坛里面也有,搜一下嘛
http://bbs.mjtd.com/thread-185715-1-1.h ...

这个操作下来跟图层特性管理器一样,步骤有点繁琐,想要的是跟图元改色一样,输入色号直接改图层颜色
 楼主| 发表于 2023-8-30 21:09:23 | 显示全部楼层
xj6019 发表于 2023-8-30 18:03
(defun C:NM (/ cc ent layobj)
        (setq ent(car(entsel "\n請拾取")))
        (setq cc(cdr(assoc 8 (entget  ...

感谢大佬,就是想要的效果,能帮忙改下下面这个代码对图层操作不?
(defun c:1~255 (/ cnt)
(setq cnt -1)
(repeat 257
(eval(read(strcat
"(defun C:" (if (= cnt -1)"`"(itoa cnt))
"(/ ent)(setq ent (ssget))"
"(command \"_.change\" ent \"\" \"_p\" \"_c\" \""
(cond((= cnt -1)"bylayer")((= cnt 0)"byblock")(t(itoa cnt)))
"\" \"\")(princ))")))
(eval(read(strcat
"(defun C:C" (if (= cnt -1)"`"(itoa cnt)) "()"
"(command \".-color\""
(cond((= cnt -1)"bylayer")((= cnt 0)"byblock")(t(itoa cnt)))
")(princ))")))
(setq cnt (1+ cnt))))
(c:1~255)
发表于 2023-9-14 21:05:19 | 显示全部楼层
感谢大佬,就想要这个效果
 楼主| 发表于 2023-9-17 12:56:50 | 显示全部楼层
在论坛翻到的,有需要可以下载.
;图层快速选择图元改色
(defun c:bb ()(setq yanse (acad_colordlg 1))(gtcys yanse)(princ))(defun gtcys (yanse / acaddoc acadobj en i lay layobj obj ss vlay vlay1)
(setq AcadObj (vlax-get-Acad-object)  AcadDoc (vla-get-ActiveDocument AcadObj) LayObj (vla-get-layers AcadDoc))
(if (setq ss (ssget))(progn(setq i 0)(repeat (sslength ss)(setq en (ssname ss i) obj (vlax-ename->vla-object en) lay (vla-get-layer obj)  vlay (vla-item LayObj lay))
(if (= (equal vlay vlay1) nil)(progn(vla-put-color vlay yanse)(setq vlay1 vlay)))(setq i (1+ i)))))(princ))
发表于 2024-5-8 07:41:52 | 显示全部楼层
月下闲人 发表于 2023-9-17 12:56
在论坛翻到的,有需要可以下载.
;图层快速选择图元改色
(defun c:bb ()(setq yanse (acad_colordlg 1))( ...

谢谢分享,正需要这样的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 17:36 , Processed in 0.179692 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表