资源简介
天津大学的实时图形设计课的大作业,包括一份实验报告和代码,需在visual studio 2010下运行
代码片段和文件信息
#include
#include
#include
#include
#include “3ds.h“
#include
using namespace std;
//-------------------------------------------------------
// generic stuff
//-------------------------------------------------------
#define SEEK_START 1900
#define SEEK_CURSOR 1901
#define MAIN3DS 0x4D4D
#define EDIT3DS 0x3D3D // this is the start of the editor config
#define EDIT_MATERIAL 0xAFFF
#define EDIT_object 0x4000
#define OBJ_TRIMESH 0x4100
#define OBJ_LIGHT 0x4600
#define OBJ_CAMERA 0x4700
#define LIT_OFF 0x4620
#define LIT_SPOT 0x4610
#define TRI_VERTEXLIST 0x4110
#define TRI_VERTEXOPTIONS 0x4111
#define TRI_FACELIST 0x4120
#define TRI_FACEMAPPING 0x4140
#define TRI_MATRIX 0x4160
#define RGB_COLOR 0x0010
#define COLOR24 0x0011
#define SPOTLIGHT 0x4610
struct LChunk
{
short id;
int start;
int end;
};
LVector3 AddVectors(const LVector3 a const LVector3 b)
{
LVector3 t;
t.x = a.x+b.x;
t.y = a.y+b.y;
t.z = a.z+b.z;
return t;
}
LVector3 SubtractVectors(const LVector3 a const LVector3 b)
{
LVector3 t;
t.x = a.x-b.x;
t.y = a.y-b.y;
t.z = a.z-b.z;
return t;
}
float VectorLength(const LVector3 vec)
{
return (float)sqrt(vec.x*vec.x + vec.y*vec.y+vec.z*vec.z);
}
LVector3 NormalizeVector(const LVector3 vec)
{
float a = VectorLength(vec);
if (a == 0)
return vec;
LVector3 v;
v.x = vec.x/a;
v.y = vec.y/a;
v.z = vec.z/a;
return v;
}
LVector3 CrossProduct(const LVector3 a const LVector3 b)
{
LVector3 v;
v.x = a.y*b.z - a.z*b.y;
v.y = a.z*b.x - a.x*b.z;
v.z = a.x*b.y - a.y*b.x;
return v;
}
void LoadIdentityMatrix(LMatrix &m)
{
m.xAxis.x = 1.0f;
m.xAxis.y = 0.0f;
m.xAxis.z = 0.0f;
m.yAxis.x = 0.0f;
m.yAxis.y = 1.0f;
m.yAxis.z = 0.0f;
m.zAxis.x = 0.0f;
m.zAxis.y = 0.0f;
m.zAxis.z = 1.0f;
m.pos.x = 0.0f;
m.pos.y = 0.0f;
m.pos.z = 0.0f;
}
LVector3 VectorByMatrix(const LMatrix m const LVector3 vec)
{
LVector3 res;
res.x = m.xAxis.x*vec.x + m.xAxis.y*vec.y + m.xAxis.z*vec.z;
res.y = m.yAxis.x*vec.x + m.yAxis.y*vec.y + m.yAxis.z*vec.z;
res.z = m.zAxis.x*vec.x + m.zAxis.y*vec.y + m.zAxis.z*vec.z;
res = AddVectors(vec m.pos);
return res;
}
//-------------------------------------------------------
// Lobject implementation
//-------------------------------------------------------
Lobject::Lobject()
{
m_name = 0;
m_nameSize = 0;
}
Lobject::~Lobject()
{
if (m_name != 0)
free(m_name);
}
void Lobject::SetName(const char *value)
{
m_nameSize = strlen(value)+1;
m_name = (char*)malloc(m_nameSize);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-07-02 09:32 瀹炴椂鍥惧舰璁捐\
文件 8196 2017-07-02 09:36 瀹炴椂鍥惧舰璁捐\.DS_Store
目录 0 2017-07-02 09:36 __MACOSX\
目录 0 2017-07-02 09:36 __MACOSX\瀹炴椂鍥惧舰璁捐\
文件 120 2017-07-02 09:36 __MACOSX\瀹炴椂鍥惧舰璁捐\._.DS_Store
目录 0 2017-07-02 09:36 瀹炴椂鍥惧舰璁捐\code\
文件 14340 2017-07-02 09:36 瀹炴椂鍥惧舰璁捐\code\.DS_Store
目录 0 2017-07-02 09:36 __MACOSX\瀹炴椂鍥惧舰璁捐\code\
文件 120 2017-07-02 09:36 __MACOSX\瀹炴椂鍥惧舰璁捐\code\._.DS_Store
文件 21819 2016-06-05 03:05 瀹炴椂鍥惧舰璁捐\code\3ds.cpp
文件 5196 2017-06-03 22:32 瀹炴椂鍥惧舰璁捐\code\3ds.h
目录 0 2017-06-04 16:12 瀹炴椂鍥惧舰璁捐\code\_UpgradeReport_Files\
文件 3348 2016-05-29 15:59 瀹炴椂鍥惧舰璁捐\code\_UpgradeReport_Files\UpgradeReport.css
文件 12505 2010-05-04 01:19 瀹炴椂鍥惧舰璁捐\code\_UpgradeReport_Files\UpgradeReport.xslt
文件 69 2016-05-29 15:59 瀹炴椂鍥惧舰璁捐\code\_UpgradeReport_Files\UpgradeReport_Minus.gif
文件 71 2016-05-29 15:59 瀹炴椂鍥惧舰璁捐\code\_UpgradeReport_Files\UpgradeReport_Plus.gif
文件 1690 2016-06-05 03:05 瀹炴椂鍥惧舰璁捐\code\body.cpp
文件 2450 2016-06-05 03:02 瀹炴椂鍥惧舰璁捐\code\body.h
文件 8962 2016-06-05 03:05 瀹炴椂鍥惧舰璁捐\code\BoundingBox.cpp
文件 1454 2016-06-05 03:05 瀹炴椂鍥惧舰璁捐\code\BoundingBox.h
文件 7487 2016-06-05 03:05 瀹炴椂鍥惧舰璁捐\code\Camera.cpp
文件 1600 2016-06-05 03:05 瀹炴椂鍥惧舰璁捐\code\Camera.h
文件 21440 2016-06-05 03:05 瀹炴椂鍥惧舰璁捐\code\CLoad3DS.cpp
文件 1352 2016-06-05 03:05 瀹炴椂鍥惧舰璁捐\code\CLoad3DS.h
文件 4160 2016-06-05 03:05 瀹炴椂鍥惧舰璁捐\code\coordinate_fr
文件 3522 2016-06-05 03:05 瀹炴椂鍥惧舰璁捐\code\coordinate_fr
文件 4203 2016-06-05 03:05 瀹炴椂鍥惧舰璁捐\code\CPrerequisites.cpp
文件 5052 2016-06-05 03:05 瀹炴椂鍥惧舰璁捐\code\CPrerequisites.h
目录 0 2017-06-12 18:07 瀹炴椂鍥惧舰璁捐\code\Data\
文件 10244 2017-07-02 09:35 瀹炴椂鍥惧舰璁捐\code\Data\.DS_Store
目录 0 2017-07-02 09:36 __MACOSX\瀹炴椂鍥惧舰璁捐\code\Data\
............此处省略174个文件信息
- 上一篇:基于qt的udp实时录音
- 下一篇:OPENMV舵机云台颜色追踪学习资料.zip
相关资源
- 天津大学901程序结构与程序设计考研
- 天津大学软件工程习题参考答案
- 天津大学图形学考试资料
- 天津大学2019年软件工程课程设计报告
- 现代控制理论 刘豹 PPT课件
- 天津大学人工智能课件
- 天津大学操作系统原理实验
- 应用数学基础第四版习题指导答案天
- 天津大学计算机网络SDN实验报告
- 天津大学计算机考研初试+复试攻略学
- 软件工程试题-天津大学902考试可用参
- 天津大学计算机科学与技术学院数字
- 微机接口实验以及实验报告
- 天津大学社会信息检索TFIDF大作业
- 天津大学并行计算一二次实验报告
- 天津大学计算机考研复试攻略.pdf
- 天津大学_数据库原理_本科生_期末试
- 天津大学精仪学院测控电路PPT
- 天津大学编译原理往年真题
- 天津大学计算机网络复习总结
- 天津大学课程设计--数字脉搏计
- 天津大学数据库笔记
- 并行计算多线程求π以及矩阵转置
- 天津大学计算机组成原理课件实验复
- 天津大学数据结构全部上机代码
- 《工程数学基础教程》作者: 天津大学
- 天津大学并行计算
- 天津大学 计算机 考研复试题
- 2010注册电气工程师公共基础考试复习
- 天津大学计算机考研面试复试算法专
评论
共有 条评论