新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于InterOp拓展SolidWorks数据接口

基于InterOp拓展SolidWorks数据接口

作者:时间:2013-04-07来源:网络收藏
1.引言

3D模型数据的转换是具有不同数据格式的应用程序在实际应用中不可避免的问题。一个项目可能是由多种CAD造型软件构造;专业的CAM、CAE软件需要读入不同的模型数据;PDM/PLM等软件需要直接浏览、管理不同的CAD产生的数据等,构成了数据转换的强烈需求。

Solidworks自1995年问世以来,其优异的性能、易用性和创新性,极大地提高了机械设计工程师的设计效率,在与同类软件的激烈竞争中已经确立了它的市场地位,成为三维机械设计软件市场的公认标准,在航空、航天、铁道、兵器、电子、机械等领域拥有广泛的用户。其原因之一就是该软件的插件之多是其余CAD软件无法相比的,如:COSMOSWorks,FeatureWorks,PhotoWorks等,满足了不同用户多样性的需求。

Solidworks对CATIA V5数据的支持在国际上已有多种解决方案,如:Formatworks、CAT5Works等,但此类插件在市场上定位的价格较高,从某种程度上制约了国内大部分中小型企业的使用。笔者从应用需求出发,利用Spatial公司的组件——开发了V5Works这一插件,可以为Solidworks提供比较完善的CATIA V5,同时可以节约接口软件购买的费用,为与CATIA V5之间的数据转换建立良好的接口通道,实践证明这是一种行之有效的解决方法。

2.开发环境的选择

美国Spatial公司开发的组件能够对市场上流行的3D格式如:CATIA V5、CATIA V4、IGES、STEP、VDA-FS、Pro/E、Parasolid、UG、Solidworks、Inventor和ACIS等进行准确和透明的转换,不仅支持包括实体、曲面和线框等几何和拓扑信息的转换,而且包括层、坐标系、工作平面、颜色属性、名称以及装配关系等系统环境或属性信息,可以满足用户的多种需要。

Solidworks中提供了一系列的API函数,从界面到零件、装配件和工程图三种工作平台下信息的提取都提供了很好的接口,支持多种编程语言。Solidworks中集成的宏程序功能,使得利用VBA或者VB进行二次开发时尤为方便。所开发出来的插件可以与Solidworks很好的集成使用,满足用户各种不同的专业需求,减少了设计时间,提供了工作效率。

组件是基于VC环境下进行编程,因此开发的插件选择在VC++6.0的环境下编译调试。使用C++进行的二次开发相对VB来说比较复杂,但开发插件的稳定性以及扩展方面有比较大的优势。

V5Works插件是基于InterOp R16在Solidworks 2006的平台上使用Visual C++ 6.0开发完成的。经过笔者的测试,可以与Solidworks 2006的无缝集成,并实现数据转换的工作要求。

3.零件模型数据的转换

实现中读取CATIA V5的数据,可以将CATIA V5格式直接转换成Solidworks的格式,但InterOp这个组件中没有直接在这两种数据间的转换接口,因此需要一种中间格式来实现此类转换。

SAT数据格式可以是这个理想的中间格式。首先利用InterOp的数据接口将CATIA V5的数据转换为SAT数据,这个转换可以保证转换的成功率和精度,满足任何级别用户的需要。SolidWorks内部的转换接口支持SAT文件的读入,最后一步是将读入的SAT文件转换为SolidWorks的数据格式,如图1所示,从而实现CATIA V5文件的读取。

newmaker.com

V5Works这一插件所要做的工作首先是在Solidworks中添加读取CATIA V5的接口,即在文档打开的对话框中支持CATIA V5的格式;其次是将InterOp集成到V5Works的插件中,实现CATIA V5向SAT数据的转换;最后利用SolidWorks所提供的API,将读入的SAT文件转换为SolidWorks的格式保存,同时删除所产生的SAT临时文件。

上一页 1 2 下一页

评论


相关推荐

技术专区

关闭