找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 802|回复: 7

[求助] [求助]:关于图层转换

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

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

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

×
下面图层为将D01A所有层里的备份再转换新图层为B1,下面有句 (setq s (ssget "all"))用得不恰当,以致程序结束出现大量的:
Unknown command "LA".  Press F1 for help.
Unknown command "B1".  Press F1 for help.
Unknown command "FZP".  Press F1 for help.
nil

因为图层太多且非特定图层,所以需编个程序来一一复制到新图层然后再purge老图层,各位高手有没有更好的办法(fox-->presscad)

(if(tblsearch "layer" "D01A")
(progn
(command "-layer" "lo" "*" "u" "D01A*" "")
(setq s (ssget "all"))
(if s
(command "change" s "" "Properties" "la" "B1" "")
)))
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 488个

财富等级: 日进斗金

发表于 2005-4-11 02:21:55 | 显示全部楼层
(if (setq s (ssget "x" '((8 . "D01A*" ))))
   (command "change" s "" "Properties" "la" "B1" "")
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-4-11 08:50:14 | 显示全部楼层
我说李兄啊!教你一个省事的办法
不要一个一个图层去改..
将旧图层列表,对应转换的新图层也列表
用参数循环调用更换图层子程序企不省事又省心??
子程序可以就用楼上的只是把你的"D01A*" 和B1分别用
新旧图层的参数代替就好了.....
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

发表于 2005-4-12 12:32:44 | 显示全部楼层
怎么好弄,就怎么搞,当图层已存在时老提示
Layer "TEXT" already exists.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-14 00:25:27 | 显示全部楼层
我说李兄啊!教你一个省事的办法
不要一个一个图层去改..
将旧图层列表,对应转换的新图层也列表
用参数循环调用更换图层子程序企不省事又省心??
子程序可以就用楼上的只是把你的"D01A*" 和B1分别用
新旧图层的参数代替就好了.....

如何写。。。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-4-14 16:08:45 | 显示全部楼层
我给一楼的添上一个,你不仿试一试吧!
代码如下:
(defun c:gc()
     (setq f6 (ssget))
     (prompt "\nPick an entity whose layer new entities will be changed to:")
     (setq f7 (entsel))
     (setq n (sslength f6))
     (setq i 0)
     (setq g7 (entget (car f7)))
     (setq i7 (assoc 8 g7))
     (repeat n
        (setq g6 (entget (ssname f6 i)))
        (setq i6 (assoc 8 g6))
        (setq g8 (subst i7 i6 g6))
        (entmod g8)
        (setq i (+ i 1))
     )
  )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-14 17:57:44 | 显示全部楼层
事先装置图层,然后说一键切换,而不用选择的这种
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-28 02:30 , Processed in 0.188907 second(s), 44 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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