明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 391|回复: 0

[讨论] 提取外部引用中块属性的问题?

[复制链接]
发表于 2022-6-20 15:13:58 | 显示全部楼层 |阅读模式
本帖最后由 wharan 于 2022-6-24 19:39 编辑

提取外部引用中属性块的属性,用下面方法还存在几个问题。

1、大部分情况下能提取出来,有些情况下无法提取,但打开引用文件提取没有问题。原因不明。
2、删除外部引用时,清理数据后,仍能提取到被删除的引用中的块属性。原因不明。
附提取方法源码。
该问题已通过Lisp方法解决。见本坛
  1. ;;en为外部引用图元名,Bname为外部引用中的属性块名,返回属性快图元名表
  2. (defun Xrefblk (en Bname / blks BlockName obj ty ent)
  3.   (setq        blks (vla-get-Blocks
  4.                (vla-get-activedocument (vlax-get-acad-object))
  5.              )
  6.   )
  7.   (setq obj (vlax-ename->vla-object en))
  8.   (setq        BlockName (vla-get-name obj)
  9.   )
  10.   (vlax-for ent        (vla-item blks BlockName)
  11.     (setq ty (vla-get-objectname ent))
  12.     (if
  13.       (and (= ty "AcDbBlockReference")
  14.            (wcmatch (vla-get-EffectiveName ent) Bname)
  15.       )
  16.        (setq sset (cons (vlax-vla-object->ename ent) sset))
  17.     )
  18.   )
  19.   sset
  20. )



"觉得好,就打赏"
还没有人打赏,支持一下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-9-29 17:38 , Processed in 0.255245 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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