⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 3dsload.h

📁 任意给定三维空间的点集
💻 H
字号:
/* *  3D Studio object reader */#ifndef _3DSLOAD_H#define _3DSLOAD_Htypedef unsigned char   byte;typedef unsigned short  word;typedef unsigned long   dword;typedef float           float32;typedef struct{    word p0,p1,p2;	word flags;	// ...} H3dsFace;typedef struct{    union { float32 x; dword ix; };    union { float32 y; dword iy; };    union { float32 z; dword iz; };	// ...} H3dsVert;typedef struct{    union { float32 u; dword iu; };    union { float32 v; dword iv; };	// ...} H3dsMap;typedef struct{	int faces;              // number of faces in facelist	int verts;              // number of vertices in vertlist	int maps;               // number of mapping coordinates in maplist	int matrix;             // 1 if transformation matrix is loaded	H3dsFace * facelist;	H3dsVert * vertlist;	H3dsMap  * maplist;	float32 TraMatrix[3*4]; // 3*3 rotation matrix, 3*1 translation matrix	char name[16];          // object name, zero terminated	// This vertice don't really belong here in the loader structure.	// It is only used in the converter to hold the centre point	// for this mesh object.	H3dsVert centre;} H3dsMeshObj;typedef struct{	int meshobjs;           // number of meshobjects in meshobjlist	H3dsMeshObj * meshobjlist;    // Same comment as above. This vertice holds the centre point of	// all objects in the scene.	H3dsVert centre;} H3dsScene;/* *  H3dsScene * HRead3dsScene(void * ptr, int what, dword size); * *  ptr  - pointer to either a FILE structure or a memory buffer *  what - 0 if 3DS-data from file, 1 if 3DS-data from memory buffer *  size - size in bytes of 3DS data * *  Note! If you load from file, you must open the file in binary *        mode and determine the size of the 3DS-data (i.e. the filesize) *        upon calling this function. The filepointer is assumed to be *        at the wery start of the 3DS-data (i.e. start of file if it's a *        .3DS-file). The file is not closed by the function. * *  The function returns a pointer to a H3dsScene structure wich holds *  all data for each object. This structure can be freed with the *  HFree3dsScene() function. * *  In case of error the function frees all allocated memory and returns 0. *  The goal has been to make the functions well behaved and to not cause *  any crashes in an error situation. */H3dsScene * HRead3dsScene(void * ptr, int what, dword size);void HFree3dsScene(H3dsScene * scene);H3dsScene * ThreeDS_ReadFromFile( const char  * filename );#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -