找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1574|回复: 2

[求助] [求助]:如何用lisp删除。创建图层过滤器?

[复制链接]
发表于 2006-9-4 13:56:56 | 显示全部楼层 |阅读模式

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

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

×
如何用lisp删除。创建图层过滤器?
N千多个图层过滤器,每次打开图层管理器都要半天时间,烦死了!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 7234个

财富等级: 富甲天下

发表于 2006-9-4 15:57:33 | 显示全部楼层
http://discussion.autodesk.com/thread.jspa?messageID=1194782

(defun C:fildel        ()
  (vl-Load-Com)
  (vl-Catch-All-Apply
    '(lambda ()
       (vla-Remove
         (vla-GetExtensionDictionary
           (vla-Get-Layers
             (vla-Get-ActiveDocument
               (vlax-Get-Acad-Object)
             )
           )
         )
         "ACAD_LAYERFILTERS"
       )
     )
  )
  (princ "\nAll layer filters have been deleted.")
  (princ)
)



(defun c:filtrdel (/ names)
  (vl-Load-Com)
  (textscr)
  (princ
    (strcat  
      "\nRoutine to delete all but the specified Layer filters. "
      "When entering filter names to retain, wildcards are allowed. "
      "i.e., entering \"zz*,xx*\" will delete all filters "
      "except those beginning with zz and xx."
  ) )
  (setq names (getstring  "\nEnter filter names to retain, press Enter for none: "))
  
  (vl-Catch-All-Apply
    '(lambda ()
       (setq dicts (vla-GetExtensionDictionary
                     (vla-Get-Layers
                       (vla-Get-ActiveDocument
                         (vlax-Get-Acad-Object)
                       )
                     )
                   )
       )
       (vlax-for dict dicts
         (if (and (= (vla-get-name dict) "ACAD_LAYERFILTERS")
                  (> (vla-get-count dict) 0)
             )
           (progn
             (vlax-for filtr dict
               (if (not (wcmatch (vla-get-name filtr) names))
                 (vla-delete filtr)
               )
             )
           )
         )
       )
     )
  )
  (graphscr)
  (princ "\nSpecified layer filters have been deleted.")
  (princ)
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-9-4 16:38:17 | 显示全部楼层
http://www.theswamp.org/index.php?topic=7560.msg113739#msg113739
有个专门讨论这个的帖子和几个源码
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-18 11:36 , Processed in 0.415196 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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