明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1682|回复: 5

小弟有一个图里面很多的这种块,怎么才能一次把他的颜色改了。

[复制链接]
发表于 2004-12-17 17:38:00 | 显示全部楼层 |阅读模式
小弟有一个图里面很多的这种块,怎么才能一次把他的颜色改了。初次接触LISP,大哥们帮帮小弟

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2004-12-17 17:47:00 | 显示全部楼层
现在知道了,所有自己做的块不是0层做的,不是颜色随层的麻烦了吧,呵呵,一个最简单的方法,不用LISP/,就是所有你自己做的块都设成0层,颜色尽量不要设。
 楼主| 发表于 2004-12-17 17:57:00 | 显示全部楼层
是呀,不管在哪个层上,我都不会改,请多指教,告诉我


关键已经是这样了,怎么办?救命呀
发表于 2005-1-5 18:40:00 | 显示全部楼层
command:refedit
发表于 2005-1-5 21:05:00 | 显示全部楼层
制块时,颜色用byblock,之后就可以改块的颜色啦!


想怎么改都可以!
发表于 2005-1-7 08:23:00 | 显示全部楼层
  1. ;;By 龙龙仔(LUCAS)
  2. (defun C:BLK_COL (/ ENT N NAME SS)   (defun GETATT  (ENT)
  3.        (while (/= (DXF 0 (entget (setq ENT (entnext ENT)))) "SEQEND")
  4.            (MODD ENT 62 COL)
  5.        )
  6.        (princ)
  7.    )   ;|
  8.    (defun GETATT  (E / N ATT E1 EN EN1 RSLT)
  9.        (setq EN (entget E)
  10.      E1 E
  11.        )
  12.        (if  (and (= (DXF 0 EN) "INSERT")
  13.            (= (DXF 66 EN) 1)
  14.   )
  15.            (progn
  16.   (setq E1 (entnext E1))
  17.   (while (and E1
  18.            (setq EN1 (entget E1))
  19.            (= (DXF 0 EN1) "ATTRIB")
  20.                )
  21.      (MODD E1 62 COL)
  22.      (setq E1 (entnext E1))
  23.   )
  24.            )
  25.        )
  26.    )|;   (defun DXF (A1 A2)
  27.        (cdr (assoc A1 A2))
  28.    )   (defun MODD (E EE COL)
  29.        (setq E (entget E))
  30.        (if  (= (assoc EE E) NIL)
  31.            (setq E (append E (list (cons EE COL))))
  32.            (setq E (subst (cons EE COL) (assoc EE E) E))
  33.        )
  34.        (entmod E)
  35.    )   (if (and (setq ENT (car (entsel "\nSelect Block: ")))
  36.        (= "INSERT" (DXF 0 (setq ENT (entget ENT))))
  37.            )
  38.        (progn
  39.            (setq COL (acad_colordlg 7))
  40.            (setq NAME (assoc 2 ENT))
  41.            (if (= (DXF 66 ENT) 1)
  42.   (progn
  43.      (setq  SS (ssget "x"
  44.          (list  (cons 0 "INSERT")
  45.         NAME
  46.          )
  47.          )
  48.     N   0
  49.      )
  50.      (repeat (sslength SS)
  51.          (GETATT (ssname SS N))
  52.          (setq N (1+ N))
  53.      )
  54.   )
  55.            )
  56.            (setq ENT
  57.            (cdr
  58.                (assoc
  59.      -2
  60.      (tblsearch "BLOCK" (cdr NAME))
  61.                )
  62.            )
  63.            )
  64.            (while ENT
  65.   (MODD ENT 62 COL)
  66.   (setq ENT (entnext ENT))
  67.            )
  68.            (command "_.REGEN")
  69.        )
  70.    )
  71.    (princ)
  72. )
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-17 23:39 , Processed in 0.186883 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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