1  三维运动仿真的实现原理1. 1  运动仿真的实现由于要实现对仿真系统的交互式控制, 使其能够产生运动, 因此不能对模型进行整体转换, 而是根据模型的运动轨迹, 将其拆分, 各个部分分别 转换后, 再到 OpenGL 中重构三维模型.仿真系统和软件模型的转换接口软件需要满足3 个条件: 在转换接口 软件中能够全方位观察模型;模型的坐标系统能够随模型一起被装换到仿真系统中; 在仿真系 统中能 够获得模型零部件的 几何信息[ 2].本文利 用 Deep Exploration 作 为转换接口 软件, 把 ST L 格式的文件转换为* . cpp 文件, 对 STL文件的读取和显示可以不必考虑 ST L 文件的内部结构. 利用该软件得到的数据文件, 对模型的属性,如模型点面信息、材质信息和法向量信息进行了 较好的封装, 结构清晰, 可读性强. 另外, 生成的文件中提供了 OpenGL 显示列表工具, 用户在将该文件加入到系统工程中后, 进行少量的修改工作, 调用该列表就可以实现系统环境下模型的显示, 简单方便实现机械系统运动仿真的流程如图 1 所示.[ 5].图 1动画仿真流程1. 2 局部坐标系的添加局部坐标系是绘制物体时的坐标系, 它以物体的中心为坐标原点, 物体的旋转或平移等操作都是围绕局部坐标系进行的. 当物体模型进行旋转或平移等操作时, 局部坐标系也执行相应的旋转或平移操作. 因此, 局部坐标系又称为物体坐标系.一个复杂的机械系统是由很多零件组成的. 进行动画仿真时, 把每一个或几个具有相同运动轨迹的零件当作一个独立的运动单元. 对每一个运动单元添加一个局部坐标系, 并通过 OpenGL 的坐标变换来控制该运动单元的运动. 将每一个运动单元的运动有机联系起来, 便构成了整个机械系统的运动.在 SolidWorks 中对每一个运动单元添加局部坐标系后, 再另存为 STL 格式的文件, 每一个零件文件均会转换为一个 ST L 文件. 把 ST L 文件转换成* . cpp 文件时, 只需要选择该运动单元所包含的ST L 文件进行转换即可.向每一个运动单元添加一个局部坐标系的步骤为: 选择插入"  参考几何体" 坐标系", 然后单击鼠标左键, 即可在三维模型的该点添加一个局部坐标系.添加好局部坐标系后, 再把该装配体文件另存为 ST L 文件, 并对输出选项" 进行设置. 在输出坐标系"一栏中可以选择要输出的局部坐标系.