明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1281|回复: 1

[提问] 关于块的几个编程问题,求解答

[复制链接]
发表于 2013-10-16 09:51:07 | 显示全部楼层 |阅读模式
最近在编写与块相关的程序时,发现了个问题,一直无法解决,求大神解答:
问题描述:块定义对象(注意,不是块引用)无法添加到选择集中,代码如下:
(vl-load-com)
(setq DOC (vla-get-ActiveDocument (vlax-get-acad-object)))
(setq BLOCK (vla-item (vla-get-Blocks DOC) (vla-get-Name (vlax-ename->vla-object (car (entsel))))));;取得块定义
(setq ActSS (vla-get-ActiveSelectionSet DOC));;取得当前选择集
(vlax-for ITEM BLOCK (setq ENTLST (append ENTLST (list ITEM))));;取出所有块内图元
(setq SafeDIM (vlax-make-safearray vlax-vbObject (cons 0 (- (length ENTLST) 1 ))));;创建安全数组
(vlax-safearray-fill SafeDIM ENTLST);;用块内图元填充安全数组
(vlax-invoke-method ActSS 'AddItems (variant SafeDIM));;向选择集添加,此处有异常
;;注,如果不是块内的图元,则是成功的,块内的图元与非块内图元的差别就是OwnerID属性不同
(vlax-invoke-method DOC 'WBlock "FILENAME" ActSS);;写块至文件







发表于 2013-10-17 11:14:11 | 显示全部楼层
全是vl函数,头晕,
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-26 07:52 , Processed in 0.197671 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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