public class GLUTessellatorSupport extends Object
GLUtessellator to
 tessellate complex polygons into triangles.
 
 The standard pattern for using GLUTessellatorSupport to prepare a GLUtessellator is as follows: 
 GLUTessellatorSupport glts = new GLUTessellatorSupport();
 GLUtessellatorCallback cb = ...; // Reference to an
 implementation of GLUtessellatorCallback.
 Vec4 normal = new Vec4(0, 0, 1); // The polygon's normal. This example
 shows an appropriate normal for tessellating x-y coordinates.
 
 glts.beginTessellation(cb, new Vec4(0,
 0, 1));
 try
 {
 GLUtessellator tess = glts.getGLUtessellator();
 }
 finally
 {
 glts.endTessellation();
 }
 | Modifier and Type | Class and Description | 
|---|---|
| static class  | GLUTessellatorSupport.CollectIndexListsCallbackProvides the callback class used to capture the shapes determined by the tessellator. | 
| static class  | GLUTessellatorSupport.CollectPrimitivesCallbackProvides the callback class used to capture triangle and line primitive indices determined by the tessellator. | 
| protected static class  | GLUTessellatorSupport.OGLDrawPrimitivesCallback | 
| static class  | GLUTessellatorSupport.RecursiveCallbackRecursively forwards boundary tessellation results from one GLU tessellator to another. | 
| static class  | GLUTessellatorSupport.VertexDataProvides a container for associating a tessellator's vertex with its index and application-specified edge flag. | 
| Modifier and Type | Field and Description | 
|---|---|
| protected GLUtessellator | tess | 
| Constructor and Description | 
|---|
| GLUTessellatorSupport()Creates a new GLUTessellatorSupport, but otherwise does nothing. | 
| Modifier and Type | Method and Description | 
|---|---|
| void | beginTessellation(GLUtessellatorCallback callback,
                 Vec4 normal)Prepares this GLUTessellatorSupport's internal GLU tessellator for use. | 
| static String | convertGLUTessErrorToString(int errno)Converts the specified GLU tessellator error number to a string description. | 
| static GLUtessellatorCallback | createOGLDrawPrimitivesCallback(GL2 gl)Creates a new  GLUtessellatorCallbackthat draws tessellated polygons as OpenGL
 primitives by calling glBegin, glEnd, and glVertex. | 
| void | endTessellation()Frees any GLU resources used by this GLUTessellatorSupport, and invalidates this instance's internal GLU
 tessellator. | 
| GLUtessellator | getGLUtessellator()Returns this GLUTessellatorSupport's internal  GLUtessellatorinstance. | 
protected GLUtessellator tess
public GLUTessellatorSupport()
public void beginTessellation(GLUtessellatorCallback callback, Vec4 normal)
GLU.gluNewTess(), and configures the
 tessellator with the specified callback and normal with calls to GLU.gluTessCallback(javax.media.opengl.glu.GLUtessellator,
 int, javax.media.opengl.glu.GLUtessellatorCallback) and GLU.gluTessNormal(javax.media.opengl.glu.GLUtessellator,
 double, double, double), respectively.callback - the callback to configure the GLU tessellator with.normal - the normal to configure the GLU tessellator with.IllegalArgumentException - if the callback or the normal is null.public static String convertGLUTessErrorToString(int errno)
errno - a GLU enumeration indicating the error.public static GLUtessellatorCallback createOGLDrawPrimitivesCallback(GL2 gl)
GLUtessellatorCallback that draws tessellated polygons as OpenGL
 primitives by calling glBegin, glEnd, and glVertex.gl - the GL context to draw into.IllegalArgumentException - if the GL is null.public void endTessellation()
public GLUtessellator getGLUtessellator()
GLUtessellator instance. This
 returns a valid GLUtessellator instance if called between beginTessellation(javax.media.opengl.glu.GLUtessellatorCallback,
 gov.nasa.worldwind.geom.Vec4) and endTessellation(). This returns null if called from outside a
 beginTessellation/endTessellation block.