找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2760|回复: 4

[求助] [求助]:如何取得扩展数据里的项目?

[复制链接]
发表于 2005-6-19 11:01:59 | 显示全部楼层 |阅读模式

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

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

×
用(entget (car (entsel)) '("*"))可获得扩展数据,如何取得扩展数据里的项目呢?
比如获得的外部数据如下:
((-1 . <图元名: 7ef5f1f8>) (0 . "DIMENSION") (330 . <图元名:
7ef5dd08>) (5 . "204F") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "0")
(100 . "AcDbDimension") (2 . "*D1") (10 179.481 147.894 0.0) (11 136.395
152.894 0.0) (12 0.0 0.0 0.0) (70 . 32) (1 . "") (71 . 5) (72 . 1) (41 . 1.0)
(42 . 43.0853) (52 . 0.0) (53 . 0.0) (54 . 0.0) (51 . 0.0) (210 0.0 0.0 1.0) (3
. "$ BASE $") (100 . "AcDbAlignedDimension") (13 93.3099 172.148 0.0) (14
179.481 163.053 0.0) (15 0.0 0.0 0.0) (16 0.0 0.0 0.0) (40 . 0.0) (50 . 0.0)
(100 . "AcDbRotatedDimension") (-3 ("ACAD" (1000 . "DSTYLE") (1002 . "{") (1070
. 144) (1040 . 0.5) (1070 . 40) (1040 . 2.0) (1002 . "}"))))
如何取得“ACAD”后的部分呢?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2005-6-19 18:35:31 | 显示全部楼层
有興趣試一下這個。。
(defun hy_GetXData (vlaObj AppID / xType XData);;;;取得圖元擴展數據并列表
  (cond ((= (type vlaObj) 'ENAME) (SETQ vlaObj (vlax-ename->vla-object vlaObj)))
       ((= (type vlaObj) 'VLA-OBJECT) (SETQ vlaObj vlaObj))
       (t (setq olderror *error*)))
  (vla-getxdata vlaObj AppID 'xType 'xData)
  (mapcar '(lambda (key val) (cons key (VLAX-VARIANT-value val)))
          (vlax-safearray->list xType)
          (vlax-safearray->list xData)
          )
  )
參數vlaObj是需要提取的對象
    AppID是檢索地址,象你上面的哪個對象就是"ACAD"
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 0 反对 1

使用道具 举报

发表于 2005-6-19 12:07:06 | 显示全部楼层
对表的子项孙项不外乎用car cdr cadr nth之类的硬提,用member,用循环。。。

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

使用道具 举报

 楼主| 发表于 2005-6-19 12:27:36 | 显示全部楼层
ldata是什么东东啊?

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

使用道具 举报

发表于 2006-7-23 18:20:39 | 显示全部楼层
我也有同样的问题,楼主怎么解决的阿
能不能在arx代码中读取这样的扩展数据?
亟盼赐教
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-18 15:43 , Processed in 0.248811 second(s), 38 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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