找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 796|回复: 7

[编程申请]:线条按颜色分图层

[复制链接]
发表于 2005-6-29 17:31:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
图中有若干LINE线与PLINE线,其颜色不同,求CAD程序,将相同颜色之线条(包括LINE线与PLINE线)放在以其颜色名称(数字)
为图层名的图层中,如红色的LINE与PLINE放在“1”图层中,黄色的LINE与PLINE放在“2”图层中,绿色的LINE与PLINE放在
“3”图层中,余类推。能处理1~20种颜色即可,若图中无对应图层名,请建立。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2005-6-30 08:13:35 | 显示全部楼层
我也不是很熟练,不然帮你了。我记得lisp书本上有类似的例子。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-6-30 12:43:55 | 显示全部楼层
测试:
  1. [FONT=courier new](load "xyp_lib")
  2. ;|加载通用函数(可在签名栏直接下载)
  3. 如果已经下载xyp_lib并放到搜索路径下可以不再下载!
  4. 利用以下任何一种方式即可加载和运行通用函数内的所有子程序:
  5. 1.在acad.lsp中增加(load"xyp_lib")
  6. 2.在每个程序内增加(load"xyp_lib")
  7. 3.在command下,输入(load"xyp_lib")
  8. 4.在菜单.mnl中增加(load"xyp_lib")
  9. 5.将xyp_lib.vlx文件直接拽到cad屏幕
  10. [COLOR=red] ★通用函数下载地址:[/COLOR][url]http://www.xdcad.net/forum/attachment.php?s=&postid=1606661[/url]|;


  11. ;;;线按层改色
  12. (defun c:test ()
  13.   (CMDLA0)
  14.   (setq i 1)
  15.   (while (< i 255)
  16.     (princ)
  17.     (princ ".");显示进程
  18.     (mkla (itoa i) i)
  19.     (setq ss (ssget "X" (list '(0 . "*LINE") (cons 8 (itoa i))))
  20.           i  (1+ i)
  21.     )
  22.     (if        ss
  23.       (command "change" ss "" "p" "c" i "")
  24.     )
  25.   )
  26.   (princ "OK")
  27.   (CMDLA1)
  28. )[/FONT]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-6-30 17:44:54 | 显示全部楼层
CAD2002运行后产生了1~255共255个图层(我想图层可能太多了点),并且各不同颜色的线条并没有被分配到其相应的图层上去。我的意思可能没表达清楚,能否图中的线条有多少种颜色就建立与其对应的多少个图层(不必建立空图层),然后将不同颜色的线条分配到对应的图层上去。请下附件对比,谢谢。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-6-30 17:59:37 | 显示全部楼层
简单:把程序中的255改成想要的数字如20即可!!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-6-30 22:14:16 | 显示全部楼层
如果没有其它办法只好先这样了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-6-30 23:44:43 | 显示全部楼层
  1. [FONT=courier new](load "xyp_lib")
  2. ;|加载通用函数(可在签名栏直接下载)
  3. 如果已经下载xyp_lib并放到搜索路径下可以不再下载!
  4. 利用以下任何一种方式即可加载和运行通用函数内的所有子程序:
  5. 1.在acad.lsp中增加(load"xyp_lib")
  6. 2.在每个程序内增加(load"xyp_lib")
  7. 3.在command下,输入(load"xyp_lib")
  8. 4.在菜单.mnl中增加(load"xyp_lib")
  9. 5.将xyp_lib.vlx文件直接拽到cad屏幕
  10. ★通用函数下载地址:[url]http://www.xdcad.net/forum/attachme...&postid=1606661[/url]|;


  11. ;;;线按颜色分层
  12. (defun c:test ()
  13.   (CMDLA0)
  14.   (setq i 1)
  15.   (while (< i 255)
  16.     (princ)
  17.     (princ ".")                                ;显示进程
  18.     (setq ss (ssget "X" (list '(0 . "*LINE") (cons 62 i))))
  19.     (if        ss
  20.       (progn
  21.         (mkla (itoa i) i)
  22.         (command "change" ss "" "p" "la" (itoa i) "")
  23.       )
  24.     )
  25.     (setq i (1+ i))
  26.   )
  27.   (princ "OK")
  28.   (CMDLA1)
  29. )[/FONT]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-7-1 11:08:07 | 显示全部楼层
CAD2002测试可用,非常感谢。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2025-9-22 06:09 , Processed in 0.443936 second(s), 46 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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