您所在的位置:e-works首页 > 产品创新数字化(PLM) > CAM

基于IGES的CAD/CAM后置处理器的实现

发表时间:2008-6-25 孙炜 刘春 来源:万方数据
IGES是实现不同CAD/CAM系统之间的数据转换的文件标准,介绍了ICES的主要特点 以及基于ICES的CAD/CAM平台后置处理器设计的羞本过程。将一种CAD/CAM平台的模型数据通过IGES转换标准导入另一种CAD/CAM平台中,实现了模型数据的共享。

    系统A数据库中的产品模型数据经过IGES前置处理器转换成IGES中性文件格式,再经过通信介质将IGES文件传送到系统B中,系统B的后置处理器对输人的IGES文件进行后处理,将IGES中性文件格式转换成系统B的产品模型数据格式,并存人数据库中。反之亦然。

    4 IGES后置处理器的设计

    IGES后置处理器的设计应该遵循如下两条规则:

    (1)一个符合规范的后置处理器可以读(尽管不一定转换)任何符合规范的数据文件;

    (2)当一个符合规范的后置处理器处理一个符合规范的数据文件时,尽管该文件包含一些没有实现变换的特征或元素,该处理器也不应死机或退出。

    IGES后置处理器的工作流程如下:

    (1)读取IGES文件中的元素;

    (2)转换格式;

    (3)生成本地系统允许的元素;

    (4)写人本地系统的数据结构。

    其中,IGES文件的读取以及格式的转换是后置处理器设计中的难点,以下将着重讨论这两个方面。

    4.1 IGES文件的读取

    由于IGES文件是分段表示的,因此在读取IGES文件时,自然也要分段读取,而且各个段的读取顺序也需要仔细考虑。笔者在读取CAM生成的ICES文件时,采用了如下的方法:

    (1)读取结束段,获得每段所占的行数;

    (2)读取开始段并用静态数组保存该段信息,该数组大小由结束段中开始段的行数信息来确定;

    (3)以自由格式输入全局段,默认状态以逗号作为参数分隔符,以分号作为参数结束符,由于其数据类型以及出现的次数都是固定的,可用静态数组来保存该段信息;

    (4)采用动态链表来保存目录条目段的信息,其20个域一致,并且将相同的实体类型放在一个链表中;

    (5)以自由格式存放参数数据段,由于每一类型实体分别用一链表保存,且每一实体类型的参数个数不同,所以采用MFC类库提供的动态数组来保存参数数据,以下是实现的一个例子:  

 

 

 

 

 

 

     下面给出笔者初步实现的IGES文件读取类中的一个例子:   
 

 

 

 

 

 

 

本文为授权转载文章,任何人未经原授权方同意,不得复制、转载、摘编等任何方式进行使用,e-works不承担由此而产生的任何法律责任! 如有异议请及时告之,以便进行及时处理。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。

责任编辑:赵蔓