home *** CD-ROM | disk | FTP | other *** search
- /******************************************************************************\
- *
- * MODULE: PAINT.H
- *
- \******************************************************************************/
-
-
-
- /******************************************************************************\
- * SYMBOLIC CONSTANTS
- \******************************************************************************/
-
- #define NUMVERTICES 8 /* number of polyhedron vertices */
- #define NUMFACETS 6 /* number of polyhedron facets */
-
- #define MAX_POINTS_PER_FACET 4
-
-
-
- /******************************************************************************\
- * TYPEDEFs
- \******************************************************************************/
-
- typedef struct
- {
- LONG x, y, z;
-
- } POINT3D;
-
-
-
- /******************************************************************************\
- * GLOBAL VARIABLES
- \******************************************************************************/
-
- //
- // This particular set of vertices "gNormalizedVertices" and corresponding
- // facets "gaiFacets" describe a normalized cube centered about the
- // origin ([0,0,0] in 3-space). The gaiFacet array is made up of a series
- // of indices into the array of vertices, each describing an individual
- // facet (eg. a polygon), and are separated by -1. Note that the facets
- // are decribed in COUNTERCLOCKWISE (relative to the viewer) order so we
- // can consistently find the normal to any given facet. (The normal
- // is used to determine facet visibilty.)
- //
-
- static POINT3D gNormalizedVertices[NUMVERTICES] = {{ 1, 1, 1}, { 1,-1, 1},
- {-1,-1, 1}, {-1, 1, 1},
- { 1, 1,-1}, { 1,-1,-1},
- {-1,-1,-1}, {-1, 1,-1} };
-
-
- static int gaiFacets[30] = { 3, 2, 1, 0, -1,
- 4, 5, 6, 7, -1,
- 0, 1, 5, 4, -1,
- 6, 2, 3, 7, -1,
- 7, 3, 0, 4, -1,
- 5, 1, 2, 6, -1 };
-
- POINT3D gXformedVertices[NUMVERTICES];
-
- float gM[2][3]; /* the transformation matrix */
-
-
-
- /******************************************************************************\
- * FUNCTION PROTOTYPES
- \******************************************************************************/
-
- void TransformVertices (HWND, RECT *, PSPINCUBEINFO, LONG);
- void ComputeRotationTransformation (float, float, float);
-