gCAD3D 2.35
ut_GLU.c File Reference

aux. functions tesselate using GLU More...

#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <GL/gl.h>
#include <GL/glu.h>
#include "../ut/ut_geo.h"
#include "../ut/ut_msh.h"
#include "../ut/ut_cast.h"
#include "../ut/ut_memTab.h"
#include "../ut/ut_tin.h"
#include "../db/ut_DB.h"
#include "../xa/xa_mem.h"
#include "../ut/func_types.h"

Macros

#define GLU_CB   static void
 
#define GLT_pta_INC   25000
 
#define GLT_cta_INC   10000
 
#define GLT_ppa_INC   6000
 
#define GLU_CombINC   400
 

Functions

GLU_CB GLT_CB_Begin (GLenum)
 
GLU_CB GLT_CB_End ()
 
GLU_CB GLT_CB_Err (GLenum)
 
GLU_CB GLT_comb_CB (GLdouble *, GLdouble **, GLfloat *, GLdouble **)
 
GLU_CB GLT_comm_CB (void *coords)
 
GLU_CB GLT_comm_end ()
 
GLU_CB GLT_spp_beg (GLenum)
 
GLU_CB GLT_spp_vert (GLvoid *)
 
GLU_CB GLT_spp_end ()
 
GLU_CB GLU_CB_tess_Err (GLenum)
 
GLU_CB GLU_CB_tess_newPt (GLdouble *, GLdouble **, GLfloat *, GLdouble **)
 
GLU_CB GLU_CB_tess_beg (GLenum)
 
GLU_CB GLU_CB_tess_pt (double *)
 
GLU_CB GLU_CB_tess_edg (GLboolean flag)
 
GLU_CB GLU_CB_tess_end ()
 
 typedef_MemTab (IndTab)
 
static MemTab (char)
 
GLU_CB GLU_CB_tess_newPt (GLdouble coords[3], GLdouble **dataVert, GLfloat weight[4], GLdouble **dataOut)
 
int GLU_tess__ (MemTab(IndTab)*fmt, MemTab(char)*pst, MemTab(int)*imt, MemTab(Point)*pmt, MemTab(IndTab)*cmt, GridBoxH *gb, Vector *vcz)
 
long GLT_mSiz ()
 
int GLT_alloc_pta (long Ind)
 
int GLT_alloc_cta (long Ind)
 
int GLT_alloc_ppa (long Ind)
 
int GLT_exit ()
 
int GLU_alloc (int Ind)
 
int GLT_init ()
 
int GLT_comb_reset ()
 
int GLT_dump_comb ()
 
GLU_CB GLT_comb_CB (GLdouble coords[3], GLdouble *data[4], GLfloat weight[4], GLdouble **dataOut)
 
int GLT_spu_ (int pNr, Point *pta, Vector *vcz)
 
int GLT_spp__ (ContTab *cTab, int cNr, Vector *vcz)
 
int GLT_diff_work (int *c1Nr, ContTab *c1Tab, int *p1Nr, Point *p1Tab, int pNr, Point *pTab, int cNr, ContTab *cTab, Vector *vcz)
 
int GLT_comm_work (int *cNr, ContTab *cTab, int *p3Nr, Point *p3Tab, int p1Nr, Point *p1Tab, int p2Nr, Point *p2Tab, Vector *vcz)
 
int GLT_cta_inc ()
 
int GLT_spp_sTyp (long sTyp)
 
 GLT_spp_Tex (long texNr)
 
int GLT_spp_Col (ColRGB *sCol)
 
int GLT_spp_pp (Vector *vcz)
 
int GLT_start__ (ObjGX **gSur)
 
int GLT_stor_rec (int mode, Point *pa1, Point *pa2, int ptNr)
 

Variables

ColRGB GL_actCol
 
static PointGLU_CombTab =NULL
 
static int GLU_CombSiz =0
 
static int GLU_CombNr =0
 
static int GLU_Err =0
 
static int GLU_pTyp
 
static PointGLU_comm_tab
 
static int GLU_comm_Max
 
static int GLU_comm_pNr
 
static ContTabGLU_cTab
 
static int GLU_cMax
 
static int GLU_cNr
 
static GLUtesselator * ot1 =NULL
 
PointGLT_pta = NULL
 
long GLT_pta_SIZ = 0
 
static long GLT_pta_ind
 
static long GLT_pta_start
 
ObjGXGLT_cta
 
long GLT_cta_SIZ
 
static long GLT_cta_ind
 
static ObjGXGLT_ppa
 
static long GLT_ppa_SIZ
 
static long GLT_ppa_ind
 
static ObjGX GLT_sur
 

Detailed Description

aux. functions tesselate using GLU

