OpenGL导入DeepExploration文件的若干问题

Deep Exploration应用中的若干问题及解决

1. 软件安装

安装版本:Deep Exploration6.3

安装、汉化及破解方法:解压缩—DeepExploration/DeepExploration633Complete.exe;

安装程序,然后运行patch.exe

  激活码: 0000 0000 0000 0000

 选择“电子邮件激活”,复制/粘贴以下许可证: LICENSErighthemi rh_de_cad 6.0 permanent uncounted hostid=ANY customer=RCL_ck=a81efca790sig="60PG4580HCEHSE220JPKGCBCU78PD0GYR3T5PYAG08A0MTY0500W6CUCTMG80R9Y7U9C0NQCBYA0"

WIN7必须以管理员身份进入破解把 CRACK 目录下的 PATCH.exe 复制到软件安裝目录下执行破解。

汉化:打开DeepExploration6.3中文语言包,将DeepRes.dll文件复制并替换安装文件中的文件。

2. 导入三维模型

软件可以导入wrl、vrml、mtx、vpp、w3d、STL、sldasm、SLDPRT等文件。本文件主要介绍如何导入Solidworks生成的三维模型文件,及其区别。

1)Solidworks绘制三维模型:采用Solidworks绘制三维模型,一般以sldasm文件格式保存。在零件建模过程中可以添加零件的局部坐标系:插入/参考几何体/坐标系。

2)Solidworks导出文件。SLDPRT格式文件:不能对零件坐标系进行选择设置,导出的坐标系为默认坐标系;STL格式文件、STEP格式文件及vrml文件:点击“选项”控件,可以对输出坐标系进行设置,一般将默认坐标系更改为所设置的零件坐标系。

注:在建立三维模型时,应将零件装配时有配合关系的特征建在默认坐标系中心,这样可以避免设置零件坐标系。

3. DeepExploration6.3导入模型

   

点击“导入”/打开文件,选择文件类型/选择要打开的零件/弹出导入属性对话框。设置参数如下图所示:Approach:Alternate;Tessellation Level:Medium High(设置导入质量为高质量)

注:导入VRML文件时,界面如下,可以设置Flip coordinate system。

注:导入文件STL时无法设置导入属性。

4. DeepExploration6.3导出CPP文件

点击“另存为图标”/点击“设置按钮”弹出导出属性设置界面,设置参数如下:CPP code:Display list;Scale type:None。

5 总结

STL格式文件:导出的数据可以不进行归一化处理,但零件坐标系位置混乱,一般在零件的某个角落;

VRML格式文件:导出的数据是已经进行了归一化处理。零件的的缩放比例无法控制,但零件坐标系为三维模型设置的零件坐标系;

STEP格式文件:导出的数据可以不进行归一化处理,零件的坐标系为默认坐标系。

OpenGL中对模型进行装配和运动控制,要求导入零件的实际尺寸参数和所设置的零件坐标系,因此采用STEP格式文件是最合适的。

6 OpenGL的安装

1)如果是VC++6,则应该将glut.h复制在"X:\Program Files\MicrosoftVisualStudio\VC98 \Include\GL文件夹")。

2)如果是VisualStudio2008,把glut.h复制到x:\Program Files\Microsoft\Visual Studio 9.0\VC\include\GL文件夹中,如果没有GL这个文件夹则可以自己新建一个。(x是你安装VS的盘符号,如果装的是VC++的话,里面有个gl文件,Visual Studio 2008则需要自己去新建一个)

3)把解压得到的glut.lib和glut32.lib放到静态函数库所在文件夹(即与include并排的lib文件夹下)。

4)把解压得到的glut.dll和glut32.dll放到操作系统目录下面的system32文件夹内。(典型的位置为:C:\Windows\System32)(这里对应上面的问题!)如果是64位系统,放到SysWOW64目录下。

注:如果显示文件有问题,一般是文件没有被包含进工程。

右击工程名,点击“属性”,弹出属性页,点击“VC++目录”//“包含目录”,将OpenGL文件包含进工程。

6 OpenGL导入DeepExploration6.3生成的CPP文件并显示

1)在导入CPP文件时需要添加.h文件。生成的CPP文件中没有声明函数,文件通过函数GLintGen3DObjectList()生成显示列表,与外部文件进行通信。

2)文件中的函数:

GLint Gen3DObjectList();//显示列表

voidMyMaterial(GLenum mode, GLfloat * f, GLfloat alpha);//材质设置

voidSelectMaterial(void);//材质设置

添加的.h文件如下:

#ifndefr_flag

    #definer_flag

#include <windows.h>

#include <GL\gl.h>

#include <GL\glu.h>

#defineRatio 500

GLintGen3DObjectList0();

GLintGen3DObjectList1();

GLintGen3DObjectList2();

GLintGen3DObjectList3();

GLintGen3DObjectList4();

GLintGen3DObjectList5();

GLintGen3DObjectList6();

 

structMATERIAL

{

        GLfloat ambient[3];

        GLfloat diffuse[3];

        GLfloat specular[3];

        GLfloat emission[3];

        GLfloat alpha;

        GLfloat phExp;

        inttexture;

};

classsample_MATERIAL

{

public:

    sample_MATERIAL();

    sample_MATERIAL(GLfloat *Sambient,GLfloat*Sdiffuse,GLfloat *Sspecular,GLfloat *Semission ,GLfloat Salpha,GLfloat SphExp,int Stexture);

    ~sample_MATERIAL();

        GLfloat ambient[3];

        GLfloat diffuse[3];

        GLfloat specular[3];

        GLfloat emission[3];

        GLfloat alpha;

        GLfloat phExp;

        inttexture;

};

 

classRobot_part:public sample_MATERIAL

{

public:

    Robot_part(GLfloat *Sambient,GLfloat*Sdiffuse,GLfloat *Sspecular,GLfloat *Semission ,GLfloat Salpha,GLfloat SphExp,int Stexture);

    Robot_part();

    ~Robot_part();

    voidMyMaterial(GLenum mode, GLfloat * f, GLfloat alpha);

    voidSelectMaterial(void);

};

#endif

对.cpp文件作如下更改:

删除:structsample_MATERIAL;

更改staticsample_MATERIAL materials [1]为MATERIAL materiali,i的值可以设置;更改GLfloat textures[1][2]为static GLfloattextures[1][2];

更改GLintGen3DObjectList()为GLint Gen3DObjectListi(),i的值可以设置

更改SelectMaterial(material_ref[mindex][0]);为Robot_parti.SelectMaterial();

删除voidSelectMaterial(int i),void MyMaterial(GLenum mode,GLfloat * f, GLfloat alpha)

添加Robot_partRobot_parti(

materiali.ambient,materiali.diffuse,materiali.specular,materiali.emission,materiali.alpha,materiali.phExp,materiali.texture);

 

 

 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值