- UID
- 6238
- 积分
- 291
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2002-6-9
- 最后登录
- 1970-1-1
|
发表于 2006-1-14 22:43:55
|
显示全部楼层
void test(void)
{
char str[22];
strcpy(str,"AAA999");
addApp(str);
ads_point c0;
AcDbObjectId id;
struct resbuf *t0;
AcDbEntity *pE;
ads_name en;
float a[20][3],a0[20][3];
int i,j;
if(ads_entsel("\n选择实体:",en,c0)!=RTNORM) return;
if(acdbGetObjectId(id, en)!=Acad::eOk) return ;
if(acdbOpenObject(pE, id, AcDb::kForWrite)!=Acad::eOk) return ;
ads_binary b,b0;
for(i=0;i<20;i++){
for(j=0;j<3;j++){
a[j]=(float)10*(i+j);
}
}
b.buf=(char*)&a;
b.clen=sizeof(a);
ads_printf("\n%d",b.clen);
t0=ads_buildlist(
-3,
1001,str,
1070,j,
1004,&b,
1070,j,
0);
pE->setXData(t0);
pE->close();
ads_relrb(t0);
struct resbuf *lent,*tent;
if(acdbOpenObject(pE, id, AcDb::kForRead)!=Acad::eOk) return ;
lent=pE->xData(str);
pE->close();
tent=lent;
tent=tent->rbnext;
tent=tent->rbnext;
b0=tent->resval.rbinary;
memcpy(a0,b0.buf,b0.clen);
for(i=0;i<20;i++){
for(j=0;j<3;j++){
ads_printf("\n%d %d %lf",i,j,a0[j]);
}
}
ads_relrb(lent);
}
经测试,ads_binary中的clen不能大于255字节 |
|