找回密码
 注册会员
查看: 730|回复: 0

[讨论] 换层删层

  [复制链接]
发表于 2008-8-19 14:00:42 |Error| 显示全部楼层 |阅读模式

让我们的手紧紧相连,一起成长。

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

×
换层删层      供大家研讨



提供大家一个换层删层的实用程序,程序如下:

(defun c:er ()      ;删除层
  (setq a (getstring "要删除的层名:"))
  (er a)
)
(defun er (b / a_)  ;本程序在程序中用(er "层名")
(setq a_ nil a_ (ssget "X" (list (cons 8 b))))
(if (= a_ nil)()
(command "erase" a_ "")
))
(defun c:hc ()  ;用于换层
(setq a (getstring "要删换的层名:") a1 (getstring "要换成的层名:"))
(setq en (ssget "x" (list (cons 8 a))) i 0 len (sslength en))
(repeat len
  (setq _en (entget (ssname en i)) i (+ i 1))
  (setq _en (subst (cons 8 a1) (assoc 8 _en) _en))
  (entmod _en)
)
(command "layer" "s" "0" "")
)


你将程序拷贝到你的cad下,给它一个名如er.lsp在命令下加载(load"er")回车就可使用了。删除一层用er回车,换层用hc回车
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

闭关者|手机版|© 2005-2026|Cncad.Net ( 苏ICP备2026083443号 )|网站地图

GMT+8, 2026-11-10 00:56 , Processed in 0.211177 second(s), 23 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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