几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量  


返回   几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量 » 仿射空间:CAX软件开发(三)二次开发与程序设计 » CAD二次开发 » AutoCAD二次开发 » DirectDWG
用户名
密码
注册 帮助 会员 日历 银行 搜索 今日新帖 标记论坛为已读


 
 
主题工具 搜索本主题 显示模式
旧 2009-05-04, 04:35 PM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 【转帖】bad dxf file or a bug in 1.14.02

bad dxf file or a bug in 1.14.02?
bad dxf file or a bug in 1.14.02?
when running the 1.14.02 odamfcapp or odreadex examples with the attached dxf file (which contains lots of 3d solids), i'm getting an exception thrown from source\acisbuilder\abfile.cpp (line #341). some other files with 3dsolids do work error-free, so maybe it's just the file itself.
the problem seems to be related to my use of modelergeometry class.
the file does successfully open without any obvious problems in acad 2006.
here's the stack trace...
msvcr71d.dll!_nmsg_write(int rterrnum=10) line 195 c
msvcr71d.dll!abort() line 44 + 0x7 c
> msvcr71d.dll!_assert(const char * expr=0x00bef550, const char * filename=0x00bef530, unsigned int lineno=341) line 306 c
odreadex.exe!defaultassert(const char * expr=0x00bef550, const char * filename=0x00bef530, int nline=341) line 60 + 0x14 c++
odreadex.exe!odassert(const char * expresssion=0x00bef550, const char * filename=0x00bef530, int nlineno=341) line 83 + 0x14 c++
odreadex.exe!acis::file::importab(acis::auxstreami n * pstm=0x0119e128, bool bcheckformultiplebodies=true) line 341 + 0x26 c++
odreadex.exe!acis::file::import(acis::auxstreambuf odin * pstream=0x0012f63c, bool bstandardsaveflag=true, bool bcheckformultiplebodies=true) line 300 + 0x15 c++
odreadex.exe!acis::file::in(odstreambuf * pbuf=0x0012f780, int * typever=0x00000000, bool bstandardsaveflag=true, bool bcheckformultiplebodies=true) line 561 + 0x14 c++
odreadex.exe!odmodelergeometrycreatorimpl::createm odeler(odarray<odsmartptr<odmodelergeometry>,odobj ectsallocator<odsmartptr<odmodelergeometry> > > & out={...}, odstreambuf * pstreamin=0x0012f780, bool bstandardsaveflag=true) line 868 + 0x1b c++
odreadex.exe!odmodelergeometryondemand::switchtomo deler() line 174 + 0x27 c++
odreadex.exe!odmodelergeometryondemand::worlddraw( odgiworlddraw * pwd=0x0012f8d0, unsigned long geomtype=1) line 96 c++
odreadex.exe!oddbmodelergeometryimpl::worlddraw(od giworlddraw * pwd=0x0012f94c) line 1584 + 0x49 c++
odreadex.exe!oddb3dsolid::worlddraw(odgiworlddraw * pwd=0x0012f94c) line 84 c++
odreadex.exe!odgifastextcalc::draw(const odgidrawable * pdrawable=0x0114d2e0) line 38 + 0x14 c++
odreadex.exe!getobjectextents<odgifastextcalc>(con st oddbobject * pthis=0x0114d2e0, odgeextents3d & extents={...}) line 510 c++
odreadex.exe!oddbentity::getgeomextents(odgeextent s3d & extents={...}) line 1542 + 0xd c++
odreadex.exe!oddbblocktablerecord::getgeomextents( odgeextents3d & extents={...}) line 1773 + 0x7f c++
odreadex.exe!dbdumper::dumpblocks(std::basic_ostre am<char,std::char_traits<char> > & os={...}, oddbdatabase * pdb=0x0112ba48, int indent=1) line 2141 + 0x25 c++
odreadex.exe!dbdumper::dump(std::basic_ostream<cha r,std::char_traits<char> > & os={...}, oddbdatabase * pdb=0x0112ba48, int indent=0) line 2411 c++
odreadex.exe!main(int argc=2, char * * argv=0x01106500) line 189 c++
odreadex.exe!maincrtstartup() line 398 + 0x11 c
----edited---------
here's more....
in odamfcapp, when i choose any of the 3dsolid objects and then "save sat info to..", the acis data that then appears in the dialog is only the header! i double-checked and this worked ok in 1.14.01 - i could see the entire sat file there!
attached files
the problem is not in your code.
1. the file is not absolutely correct. autocad while opening it gives message "cannot restore object from shapemanager representation"
2. the second problem is in dwgdirect - it fails to render the rest of drawing having come across invalid object.
btw, the problem goes away after recovering or auditing the file in autocad.
sergey slezkin
sergey,
but it seems strange to me that it worked fine in 1.14.01. obviously there is some change (in the modelergeometry:: class??) in 1.14.02. how can i feel confident about other files containing solids?
sometimes regressions happen. i hope this one effects only incorrect files.
sergey slezkin
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)
 


主题工具 搜索本主题
搜索本主题:

高级搜索
显示模式

发帖规则
不可以发表新主题
不可以回复主题
不可以上传附件
不可以编辑您的帖子

vB 代码开启
[IMG]代码开启
HTML代码关闭

相似的主题
主题 主题发起者 论坛 回复 最后发表
【转帖】arrow definition of leader in dxf file yang686526 DirectDWG 0 2009-05-04 04:12 PM
【转帖】access violation loading dxf file yang686526 DirectDWG 0 2009-05-04 03:30 PM
【转帖】problem importing dxf file in sw2008 sp 4.0 - but no problem yang686526 SolidWorks二次开发 0 2009-04-13 01:34 PM
【转帖】create dxf macro yang686526 SolidWorks二次开发 0 2009-04-13 10:00 AM
【转帖】auto create 11 flat pattern and save as dxf yang686526 SolidWorks二次开发 0 2009-04-13 09:08 AM


所有的时间均为北京时间。 现在的时间是 08:47 AM.


于2004年创办,几何尺寸与公差论坛"致力于产品几何量公差标准GD&T | GPS研究/CAD设计/CAM加工/CMM测量"。免责声明:论坛严禁发布色情反动言论及有关违反国家法律法规内容!情节严重者提供其IP,并配合相关部门进行严厉查处,若內容有涉及侵权,请立即联系我们QQ:44671734。注:此论坛须管理员验证方可发帖。
沪ICP备06057009号-2
更多