|
高级会员
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
|
【转帖】arx数据库操作求助
arx数据库操作求助
arx数据库操作求助
//
// objectarx defined commands
#include "stdafx.h"
#include "stdarx.h"
#include "dbsymtb.h"
#include "dbents.h"
// this is command 'createdwg'
void defcreatedwg()
{
acdbdatabase *pdb=new acdbdatabase();
acdbblocktable *pbtbl;
pdb->getsymboltable(pbtbl,acdb::kforread);
acdbblocktablerecord *pbtblrcd;
pbtbl->getat(acdb_model_space,pbtblrcd,
acdb::kforwrite);
pbtbl->close();
acdbcircle *pcir1=new acdbcircle(acgepoint3d(1,1,1),
acgevector3d(0,0,1),
1.0),
*pcir2=new acdbcircle(acgepoint3d(4,4,4),
acgevector3d(0,0,1),
2.0);
pbtblrcd->appendacdbentity(pcir1);
pcir1->close();
pbtblrcd->appendacdbentity(pcir2);
pcir2->close();
pbtblrcd->close();
pdb->saveas("test1.dwg");
delete pdb;
}
// this is command 'readdwg'
void defreaddwg()
{
acdbdatabase *pdb=new acdbdatabase(adesk::kfalse);
pdb->readdwgfile("test1.dwg");
acdbblocktable *pblktbl;
pdb->getsymboltable(pblktbl,acdb::kforread);
acdbblocktablerecord *pblktblrcd;
pblktbl->getat(acdb_model_space,pblktblrcd,acdb::kforread);
pblktbl->close();
acdbblocktablerecorditerator *pblktblrcditr;
pblktblrcd->newiterator(pblktblrcditr);
acdbentity *pent;
for(pblktblrcditr->start();!pblktblrcditr->done();pblktblrcditr->step())
{
pblktblrcditr->getentity(pent,acdb::kforread);
acutprintf("classname: %s\n",
(pent->isa())->name());
pent->close();
}
pblktblrcd->close();
delete pblktblrcditr;
delete pdb;
}
进入autocad2 读取arx执行readdwg出现
未处理的异常c0000005,地址653f88a6h
下载次数:0
8-10-19 04:12 pm
|