乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 105|回复: 11

[编程交流] VLA创建块定义an

[复制链接]

8

主题

38

帖子

30

银币

初来乍到

Rank: 1

铜币
40
发表于 2022-7-5 15:35:28 | 显示全部楼层 |阅读模式
我好像被卡住了。。
梳理了所有文档和谷歌搜索。。。
 
我错过了什么?
似乎无法将对象添加到我的块定义中。。。
 
vl load com已加载
已加载ActiveDocument。。。
Acad对象已加载。。。
 
  1. (setq fax (vlax-ename->vla-object far)) ;returns #<VLA-OBJECT IAcadSolid 0000024d51846d98>
  2. (setq blk (vla-get-Blocks doc)) ;returns #<VLA-OBJECT IAcadBlocks 0000024d3ecb3a38>
  3. (setq fab (vla-Add blk fpa "_ClosedFilled")) ;returns #<VLA-OBJECT IAcadBlock 0000024d37310cf8>
  4. (setq fax (vla-CopyObjects doc fax fab)) ;returns nothing!!!!????

 
你的想法?。。。。。。。。。。。。
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-5 15:44:36 | 显示全部楼层
一个答案首先去谷歌https://www.cad-notes.com/how-to-add-objects-in-your-drawing-into-an-autocad-block/
回复

使用道具 举报

8

主题

38

帖子

30

银币

初来乍到

Rank: 1

铜币
40
发表于 2022-7-5 15:49:22 | 显示全部楼层
我跟踪了你的链接BIGAL。。。一直到李·麦克的“AddObjectstoBlock”Lisp程序。。。。我在他的例程中看到了类似的语法:
 
(vla CopyObjects(ActiveDoc变量)(要添加的对象列表)(块参照名称))
 
我还是不明白为什么我的不能用。。。我在想,可能是实体变量或块引用变量的形式不正确。。。也许我无法添加从“vlax ename->vla object x”获得的单个实体。。。可能它需要一个选择集数组。。。也许它在添加对象之前需要一些其他信息。。。。我不知道。。。
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-5 15:54:00 | 显示全部楼层
你好
 
为了避免安全数组,只需使用vlax调用,此外还需要将vla对象作为列表。
 
  1. (vlax-invoke doc 'CopyObjects (list fax) fab)
回复

使用道具 举报

8

主题

38

帖子

30

银币

初来乍到

Rank: 1

铜币
40
发表于 2022-7-5 15:59:43 | 显示全部楼层
哦!哇!我花了一整天的时间旋转轮子。。谢谢Tharwat。。。我会试试看,然后回来汇报。。。。
 
有趣的是,我也尝试过这种方法,但没有列出。。相同零。。
 
所以我想说清楚。。。第一种方法确实需要一个安全的对象数组?安全阵列也可以包含单个对象吗?仅供将来参考。。。
 
谢谢你们!
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-5 16:04:15 | 显示全部楼层
不客气。
 
当然,请查看以下内容,以供您参考,其中包含单个对象(而不是已婚对象)。
  1. (setq safe (vlax-make-safearray vlax-vbObject '(0 . 0)))
  2. (vlax-safearray-put-element safe 0 fax)
  3. (vla-CopyObjects doc safe fab)
回复

使用道具 举报

66

主题

1552

帖子

1514

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
325
发表于 2022-7-5 16:08:35 | 显示全部楼层
我总是忘记这些方法有时需要安全数组。。。
让我想,在任何地方都需要变量类型的参数吗?因此,人们将被迫使用vlax make variant函数。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 16:17:36 | 显示全部楼层
下面是一个现有示例:
http://www.theswamp.org/index.php?topic=45643.msg508166#msg508166
回复

使用道具 举报

66

主题

1552

帖子

1514

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
325
发表于 2022-7-5 16:24:05 | 显示全部楼层
 
Veery nice,与此相结合,可以将要预览的选择集存储在DCL中。
回复

使用道具 举报

8

主题

38

帖子

30

银币

初来乍到

Rank: 1

铜币
40
发表于 2022-7-5 16:25:00 | 显示全部楼层
很好(-3.2)塔尔瓦特:哈哈:有些物体还没准备好安顿下来。。。
 
它起作用了。。。真是太棒了!泰!
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-31 01:08 , Processed in 0.452461 second(s), 73 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表