找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1520|回复: 5

[LISP程序]:彻底删除属性块之属性

[复制链接]

已领礼包: 593个

财富等级: 财运亨通

发表于 2005-9-13 12:03:01 | 显示全部楼层 |阅读模式

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

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

×

  1. ;;删除块属性  eachy 2005.9.12 [[url]www.xdcad.net[/url]]
  2. ;;某些树的图块往往含有属性,在位编辑时不方便就写了这个程序
  3. ;;在Blockdef中ActiveX模型是找不到Seqend实体的,Block Insert后
  4. ;;SEQEND的硬所有者是Insert,按Autodesk解释这个SEQEND不随DXF保存
  5. ;;而且Seqend只能通过Entnext来得到,该Subentity 不能使用 entdel
  6. ;;或者 vla-delete
  7. (defun c:Delatt        (/ e el bn ss ent)
  8.   (if (and (setq e (car (entsel "\nPick Block with Att: ")))
  9.            (setq el (entget e))
  10.            (= (cdr (assoc 0 el)) "INSERT")
  11.            (assoc 66 el)
  12.       )
  13.     (progn
  14.       (setq bn (cdr (assoc 2 el)))
  15.       (vlax-for        x (vla-item
  16.                     (vla-get-blocks
  17.                       (vla-get-activedocument (vlax-get-acad-object))
  18.                     )
  19.                     bn
  20.                   )
  21.         (if (wcmatch (vla-get-objectname x) "*Att*")
  22.           (vla-delete x)
  23.         )
  24.       ) ;_删除Blockdef中的Attdef
  25.       (if (setq        ss (ssget "x"
  26.                           (list        '(0 . "insert")
  27.                                 (cons 2 bn)
  28.                           )
  29.                    )
  30.           ) ;_已插入的属性块中的属性必须单独删除
  31.         (progn
  32.           (setq        ssl (sslength ss)
  33.                 i   -1
  34.           )
  35.           (repeat ssl
  36.             (setq ent (ssname ss (setq i (1+ i))))
  37.             (entmake (vl-remove        (assoc 66 (entget ent))
  38.                                 (entget ent)
  39.                      )
  40.             ) ;_重新插入才能删除属性和SEQEND
  41.           )
  42.           (command ".erase" ss "")
  43.         )
  44.       )
  45.     )
  46.     (princ "\n所选实体非属性图块!")
  47.   )
  48.   (princ)
  49. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2006-5-24 16:05:48 | 显示全部楼层
晓东工具里好象有这样功能
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2015-7-15 16:34:23 | 显示全部楼层
(x-CleanCSet)版主公开这个函数吧

点评

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

使用道具 举报

已领礼包: 3199个

财富等级: 富可敌国

发表于 2015-7-15 18:36:58 | 显示全部楼层
P123ZX 发表于 2015-7-15 16:34
(x-CleanCSet)版主公开这个函数吧

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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-14 20:09 , Processed in 0.204551 second(s), 45 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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