找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 594|回复: 4

[求助]:這個程序為何只能刪除層

[复制链接]
发表于 2004-9-3 13:10:01 | 显示全部楼层 |阅读模式

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

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

×
請問大大,這個程序為何只能刪除層?而不是層和實體同時刪除

刪除一個圖層 無論它是否包含東西

  1. (defun c:kill (/ ceng ss ll ask)
  2.   (setvar "CMDECHO" 0)
  3.   (setq        ask (getint "\n 1.根據實體選擇層 2.已知層名:<1>")
  4.   )
  5.   (if (= nil ask)
  6.     (setq ask 1)
  7.   )
  8.   (if (= ask 1)
  9.     (progn
  10.       (setq ceng
  11.              (cdr
  12.                (assoc 8
  13.                       (entget (car (entsel "\n請選擇要刪除層的實體:")))
  14.                )
  15.              )
  16.       )
  17.     )
  18.     (progn
  19.       (setq ceng (getstring "\n請輸入要刪除的層名:"))
  20.     )
  21.   )
  22.   (setq        ss (ssget "X"
  23.                   (list (cons 8 ceng))
  24.            )
  25.   )
  26.   (if ss
  27.     (progn
  28.       (setq ll (sslength ss))
  29.       (princ (strcat ceng
  30.                      "\n圖層現有"
  31.                      (itoa ll)
  32.                      "個圖形實體,你確信要刪除該層嗎(Y/N)?"
  33.              )
  34.       )
  35.       (initget 1 "Yes No")
  36.       (if (= "Yes" (getkword))
  37.         (command "erase" ss "" "purge" "la" ceng "n")
  38.       )
  39.     )
  40.     (progn
  41.       (command "purge" "la" ceng "n")
  42.       (princ "\n該圖層沒有圖形實體!")
  43.     )
  44.   )
  45.   (princ)
  46. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 593个

财富等级: 财运亨通

发表于 2004-9-3 13:24:58 | 显示全部楼层
当块内实体含有要删除图层时,图块既不会被选上,图层也不会被Purge。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-9-3 13:46:02 | 显示全部楼层
可以修正口馬?另外這一個(princ (strcat ceng
                     "\n圖層現有"
                     (itoa ll)
                     "個圖形實體,你確信要刪除該層嗎(Y/N)?"
如何讓它預設為Y
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 11285个

财富等级: 富甲天下

发表于 2004-9-3 22:23:18 | 显示全部楼层

(initget 1 "Yes No")
      (if (= "Yes" (getkword))
        (command "erase" ss "" "purge" "la" ceng "n")
改为
(initget 0 "Yes No")
      (if (or (= "Yes"  (setq key (getkword))) (= key nil))
        (command "erase" ss "" "purge" "la" ceng "n")
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-21 11:54 , Processed in 0.176013 second(s), 40 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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