summaryrefslogtreecommitdiff
path: root/src/glu/mesa/tess.h
diff options
context:
space:
mode:
authorGareth Hughes <gareth@valinux.com>1999-12-06 09:39:34 +0000
committerGareth Hughes <gareth@valinux.com>1999-12-06 09:39:34 +0000
commitff5ce773b254ab37cc0e01d62c131a32338b667f (patch)
tree71ea9626a0ca3a229940a5299694bf899f8d7a9f /src/glu/mesa/tess.h
parenta1216fe3a21238c48a56d073bdd0a5a821da64a3 (diff)
Merging in work from 3.1/3.2 branch. Tessellator is essentially fully
functional now.
Diffstat (limited to 'src/glu/mesa/tess.h')
-rw-r--r--src/glu/mesa/tess.h26
1 files changed, 16 insertions, 10 deletions
diff --git a/src/glu/mesa/tess.h b/src/glu/mesa/tess.h
index 504ebd0872..5568183073 100644
--- a/src/glu/mesa/tess.h
+++ b/src/glu/mesa/tess.h
@@ -1,4 +1,4 @@
-/* $Id: tess.h,v 1.15 1999/11/05 20:37:14 gareth Exp $ */
+/* $Id: tess.h,v 1.16 1999/12/06 09:39:34 gareth Exp $ */
/*
* Mesa 3-D graphics library
@@ -56,33 +56,39 @@ extern "C" {
struct GLUtesselator
{
tess_callbacks_t callbacks;
- GLboolean boundary_only;
GLenum winding_rule;
+ GLboolean boundary_only;
GLdouble tolerance;
- tess_plane_t plane;
- GLuint contour_count;
+ GLenum orientation;
+ void *data;
+ GLint num_contours;
tess_contour_t *contours, *last_contour;
tess_contour_t *current_contour;
GLdouble mins[2], maxs[2];
- GLuint vertex_count;
+ GLint num_vertices;
tess_vertex_t **sorted_vertices;
#if 0
tess_grid_t *grid; /* Not currently used... */
#endif
heap_t *ears;
- hashtable_t *cvc_lists;
- void *data;
GLboolean edge_flag;
GLuint label;
+ tess_plane_t plane;
GLenum error;
};
/*****************************************************************************
- * Tessellation error handler:
+ * Common tessellation functions:
*****************************************************************************/
extern void tess_error_callback( GLUtesselator *, GLenum );
+extern GLdouble twice_contour_area( tess_contour_t *contour );
+extern void reverse_contour( tess_contour_t *contour );
+extern void delete_contour( tess_contour_t **contour );
+
+extern void contour_dump( tess_contour_t *contour );
+
/*****************************************************************************
* Debugging output:
@@ -115,8 +121,8 @@ extern int tess_dbg_level;
#define MSG tess_msg
#endif /* DEBUG */
-extern INLINE void tess_msg( int level, char *format, ... );
-extern INLINE void tess_info( char *file, char *line );
+extern INLINE void tess_msg( GLint level, char *format, ... );
+extern INLINE void tess_info( char *file, GLint line );
#ifdef __cplusplus
}