Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
typedef struct { float fX, fY, fZ; float fNx, fNy, fNz; DWORD dwColor; } VERTEX;
typedef struct { int iV1; int iV2; int iV3; } TRIANGLE;
enum { OBJECT_TYPE_SPHERE = 0, OBJECT_TYPE_TORUS, OBJECT_TYPE_CYLINDER };
class OBJECT { public: OBJECT( int rings, int sections ); ~OBJECT( ); int VertexCount() { return nVerts; } int TriangleCount() { return nTris; } VERTEX *VertexData() { return pVertData; } TRIANGLE *TriangleData() { return pTriData; } int NumRings() { return nRings; } int NumSections() { return nSections; }
protected: int iType; // object type
int alphaVal; // opacity of the object
int nVerts, nTris; int nRings, nSections; VERTEX *pVertData; TRIANGLE *pTriData; };
class SPHERE : public OBJECT { public: SPHERE( int rings, int sections, float fAlpha );
private: void GenerateData( float fRadius ); int CalcNVertices(); int CalcNTriangles(); };
|