1#ifndef COIN_SBTESSELATOR_H
2#define COIN_SBTESSELATOR_H
27#include <Inventor/SbBasic.h>
28#include <Inventor/lists/SbList.h>
29#include <Inventor/SbVec3f.h>
36typedef void SbTesselatorCB(
void * v0,
void * v1,
void * v2,
void * data);
40 SbTesselator(SbTesselatorCB * func = NULL,
void * data = NULL);
43 void beginPolygon(SbBool keepVertices = FALSE,
45 void addVertex(
const SbVec3f &v,
void * data);
46 void endPolygon(
void);
47 void setCallback(SbTesselatorCB * func,
void * data);
50 struct SbTVertex * newVertex(
void);
54 SbList <struct SbTVertex*> vertexStorage;
57 SbTVertex * headV, * tailV;
62 void (*callback)(
void * v0,
void * v1,
void * v2,
void * data);
67 void emitTriangle(SbTVertex * v);
68 void cutTriangle(SbTVertex * t);
69 void calcPolygonNormal(
void);
72 const SbVec3f &c,
float &cx,
float &cy);
74 float circleSize(SbTVertex * v);
76 SbBool clippable(SbTVertex * v);
77 SbBool isTriangle(SbTVertex * v);
78 SbBool pointInTriangle(SbTVertex * p, SbTVertex * t);
79 float area(SbTVertex * t);
81 static float heap_evaluate(
void * v);
82 static int heap_compare(
void * v0,
void * v1);
The SbTesselator class is used to tessellate polygons into triangles.
Definition SbTesselator.h:38
The SbVec3f class is a 3 dimensional vector with floating point coordinates.
Definition SbVec3f.h:37