Main Page | Class Hierarchy | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

mesh.h

Go to the documentation of this file.
00001 /*
00002 ===========================================================================
00003 Copyright (C) 1999-2005 Id Software, Inc.
00004 
00005 This file is part of Quake III Arena source code.
00006 
00007 Quake III Arena source code is free software; you can redistribute it
00008 and/or modify it under the terms of the GNU General Public License as
00009 published by the Free Software Foundation; either version 2 of the License,
00010 or (at your option) any later version.
00011 
00012 Quake III Arena source code is distributed in the hope that it will be
00013 useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
00014 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015 GNU General Public License for more details.
00016 
00017 You should have received a copy of the GNU General Public License
00018 along with Foobar; if not, write to the Free Software
00019 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
00020 ===========================================================================
00021 */
00022 
00023 // mesh.h
00024 
00025 
00026 typedef struct {
00027     int         width, height;
00028     drawVert_t  *verts;
00029 } mesh_t;
00030 
00031 #define MAX_EXPANDED_AXIS       128
00032 
00033 extern  int originalWidths[MAX_EXPANDED_AXIS];
00034 extern  int originalHeights[MAX_EXPANDED_AXIS];
00035 
00036 void FreeMesh( mesh_t *m );
00037 mesh_t *CopyMesh( mesh_t *mesh );
00038 void PrintMesh( mesh_t *m );
00039 mesh_t *TransposeMesh( mesh_t *in );
00040 void InvertMesh( mesh_t *m );
00041 mesh_t *SubdivideMesh( mesh_t in, float maxError, float minLength );
00042 mesh_t *SubdivideMeshQuads( mesh_t *in, float minLength, int maxsize, int widthtable[], int heighttable[]);
00043 mesh_t *RemoveLinearMeshColumnsRows( mesh_t *in );
00044 void MakeMeshNormals( mesh_t in );
00045 void PutMeshOnCurve( mesh_t in );
00046 
00047 
00048 void MakeNormalVectors (vec3_t forward, vec3_t right, vec3_t up);

Generated on Thu Aug 25 12:38:22 2005 for Quake III Arena by  doxygen 1.3.9.1