查看单个帖子
旧 2009-05-06, 10:19 PM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 【转帖】possible bug with r14 and dwgdirect 1.1

possible bug with r14 and dwgdirect 1.1
possible bug with r14 and dwgdirect 1.1
i have a set of r14 drawings that seem to behave oddly when using some of
my dwgdirect routines with them. i'll take one for example. this one file has
two xrefs. they are overlaid. when i use the code snippet attached to find
these references, pnode->isnested() returns true for both references
always. but they are not nested. they are attached (overlaid) to the drawing,
not an xref.
similar routines in arx do not behave this way. isnested() returns false for both
xrefs.
please see the attached txt file. if i need to provide more info about the drawing
or code, let me know. thanks a ton!
the drawing is attached as well.
attached files
i have rebuilt with the latest and greatest dwgdirect and the problem still
exists. i am really at a loss here. the code i wrote in arx to see if the behavior
was similar really isn't an apples to apples comparison. autocad 2002 had the
drawing loaded and i was working with it via that.
when i save the drawing from r14 to r2000 using autocad 2002, my code and
thus the dwgdirect libraries behave as expected.
was there something different in r14? can i not use the oddbxrefgraph objects
with r14?

you came across dd bug with loading pre-r15 files. it will be fixed in next release.
as temporary work around you can load such files by recoverfile() or call audit() after loading. audit fixes the problem and recoverfile() calls audit().
sergey slezkin
thanks sergey. i appreciate it. i will try the work around. how close are you guys to another release?
next release is planned for mid to late may.
sergey slezkin
fyi - work around for my application.
//assuming pdb points to a valid database with an r14 drawing loaded.
enum oddb::dwgversion fileversion;
fileversion=pdb->originalfileversion();
if (fileversion == oddb::kdhl_1014)
{
aauditinfo.setfixerrors(true);
pdb->auditdatabase(&aauditinfo);
}
to take care about other versions it would be better:
if (fileversion <= oddb::kdhl_1014)
sergey slezkin
that's true. thanks a lot!
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)