#ifndef _PREPMESH_H_
 
#define _PREPMESH_H_
 
 
 
#include "brender/br_types.h"
 
 
 
int addEdge(br_uint_16 first, br_uint_16 last);
 
 
 
void prepareEdges(v11group* group, br_model* model);
 
 
 
void BrPrepareEdges(br_model* model);
 
 
 
int FacesCompare(const void* p1, const void* p2);
 
 
 
int TVCompare_XYZ(const void* p1, const void* p2);
 
 
 
int TVCompare_MXYZUVN(const void* p1, const void* p2);
 
 
 
int TVCompare_MVN(const void* p1, const void* p2);
 
 
 
br_fraction BrScalarToFractionClamp(br_scalar s);
 
 
 
void PrepareFaceNormals(br_model* model);
 
 
 
void Smoothing(br_model* model, br_scalar crease_limit, prep_vertex** start, prep_vertex** end);
 
 
 
void SmoothingCreased(br_model* model, br_scalar crease_limit, prep_vertex** start, prep_vertex** end);
 
 
 
void CopyVertex(v11group* group, int v, prep_vertex* src, br_model* model);
 
 
 
void CopyFace(v11group* group, int f, br_face* src, br_model* model);
 
 
 
void PrepareGroups(br_model* model);
 
 
 
void PrepareBoundingRadius(br_model* model);
 
 
 
void PrepareBoundingBox(br_model* model);
 
 
 
void RegenerateFaceNormals(v11model* v11m);
 
 
 
void RegenerateVertexNormals(v11model* v11m);
 
 
 
void BrModelUpdate(br_model* model, br_uint_16 flags);
 
 
 
void BrModelClear(br_model* model);
 
 
 
#endif