net.letskit.redbook.first
Class stencil

java.lang.Object
  extended by net.letskit.redbook.glskeleton
      extended by net.letskit.redbook.first.stencil
All Implemented Interfaces:
java.awt.event.KeyListener, java.util.EventListener, javax.media.opengl.GLEventListener

public class stencil
extends glskeleton
implements javax.media.opengl.GLEventListener, java.awt.event.KeyListener

This program demonstrates use of the stencil buffer for masking nonrectangular regions. Whenever the window is redrawn, a value of 1 is drawn into a diamond-shaped region in the stencil buffer. Elsewhere in the stencil buffer, the value is 0. Then a blue sphere is drawn where the stencil value is 1, and yellow torii are drawn where the stencil value is not 1.

Author:
Kiet Le (java port)

Constructor Summary
stencil()
           
 
Method Summary
 void display(javax.media.opengl.GLAutoDrawable drawable)
           
 void displayChanged(javax.media.opengl.GLAutoDrawable drawable, boolean modeChanged, boolean deviceChanged)
           
 void init(javax.media.opengl.GLAutoDrawable drawable)
           
 void keyPressed(java.awt.event.KeyEvent key)
           
 void keyReleased(java.awt.event.KeyEvent key)
           
 void keyTyped(java.awt.event.KeyEvent key)
           
static void main(java.lang.String[] args)
           
 void reshape(javax.media.opengl.GLAutoDrawable drawable, int x, int y, int w, int h)
           
 
Methods inherited from class net.letskit.redbook.glskeleton
animate, pause, refresh, runExit, setCanvas, setCanvas, setDefaultAnimator, setDefaultListeners
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

stencil

public stencil()
Method Detail

main

public static void main(java.lang.String[] args)

init

public void init(javax.media.opengl.GLAutoDrawable drawable)
Specified by:
init in interface javax.media.opengl.GLEventListener

display

public void display(javax.media.opengl.GLAutoDrawable drawable)
Specified by:
display in interface javax.media.opengl.GLEventListener

reshape

public void reshape(javax.media.opengl.GLAutoDrawable drawable,
                    int x,
                    int y,
                    int w,
                    int h)
Specified by:
reshape in interface javax.media.opengl.GLEventListener

displayChanged

public void displayChanged(javax.media.opengl.GLAutoDrawable drawable,
                           boolean modeChanged,
                           boolean deviceChanged)
Specified by:
displayChanged in interface javax.media.opengl.GLEventListener

keyTyped

public void keyTyped(java.awt.event.KeyEvent key)
Specified by:
keyTyped in interface java.awt.event.KeyListener

keyPressed

public void keyPressed(java.awt.event.KeyEvent key)
Specified by:
keyPressed in interface java.awt.event.KeyListener

keyReleased

public void keyReleased(java.awt.event.KeyEvent key)
Specified by:
keyReleased in interface java.awt.event.KeyListener