明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2105|回复: 6

图层按颜色转换为另一图层,请各位大大帮忙

[复制链接]
发表于 2012-11-3 23:30 | 显示全部楼层 |阅读模式
1明经币
现想要实现一个简单的图层转换命令 具体如下;
原有图层AB  第一步:新建图层CDEFGH(如图中有就不用建了,这步可有可无)
第二步: 图层A里面的红色变为图层C    图层A里面的黄色自动变为图层D     图层A里面的绿色变为图层E  
第三步: 图层B里面的红色变为图层F     图层B里面的黄色自动变为图层G     图层B里面的绿色变为图层H
第四步:第五步:
等等,还有其他图层也一样要这么转换,可以不用考虑块里面的图层,块我都会炸开,还有就是不用自己选择图元,运行下命令就把设置好的图层都转换了。
希望高手能帮忙,谢谢
发表于 2012-11-3 23:30 | 显示全部楼层

  1. (Defun Clr2Lyr_B (x y / ss)
  2.    (if (setq ss (ssget "X" (list (cons 8 x) (cons 62 (car y)))))
  3.      (command "Chprop" ss  "" "LA" (last y) "")
  4.    )  
  5. )

  6. ;;; cLst ==>'("A" (1 "C") (2 "D") (3 "E"))
  7. (Defun Clr2Lyr_A (cLst)
  8.    (setq lyr (car cLst))
  9.    (foreach ele (cdr cLst)
  10.      (Clr2Lyr_B Lyr ele)
  11.    )
  12. )


  13. (Defun Clr2Lyr ()
  14.    ;;; 第一步:新建图层CDEFGH(如图中有就不用建了,这步可有可无)
  15.    ;;; 可直接安插 设定好图层的Dwg
  16.    
  17.    (mapcar 'Clr2Lyr_A
  18.      (list
  19.        (list
  20.          "A"
  21.          (list 1 "C")
  22.          (list 2 "D")
  23.          (list 3 "E")
  24.        )  ; '("A" (1 "C") (2 "D") (3 "E"))
  25.       
  26.        (list
  27.          "B"
  28.          (list 1 "F")
  29.          (list 2 "G")
  30.          (list 3 "H")
  31.        )
  32.        ;; 续加....
  33.      )  
  34.    )
  35. )
回复

使用道具 举报

发表于 2012-11-4 09:41 | 显示全部楼层
可以联系我QQ:496968041
回复

使用道具 举报

 楼主| 发表于 2012-11-4 11:57 | 显示全部楼层
本帖最后由 zzc83 于 2012-11-4 12:01 编辑

谢谢 Andyhon的帮忙 ,我运行图层转换的命令  Clr2Lyr 显示未知命令,还有图层B其实是其他颜色(大概456颜色)转换成FGH.
回复

使用道具 举报

 楼主| 发表于 2012-11-4 12:35 | 显示全部楼层
本帖最后由 zzc83 于 2012-11-4 12:35 编辑

我是代码小白,只能边看论坛边摸索了。。。
11步 改了(Defun c:Clr2Lyr ()   
第七步改了  ;;; cLst ("A" (1 "C") (2 "D") (3 "E"))
继续摸索图层B的456颜色。。。
回复

使用道具 举报

发表于 2012-11-4 12:42 | 显示全部楼层
还有图层B其实是其他颜色

您如此列举就如此对映喽
摊开来写就是方便您自行修改,那只是个雏型...
实务上还得加验证及错误处理,习惯上也会关闭命令行回应
这个有很多的范例,是以只关注必要的代码...

Command: (CLR2LYR)
回复

使用道具 举报

 楼主| 发表于 2012-11-4 12:54 | 显示全部楼层
试了,确实是123改成456就可以了,非常感谢Andyhon 帮我解决了问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-16 11:31 , Processed in 0.162953 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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