- UID
- 289007
- 积分
- 0
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2005-7-6
- 最后登录
- 1970-1-1
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
//增加实体数据
for(pIter->start();!pIter->done();pIter->step())
//循环获得当前块表中的所有实体,并以ID为名给每个实体增加数据
{
AcDbObject *OSolid;
AcDbObjectId OSolidId;
double InR;
char appname[132];
long l;
l=OSolidId.asOldId(); //把实体的ID转化为long型
itoa(a,appname,10); //把long型转化为char型
ads_point st,ed;
struct resbuf *temp=NULL;
temp=OSolid->xData(appname);
if(temp==NULL)
{
temp=acutBuildList(AcDb::kDxfRegAppName,appname,
10,st,
11,ed,
40,InR,
0);
}
OSolid->setXData(temp);
OSolid->close();
acutRelRb(temp);
}
**************************************************
//获得实体数据
//获得颜色索引为100或200的实体的数据
for(pOIter->start();!pOIter->done();pOIter->step())
{
AcDbEntity *ent;
AcDbObjectId entId;
pOIter->getEntity(ent,AcDb::kForWrite);
if(ent->colorIndex()==100||ent->colorIndex()==200)
{
entId=ent->objectId();
float m;
char appname[132];
m=entId.asOldId();
itoa(m,appname,10);
struct resbuf *pRb;
pRb=ent->xData(appname);
………………
}
}
给块表中的所有实体增加数据,以每个实体的ID作为数据名,然后获得颜色索引为100跟200的实体的数据,为什么我得不到数据?每次pRb都是空的? |
|