JOGL - GLJPanel Class
Questo capitolo spiega come disegnare un frame di base JOGL utilizzando la classe GLJpanel. È un componente Swing leggero che fornisce supporto per il rendering OpenGL. Viene fornito per compatibilità con Swing. Qui creeremo un'istanza di un JFrame e aggiungeremo l'oggetto GLJpanel all'istanza di JFrame usando iladd() metodo.
Il seguente programma genera un frame di base utilizzando GLJPanel con finestra a battente -
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
Se compili ed esegui il programma sopra, viene generato il seguente output. Mostra una cornice di base formata quando usiamoGLJPanel con finestra a battente -