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

problems with dxf reader
problems with dxf reader
hi all!
inspired from the sample program odreadex, i wrote a dxf reader. i took all the entities from the modelspace (i'm only interrested in that), then i apply worlddraw on each entity (given an instance of odgiworlddrawdumper as parameter which extends odgiworlddraw).
the dumper is associated to an instance of odgiworldgeometrydumper (extends odgiworldgeometry).
the implementations of odgiworldgeometrydumper calls a an instance of simplifier (which extends odgigeometrysimplifier) as much as possible. for exemple:
void odgiworldgeometrydumper::circle(...){ _simplifier->circleproc(...); }
odgiworlddrawdumper
the method odgiworldgeometrydumper:: draw(pdrawable) calls pdrawable->worlddraw(_worlddraw); where _worlddraw is the unique instance of odgiworldgeometrydumper.
i overloaded procpolygon and procpolyline in the simplifier to store the polygons.
results are shown in the file attached to this email (with 3d house sample). we see that the most obvious problem is that the roof of the house is displaced. i was thinking that it was because i did not implement pushmodeltransform and popmodeltransform. but even after implementing those (that is storing the matrix in a stack and multiplying my vertex by these matrix) it did not solve the problem. did i miss something?
also my second question is the following. for most entities in odgiworlddraw the correspongind entityproc is defined in odgigeometrysimplifier. but for some not. for example
* one of the definitions of: void odgiworlddraw::circulararc
* one of the definitions of: void odgiworlddraw::elliparc
* one of the definitions of: void odgiworlddraw::text
what shoud i do with those?
is it the right things of doing things?
thanks for any guidance.
cheers,
gregoire
ps:
to clarify my goal is to obtain a list of polygon/polyline from a dxf file. these data are used for scientific computation. therefore i am not a cad user and i possibly miss some concepts associated to this library. so please be indulgent!
attached images
hi,
1: it's definitely something wrong with pushmodeltransform()/popmodeltransform(), make sure that they are really called during vectorization and their implementations are correct.
2: all overloaded versions of odgiworlddraw::circulararc could be implemented to call single corresponding version odgigeometrysimplifier::circulararcproc(). the same for other primitives.
you'd better use odgibasevectorizer (or odgsbasevectorizedevice and odgsbasevectorizeview) as base implementation for your vectorizer. please, refer to odvectorizeex example for more details.
last edited by dmitry a. novikov; 22nd march 2007 at 04:54 amfff">.
hi!
thanks for the answer.
1. as you said this was related to the implementation of pushmodeltransform. this has been fixed by correcting the implementation of matrix multiplication (originally i used the method transformby of odgevector3d, with matrix xfm as parameter. replacing this by a manual matrix multiplication fixed the problem).
2. ok.
thanks again,
regards,
gregoire
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)
 


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

高级搜索
显示模式

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

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

相似的主题
主题 主题发起者 论坛 回复 最后发表
【转帖】oda 1.06 vs new 1.08 and 1.09 nls problem yang686526 DirectDWG 0 2009-05-06 06:50 PM
【转帖】german characters, export in dxf yang686526 DirectDWG 0 2009-05-05 11:13 AM
【转帖】dxf looks different from dwg yang686526 DirectDWG 0 2009-05-05 08:51 AM
【转帖】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


所有的时间均为北京时间。 现在的时间是 07:42 PM.


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