www.pudn.com > MeshProcess.rar > Mesh.h


// Mesh.h: interface for the CMesh class. 
// 
////////////////////////////////////////////////////////////////////// 
 
#if !defined(AFX_MESH_H__A49A59E9_6028_434B_9973_7AC387554EE5__INCLUDED_) 
#define AFX_MESH_H__A49A59E9_6028_434B_9973_7AC387554EE5__INCLUDED_ 
 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
 
#include "Tri3D.h" 
#include "Ver3D.h" 
 
const int SOLIDMODE     = 1; 
const int FLATSOLIDMODE = 2; 
const int WIREFRAMEMODE = 3; 
const int SOLIDWIREMODE = 4; 
const int VERTEXMODE    = 5; 
 
 
struct BoundingBox{ 
	double X1; 
	double X2; 
	double Y1; 
	double Y2; 
    double Z1; 
	double Z2; 
}; 
 
class CMesh   
{ 
 
public: 
	void CooridnateTranslate(double xtrans, double ytrans, double ztrans); 
	void CoordinateRotate(double xangle, double yangle, double zangle); 
	void DrawPickupTriVer(); 
	void DrawSvertices(int size, int cr, int cg, int cb); 
	void DrawBoundingBox(); 
	void DrawFlatTriangles(); 
	void DrawVertices(); 
	void DrawLines(); 
	void DrawTriangles(); 
	void ComputeAttribute(); 
	void DisplayModel(int mode); 
	void CoordianteTransform(BoundingBox winbox); 
	bool ImportMesh(char *fl, CString file_ext); 
	CMesh(); 
	virtual ~CMesh(); 
   
	int    m_nMeshcolor[3], m_nLinecolor[3]; 
	int    *m_nSvertices; 
	int    m_numS, m_numV, m_numT; 
	CTri3D *m_Meshes; 
	CVer3D *m_Vertices; 
	BoundingBox m_Box;  
 
 
 
}; 
 
#endif // !defined(AFX_MESH_H__A49A59E9_6028_434B_9973_7AC387554EE5__INCLUDED_)