opencascade读取iges并用vtk离散的一些问题

最近抽时间在弄iges文件内容读取的工作,然后将其离散化在vtk中可以显示处理以及后续的一些工作,主要目的是识别CAD文件导出的模型,然后进行离散处理,方便后续的处理。离散工作比较简单,opencascade里面的brepmesh直接支持将topoDS_shape类型的模型按照设置的精度要求离散成三角网格。目前面临的主要问题是,用opencascade里面的igesreader函数,参照dataexchange里面的例子来读取iges文件里面的模型的时候,遇到了几个问题,第一就是参考面也识别了,第二曲面没有裁剪。

1.用sample里面自带的import函数导入iges的结果如下:

opencascade读取iges并用vtk离散的一些问题_第1张图片

问题非常明显。


2.导入vtk中离散三角网格显示如下:

opencascade读取iges并用vtk离散的一些问题_第2张图片

opencascade读取iges并用vtk离散的一些问题_第3张图片

这样显示更难看出问题所在。


昨天在群里面跟大家讨论交流学习之后,感谢eryar的帮助(ps:他的关于opencascade的blog写的很不错的http://www.cnblogs.com/opencascade/),发现其实用draw test harness里面的igesread可以很好的显示iges的结果,具体怎么处理的还得继续研究,这里主要说说怎么显示吧:

1.打开draw test harness:

opencascade读取iges并用vtk离散的一些问题_第4张图片

2.设置绘制界面

opencascade读取iges并用vtk离散的一些问题_第5张图片

3.读入模型

opencascade读取iges并用vtk离散的一些问题_第6张图片


最终结果显示为:

opencascade读取iges并用vtk离散的一些问题_第7张图片

这个跟其他专业cad软件导入的结果是一模一样的。


所以,后续主要任务,找到igesread源码,弄清楚怎么处理过程,从而才能够解决读取的问题。


当然,如果有知道怎么解决的,能够帮忙解决那就非常感谢。有感兴趣的,也可以交流讨论。

你可能感兴趣的:(CAD,OpenCascade,VTK,离散显示,iges)