乐筑天下

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

怎样用VisualLisp 对由objectx程序创造的实体对象附加扩展数据?

[复制链接]

30

主题

54

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2003-9-28 01:22:00 | 显示全部楼层 |阅读模式
怎样用VisualLisp 对由objectx程序创造的实体对象附加扩展数据?
回复

使用道具 举报

26

主题

3072

帖子

10

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3177
发表于 2003-9-28 09:07:00 | 显示全部楼层
一个简单的例子:
(vl-load-com)
(defun c:test( / ss ename vname datatype data)
  (setq ss (ssget))
  (setq ename (ssname ss 0))
  (setq vname (vlax-ename->vla-object ename))
  (setq datatype (vlax-make-safearray vlax-vbInteger '(0 . 1)))
  (vlax-safearray-fill datatype '(1001 1000))
  (setq data (vlax-make-safearray vlax-vbvariant '(0 . 1)))
  (vlax-safearray-fill data '("hello" "abc"))
  (vla-setxdata vname datatype data)
  (princ)
)
回复

使用道具 举报

30

主题

54

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2003-9-28 10:01:00 | 显示全部楼层
执行完(vla-setxdata vname datatype data)后,怎么返回的是nil值啊,也就是扩展数据没有被加进去
回复

使用道具 举报

26

主题

3072

帖子

10

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3177
发表于 2003-9-28 10:06:00 | 显示全部楼层
扩展数据是加入到对象中去的,不是返回到哪个变量的,
你用(entget (car (entsel)) '("hello"))查看一下对象不就知道有没有加入了吗?
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-5 13:39 , Processed in 0.688229 second(s), 60 queries .

© 2020-2025 乐筑天下

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