几何尺寸与公差论坛------致力于产品几何量公差标准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-06, 07:53 PM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 【转帖】oddbmlinestylesetname and invalid input exceptions

oddbmlinestyle::setname and invalid input exceptions
oddbmlinestyle::setname and invalid input exceptions
using version 2.1.1 .net 2003
i've found that strings either containing space or with a length over 31 chars will raise an 'invalid input' exception in oddbmlinestyle::setname.
but nowhere can i find this behaviour documented nor any information about what the valid range for setname is.
the dxf 2007 documentation for mlinestyle states that:
"the 2 group codes in mline entities and mlinestyle objects are redundant fields. these groups should not be modified under any circumstances, although it is safe to read them and use their values."
does that mean it's safe to create new oddbmlinestyle objects without setting the name member?
or is dxf group code 2 only redundant in certain versions of the dxf/dwg file format and thus still needed?
the rules for naming multiline styles are autocad's not dd restrictions. btw, they are not described in ac docs too but create multiline style dialog in autocad does not allow spaces in name or more than 32 characters. this is strange because other named objects do not have such restrictions in latest ac versions.
new mstyle objects must have names.
"redundant" and "should not be modified" - this is about entget - entmod functions which work with dxf-like resbuf. not about dxf/dwg file.
this means that group code 2 data can be read/used in resbuf chain obtained from entget(). but it can't be modified before passing the data back to entmod().
sergey slezkin
i've found that autocad and dwgdirect will limit user input to 31 chars and prevent the use of a large set of characters among them space.
but the problem is that drawings from customers might contain mlinestyle names that violate these rules.
i've got no idea how they can end up with drawings with style names that violate this limit as i can't find any way of causing this inside autocad. but even with these errors the drawing works just fine both in autocad and dwgdirect.
not a real problem but this means i can't create a drawing with the same data as the input drawing.
i've only seen one drawing with this problem, so i'm not going to be loosing any sleep over this. just a little curious about the real limits.
one of the offending style names is 'plan 120061004modified$0$standar' 32 chars and containing a space so it has two errors making it an invalid name. right now i can read the name and use the style but i can't create one like it.
quote:
but even with these errors the drawing works just fine both in autocad and dwgdirect.
have you tried all possible operations in autocad and objectarx? it's very strong statement that it works fine...
i don't know what problem may happen (during dragging a mline object referencing such style from one drawing to another or during lisp executing) but it's more safe to not create an object which can't be created in autocad.
sergey slezkin

that's entirely true, and creating names known to be invalid is a bad idea.
but the quality of data in dwg drawings vary a lot. they frequently contain data that can't be constructed through the autocad ui but rather must have been created by extensions/customisation inside autocad or external sources.
so i find the limitations in the autocad ui a rather unreliable guide as to what the true limits are. that's why i came here looking in for help on this issue in the first place.
i don't want the possibility to create possibly invalid data just confirmation that this is invalid data. and i think that's quite clear now, thanks.
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)
回复


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

高级搜索
显示模式

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

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

相似的主题
主题 主题发起者 论坛 回复 最后发表
【转帖】invalid input while hatching a polyline yang686526 DirectDWG 0 2009-05-06 04:08 PM
【转帖】invalid input exception yang686526 DirectDWG 0 2009-05-06 04:07 PM
【转帖】invalid input exception with oddbellipse yang686526 DirectDWG 0 2009-05-06 04:07 PM
【转帖】invalid input error yang686526 DirectDWG 0 2009-05-06 04:06 PM
【转帖】invalid input error in oddbgsmanagersetupactivelayoutvie yang686526 DirectDWG 0 2009-05-06 04:06 PM


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


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