implicit.h
#ifndef _math_isosurf_implicit_h
#define _math_isosurf_implicit_h
typedef struct point { /* a three-dimensional point */
double x, y, z; /* its coordinates */
} POINT;
typedef struct vertex { /* surface vertex */
POINT position, normal; /* position and surface normal */
} VERTEX;
typedef struct vertices { /* list of vertices in polygonization */
int count, max; /* # vertices, max # allowed */
VERTEX *ptr; /* dynamically allocated */
} VERTICES;
#define TET 0 /* use tetrahedral decomposition */
#define NOTET 1 /* no tetrahedral decomposition */
extern "C" {
char * polygonize(double(*function)(double,double,double),
double size, int bounds,
double x, double y, double z,
int(*triproc)(int,int,int,VERTICES), int mode);
}
#endif