JOGL - Clase GLJPanel
Este capítulo explica cómo dibujar un marco básico de JOGL usando la clase GLJpanel. Es un componente ligero de Swing que proporciona soporte de renderizado OpenGL. Se proporciona por compatibilidad con Swing. Aquí crearemos una instancia de un JFrame y agregaremos el objeto GLJpanel a la instancia de JFrame usando eladd() método.
El siguiente programa genera un marco básico usando GLJPanel con ventana abatible -
import javax.media.opengl.GLAutoDrawable;
import javax.media.opengl.GLCapabilities;
import javax.media.opengl.GLEventListener;
import javax.media.opengl.GLProfile;
import javax.media.opengl.awt.GLCanvas;
import javax.swing.JFrame;
public class BasicFrame implements GLEventListener {
@Override
public void display(GLAutoDrawable arg0) {
// method body
}
@Override
public void dispose(GLAutoDrawable arg0) {
//method body
}
@Override
public void init(GLAutoDrawable arg0) {
// method body
}
@Override
public void reshape(GLAutoDrawable arg0, int arg1, int arg2, int arg3, int arg4) {
// method body
}
public static void main(String[] args) {
//getting the capabilities object of GL2 profile
final GLProfile profile = GLProfile.get(GLProfile.GL2);
GLCapabilities capabilities = new GLCapabilities(profile);
// The GLJpanel class
GLJPanel gljpanel = new GLJPanel( glcapabilities );
BasicFrame b = new BasicFrame();
gljpanel.addGLEventListener(b);
gljpanel.setSize(400, 400);
//creating frame
final JFrame frame = new JFrame (" Basic Frame");
//adding canvas to it
frame.getContentPane().add( gljpanel);
frame.setSize(frame.getContentPane().getPreferredSize());
frame.setVisible(true);
}//end of main
}//end of classimport
Si compila y ejecuta el programa anterior, se genera la siguiente salida. Muestra un marco básico formado cuando usamosGLJPanel con ventana abatible -