=====================================================
List_functions_start:
GLU_tess__ tesselate outerBoundary with holes above grid-quads.
GLT_spu_ eine nicht gelochte planare Flaeche tesselieren ..
GLT_spp__ tesselate planaren Patch mit Aussenkontur/Loechern
GLT_diff_work difference of 2 contours -> ContTab
GLT_comm_work common of 2 contours -> ContTab
- internal:
GLT_comm_CB add vertex
GLT_comb_CB add vertex
GLT_spp_beg start new active contour
GLT_spp_pp beginn next patch for active surf
GLT_spp_vert add vertex
GLT_spp_end add contour to active patch
List_functions_end:
=====================================================

Macro Definition Documentation

#define GLU_CB   static void
#define GLT_pta_INC   25000
#define GLT_cta_INC   10000
#define GLT_ppa_INC   6000
#define GLU_CombINC   400

Function Documentation

GLU_CB GLT_CB_Begin ( GLenum  which)
GLU_CB GLT_CB_End ( )
GLU_CB GLT_CB_Err ( GLenum  gl_err)
GLU_CB GLT_comb_CB ( GLdouble *  ,
GLdouble **  ,
GLfloat *  ,
GLdouble **   
)
GLU_CB GLT_comm_CB ( void *  coords)
GLU_CB GLT_comm_end ( )
GLU_CB GLT_spp_beg ( GLenum  pTyp)
GLU_CB GLT_spp_vert ( GLvoid *  vertex)
GLU_CB GLT_spp_end ( )
GLU_CB GLU_CB_tess_Err ( GLenum  )
GLU_CB GLU_CB_tess_newPt ( GLdouble *  ,
GLdouble **  ,
GLfloat *  ,
GLdouble **   
)
GLU_CB GLU_CB_tess_beg ( GLenum  pTyp)
GLU_CB GLU_CB_tess_pt ( double *  pt1)
GLU_CB GLU_CB_tess_edg ( GLboolean  flag)
GLU_CB GLU_CB_tess_end ( )
typedef_MemTab ( IndTab  )
static MemTab ( char  )
static
GLU_CB GLU_CB_tess_newPt ( GLdouble  coords[3],
GLdouble **  dataVert,
GLfloat  weight[4],
GLdouble **  dataOut 
)
int GLU_tess__ ( MemTab(IndTab)*  fmt,
MemTab(char)*  pst,
MemTab(int)*  imt,
MemTab(Point)*  pmt,
MemTab(IndTab)*  cmt,
GridBoxH gb,
Vector vcz 
)
long GLT_mSiz ( )
int GLT_alloc_pta ( long  Ind)
int GLT_alloc_cta ( long  Ind)
int GLT_alloc_ppa ( long  Ind)
int GLT_exit ( )
int GLU_alloc ( int  Ind)
int GLT_init ( )
int GLT_comb_reset ( )
int GLT_dump_comb ( )
GLU_CB GLT_comb_CB ( GLdouble  coords[3],
GLdouble *  data[4],
GLfloat  weight[4],
GLdouble **  dataOut 
)
int GLT_spu_ ( int  pNr,
Point pta,
Vector vcz 
)
int GLT_spp__ ( ContTab cTab,
int  cNr,
Vector vcz 
)
int GLT_diff_work ( int *  c1Nr,
ContTab c1Tab,
int *  p1Nr,
Point p1Tab,
int  pNr,
Point pTab,
int  cNr,
ContTab cTab,
Vector vcz 
)
int GLT_comm_work ( int *  cNr,
ContTab cTab,
int *  p3Nr,
Point p3Tab,
int  p1Nr,
Point p1Tab,
int  p2Nr,
Point p2Tab,
Vector vcz 
)
int GLT_cta_inc ( )
int GLT_spp_sTyp ( long  sTyp)
GLT_spp_Tex ( long  texNr)
int GLT_spp_Col ( ColRGB sCol)
int GLT_spp_pp ( Vector vcz)
int GLT_start__ ( ObjGX **  gSur)
int GLT_stor_rec ( int  mode,
Point pa1,
Point pa2,
int  ptNr 
)

Variable Documentation

ColRGB GL_actCol
Point* GLU_CombTab =NULL
static
int GLU_CombSiz =0
static
int GLU_CombNr =0
static
int GLU_Err =0
static
int GLU_pTyp
static
Point* GLU_comm_tab
static
int GLU_comm_Max
static
int GLU_comm_pNr
static
ContTab* GLU_cTab
static
int GLU_cMax
static
int GLU_cNr
static
GLUtesselator* ot1 =NULL
static
Point* GLT_pta = NULL
long GLT_pta_SIZ = 0
long GLT_pta_ind
static
long GLT_pta_start
static
ObjGX* GLT_cta
long GLT_cta_SIZ
long GLT_cta_ind
static
ObjGX* GLT_ppa
static
long GLT_ppa_SIZ
static
long GLT_ppa_ind
static
ObjGX GLT_sur
static