liudaoshan 发表于 2004-2-25 15:20:00

如何用Arx讀取Vlisp中vlax-ldata-put寫入的數據,如何用Arx寫入與在Vlist中用vlax-l

如何用Arx讀取Vlisp中vlax-ldata-put寫入的數據,如何用Arx寫入與在Vlist中用vlax-ldata-put寫入一樣的數據如何用Arx讀取Vlisp中vlax-ldata-put寫入的數據,如何用Arx寫入與在Vlist中用vlax-ldata-put寫入一樣的數據<BR>

goldenshin 发表于 2004-2-27 10:22:00

1. 关于用Arx读数据,


两种情况,一种是对实体上的LDATA, 可以用读Xdata的办法. 主要的问题是你要展开来. 比如碰到RTENAME, 你就要用一个ads_name 来表示


如ename=rb-&gt;resval.rlname


ename=rb-&gt;resval.rlname


然后再打开ename, 在读ename的扩展数据.


可以用递归来读.


=============


如果是词典类的数据,在Arx中打开词典,进行匹配后, 最后用


acdbentgetX()可一得到一个resbuf


2. 反过来我没做过.


3.两个问题, Arx 读Data和Lisp里的LData不是100%兼容. 当LData太多时,       acdbentgetX()会失效. 我在Autodesk的网站上问过,对方只是说本来就不是100% 正确,但不知道原因.


第二个问题是,对于有些数据, 如果不依赖实体的,在AutoCAD2004以后,建议使用Table类等. 结构上有点象普通的容器类,对一些规律性强的情况下用起来比resbuf更加方便.
页: [1]
查看完整版本: 如何用Arx讀取Vlisp中vlax-ldata-put寫入的數據,如何用Arx寫入與在Vlist中用vlax-l