Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

Mesh Class Reference

Polygon mesh. More...

#include <mesh.h>

Inheritance diagram for Mesh:

CollapsedMesh List of all members.

Public Methods

 Mesh (RV_PRM_Mesh*, FILE *, bool intermediate)
 Mesh (RV_W_Mesh*, FILE *, bool intermediate)
 Mesh ()
 Mesh (Mesh *)
 ~Mesh ()
void translate (rvfloat dx, rvfloat dy, rvfloat dz)
void translate (Vector &v)
void rotate (Matrix_3x3 &)
void write_w (FILE *, bool is_im_file)
bool isDegenerated (void)
void cleanupPolyList (void)
void cleanupVertexList (void)
void optimize (void)
int numPolys (void)
int numSolidPolys (void)
SurfacecreatePolySurface (int pidx)
void add (Polygon *p)
void add (Vertex *v)
void deleteSomePolys (bool delUnsolids, bool delInvisibles)
bool apply (PolygonModifier *)
void calc_visible_bounds (AxisBox &abox)

Public Attributes

Polygon** poly
RV_W_Mesh data
Vertex** verts
int max_polys
int max_verts

Protected Methods

void load (FILE *, bool intermediate, bool is_Instance)
void calc_bounds (void)

Friends

class  CollapsedMesh


Detailed Description

Polygon mesh.

class for RV_W_Mesh and RV_PRM_Mesh


Constructor & Destructor Documentation

Mesh::Mesh ( RV_PRM_Mesh * m,
FILE * f,
bool intermediate )
 

Mesh::Mesh ( RV_W_Mesh * m,
FILE * f,
bool intermediate )
 

Mesh::Mesh ( )
 

Mesh::Mesh ( Mesh * m )
 

ctor. Copies all data!

Mesh::~Mesh ( )
 


Member Function Documentation

void Mesh::add ( Vertex * v )
 

adds a vertex to the mesh

void Mesh::add ( Polygon * p )
 

adds a polygon to the mesh

bool Mesh::apply ( PolygonModifier * pmod )
 

void Mesh::calc_bounds ( void ) [protected]
 

void Mesh::calc_visible_bounds ( AxisBox & abox )
 

void Mesh::cleanupPolyList ( void )
 

removes deleted polygons from the poly list

void Mesh::cleanupVertexList ( void )
 

removes unused vertices from the vertex list

Surface * Mesh::createPolySurface ( int pidx )
 

void Mesh::deleteSomePolys ( bool delUnsolids,
bool delInvisibles )
 

deletes unnecessary polygons.

Polys that are "off" are always deleted, deletion of others is controlled by the arguments.

bool Mesh::isDegenerated ( void )
 

Returns:
true, if the mesh consists of 0 polygons

void Mesh::load ( FILE * f,
bool intermediate,
bool is_Instance ) [protected]
 

int Mesh::numPolys ( void )
 

int Mesh::numSolidPolys ( void )
 

void Mesh::optimize ( void )
 

optimizes mesh by calling cleanupPolyList() and cleanupVertexList()

void Mesh::rotate ( Matrix_3x3 & mx )
 

void Mesh::translate ( Vector & v ) [inline]
 

void Mesh::translate ( rvfloat dx,
rvfloat dy,
rvfloat dz )
 

void Mesh::write_w ( FILE * f,
bool is_im_file )
 

writes the mesh to a .w or .i-w file.

writing to .prm's is done by CollapsedMesh


Friends And Related Function Documentation

class CollapsedMesh [friend]
 


Member Data Documentation

RV_W_Mesh Mesh::data
 

int Mesh::max_polys
 

Reimplemented in CollapsedMesh.

int Mesh::max_verts
 

Reimplemented in CollapsedMesh.

Polygon ** Mesh::poly
 

Vertex ** Mesh::verts
 


The documentation for this class was generated from the following files:
Generated at Fri Jul 26 09:33:58 2002 for rvtmod/rvglue by doxygen1.2.0 written by Dimitri van Heesch, © 1997-2000