明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1352|回复: 2

请教高人 请教高人 请教高人 请教高人

[复制链接]
发表于 2006-4-6 19:07:00 | 显示全部楼层 |阅读模式

请教:
        请教高人:请教如何根据某图层颜色到指定图层 (就是说:如我在同一图层中有蓝色和红色,如何把他们分到两个图层中,而且线型和属性不变)

                       请高人指点指点!!!!!

                        谢谢

发表于 2006-4-6 22:08:00 | 显示全部楼层

这个不难吧  用LISP编个程序就行了。

思路也很简单,将这个层的所有颜色做一个选集,然后循环,判断选集中每一个图元颜色组码,

如果是蓝色放到新层去。

发表于 2006-4-6 23:13:00 | 显示全部楼层
编了以下代码,请高手指正!
  1. ;;若图元颜色为"随层"或"随块",则不在本程序调整范围内
  2. (setq layername "xx" ; 原图层名
  3.    ss  (ssget (list (cons 8 layername)));选择原图层所有图元
  4.    i   -1
  5.    redlayer "red" ;红色图元要到的图层名
  6.    bluelayer "blue" ;蓝色图元要到的图层名
  7. )
  8. (while (setq ent (ssname ss (setq i (1+ i))))
  9. (setq em (entget ent))
  10. (setq color (cdr (assoc 62 em)))
  11. ;;根据颜色将图元分离
  12. (cond ((= 1 color) ;红色索引号为1
  13.      (entmod (subst (cons 8 redlayer) (assoc 8 em) em))
  14.     )
  15.     ((= 5 color) ;蓝色索引号为5
  16.      (entmod (subst (cons 8 bluelayer) (assoc 8 em) em))
  17.     )
  18. ) ;end of cond
  19. ) ;end of while
  20. (setq ss nil)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-8-8 04:55 , Processed in 0.169487 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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