三维cad与bom管理系统的接口研究_产品创新数字化(plm)_cad_2122

三维cad与bom管理系统的接口研究_产品创新数字化(plm)_cad_2122

ID:13724076

大小:37.50 KB

页数:10页

时间:2018-07-24

三维cad与bom管理系统的接口研究_产品创新数字化(plm)_cad_2122_第1页
三维cad与bom管理系统的接口研究_产品创新数字化(plm)_cad_2122_第2页
三维cad与bom管理系统的接口研究_产品创新数字化(plm)_cad_2122_第3页
三维cad与bom管理系统的接口研究_产品创新数字化(plm)_cad_2122_第4页
三维cad与bom管理系统的接口研究_产品创新数字化(plm)_cad_2122_第5页
资源描述:

《三维cad与bom管理系统的接口研究_产品创新数字化(plm)_cad_2122》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、三维CAD与BOM管理系统的接口研究_产品创新数字化(PLM)_CAD   随着制造业对CAD技术的广泛应用,相应地CAD设计信息也越来越庞大,对这些设计信息的管理成为迫切的任务。目前流行的BOM(BillOfMaterial)管理为企业的这种信息管理提供了很好的解决方案。CAD与BOM管理系统间的信息传递和反馈是解决问题的前提条件。   1BOM管理简介   BOM是产品结构的关系表述,而BOM管理是产品数据组织与管理的一种形式,它以数据库为底层支持,以BOM表为其组织核心,把定义最终产品的所有工程数据和文档联系起来,实现产

2、品数据的组织、管理和控制,并在一定目标或规则约束下,向用户或应用系统提供产品结构不同视图的描述。   2BOM接口的开发   BOM接口是在CAD支撑软件的基础上进行二次开发,实现CAD与BOM管理系统信息集成的软件模块。主要包含两方面的功能,首先是BOM管理系统与CAD软件之间的产品信息传递、反馈功能;其次是编码功能。   2 .1BOM管理系统与CAD的信息传递    图1是BOM系统与CAD的产品信息传递流程。BOM接口的工作过程是:CAD设计人员从三维CAD装配图中抽取BOM信息保存到数据库中,使CAD中的设计信息能够

3、被BOM管理系统识别和处理,并将处理后的信息反馈给设计者。BOM管理系统是从属于PDM的一个子系统。   2-1-1装配树的遍历算法   三维CAD是以树型结构组织装配中的组件和零件,而在数据库中则通过记录装配树各组成结点间的父子关系、兄弟关系来保存BOM树结构。因此,BOM管理功能模型中,诸如BOM的存储、读取、查询、配置、比较等都离不开树的遍历,可以说树的遍历是BOM管理最基本、最关键的算法,它的优劣直接关系到软件的运行效率。   对装配树的遍历通常有两种方法:广度遍历和深度遍历。   2-1-1-1广度遍历   装配树的

4、广度遍历是按照先兄后子的顺序进行的,即先对装配树中同一层次搜索完成后,再对同一层上的每个结点进行同一层的子项搜索。   2-1-1-2深度遍历   图2为深度遍历的逻辑流程图,装配树的深度遍历是按照先子后兄的顺序进行的,即先对装配树中每一结点判断是否有子项,直至子项为空,即到达终端结点;再对终端结点判断是否有兄弟项,若有兄弟项存在,对兄弟项结点继续套用搜索子项的方式,把兄弟项结点看作父结点;若无兄弟项存在,则返回父项层,判断父项的兄弟项是否存在,套用上述搜索兄弟的方式,直到最顶级的根结点。   以SolidWorks为例,遍历

5、过程的部分代码如下:   (1)得到装配图中装配树的根:HRESULTres=S_OK;LPCONFIGURATIONpConfiguration=NULL;LPMODELDOCpModelDoc=NULL;LPCOMPONENTpRootComponent=NULL;longRecurseLevel=0;LPSLDWORKSpTemp=TheApplication->GetSWApp();respTemp->get_IActiveDoc(&pModelDoc);if(S_OK!=resûûpModelDoc==NULL)re

6、turn;if(pModelDoc->IGetActiveConfiguration(&pConfiguration)==S_OK){pConfiguration->IGetRootComponent(&pRootComponent);}⋯⋯   (2)从装配树根开始,对装配树进行遍历,部分代码如下:intTraverseChildren(longRecurseLevel,LPCOMPONENTpComponent){LPCOMPONENT3pChildren=NULL;intnChildren=0;HRESULThres=S

7、_OK;BSTRName;hres=pComponent->get_Name(&Name);g_JianHaoArray1Add(Name);⋯⋯if(S_OK==hresûûnChildren>0){pChildren=newLPCOMPONENT[nChildren];hres=pComponent->IGetChildren((LPCOMPONENT33)&pChildren);pComponent->get_Name(&parent);if(S_OK==hres){ööRecursivelytraversethechi

8、ldrenfor(i=0;iRelease();}}delete[]pChildren;}RecurseLevel--;⋯⋯r

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。