关于我们 联系我们 网站地图 您好!欢迎访问沈阳天乙新数控机械有限公司!
全国咨询热线:024-8936-3215
您的位置:首页>>新闻中心>>行业动态

咨询热线

024-8936-3215

新体系在摹拟数控作业里的践行

作者:天乙数控机床时间:2021-11-12885次浏览

信息摘要:

程序设计阶段1)建立project.在VisualC编译环境中,利用AppWizard建立一个基于MFC的单文档应用程序。2)加入opengl32lib、glaux.lib、glu32.lib库。3)修改View类的头文件。在View类的头文件中加入以下几行:includeglgl.hincludeglglu.hincludeglglaux.h4)先将lathe.cpp和lathe.h复制到project目录下,然后分别将得到的ax

程序设计阶段1)建立project.在VisualC编译环境中,利用AppWizard建立一个基于MFC的单文档应用程序。2)加入opengl32lib、glaux.lib、glu32.lib库。3)修改View类的头文件。在View类的头文件中加入以下几行:includeglgl.hincludeglglu.hincludeglglaux.h4)先将lathe.cpp和lathe.h复制到project目录下,然后分别将得到的axial.cpp和axial.h分别添加到SourceFiles和HeaderFiles中<4>。


  在Doc.cpp和View.cpp文件中添加includelathe.h.在View.cpp文件中添加像素格式设定函数、建立函数模型函数、设置光源函数、选择材质函数、渲染函数等,这些函数对于每一导入OpenGL中的相同格式的文件基本相同。


  通过VC添加函数向导来添加鼠标消息函数,实现交互动画的控制。在View.h文件中加上需要的各种变量后,进行调试。在调试过程中会遇到下面的错误:unexpectedendoffilewhilelookingforprecompiledheaderdirectiveErrorexecutingcl.exe.当双击错误的时候就会指向axial.cpp文件的尾部。添加:includestdafx.h.重新编译的时候错误就会消失。


  编译通过后,屏幕上没有任何显示。通过改变glSaclef和glTranslatef两个函数的参数和顺序,在裁剪区域内显示出导入的图形。OpenGL的深度坐标是指向显示器的内部为正方向,其他两个方向向上和向右为正方向。认识了这一点会很容易找到导入的物体。在软件制作的建模阶段,将3DSMAX系统轴线坐标原点与物体的中心重合。


  当显示模型后,也会遇到一个常见的问题,即3DSMAX中设置的颜色调试后没有显示出正确的色彩。直接在axial.cpp找到在3DSMAX中渲染时,在材质编辑对话框中赋予的材料的名字。材料由一个一维数组表示,数组有四个成员,每个成员有六项参数。


  在axial.h中定义它的数据结构为:typedefstruct{floatambient;floatdiffuse;floatspecular;floatemission;floatalpha;inttexture;}MaterialDef;对上面的参数进行修改,就可以得到较理想的渲染效果。


  注意的关键点坐标统一建立模型的时候所使用的软件坐标与OpenGL坐标统一,显示的时候就不会出现找不到显示物体的现象。单位统一在建立模型的时候所使用软件的单位与OpenGL单位统一,在窗口就可以得到适当大小的模型。函数顺序glTranslatef和glRotatef两个函数在程序中的先后顺序会影响对鼠标的控制。在鼠标控制物体旋转的时候,有时候会出现物体突然消失的现象,即因为没有在程序设计时注意平移变化和旋转变化的顺序。


  对glTranslatef和glRotatef两个函数进行修改,可以达到旋转中心和物体的中心重合的目的。在教学的演示过程中,将复杂模型的各个复杂面展现在屏幕上,提高了教学软件对指定部位的显示能力。


  参数设置对话框实现1)在VC的基类CDialog下继承的一个对话框类,用来做输入参数的控制面板。2)在菜单中添加一个消息传递函数,此消息传递函数要在View类中。3)为对话框和菜单设置正确的ID,同时在资源文件的头文件中定义此ID.在消息传递时连接菜单的ID.


  结语3DSMAX模型转化到OpenGL中有很多方法,中间的转换软件也有很多,如常用的3DWin和3DExploration是目前用得*多的两个软件。可以将3DSMAX输出的。ase格式、max格式还有其他软件如CAD输出的dwg格式、dxf格式等十多种格式转为OpenGL格式。现在部分企业和学校也利用VEGACREATOR结合用于开发交互式视景仿真系统。利用3D软件很方便建立需要的模型,解决了在程序中建立模型的复杂过程。因此,也可以用3DSMAX建立比较自由的立体,如人物、动物等,再转化到OpenGL中制作交互动画,从而设计出生动的交互动画和更完善的辅助虚拟制造。本文通过OpneGL强大的三维显示效果,实现了对机床的三维建模和对输出虚拟产品的三维模型渲染。


  目前,只是实现了G代码到虚拟产品,今后的研究方向将逐步实现从计算机和机床的通讯接口设计,完成从虚拟代码到真实产品的过程,并加入虚拟制造中机床的精度和刀具磨损对产品精度的影响。


返回列表 本文标签: