Jogl-gljpanel-class

提供:Dev Guides
移動先:案内検索

JOGL-GLJPanelクラス

この章では、GLJpanelクラスを使用してJOGL基本フレームを描画する方法について説明します。 OpenGLレンダリングサポートを提供する軽量のSwingコンポーネントです。 Swingとの互換性のために提供されています。 ここでは、JFrameをインスタンス化し、* add()*メソッドを使用してGLJpanelオブジェクトをJFrameのインスタンスに追加します。

次のプログラムは、スイングウィンドウで GLJPanel を使用して基本フレームを生成します-

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

上記のプログラムをコンパイルして実行すると、次の出力が生成されます。 これは、スイングウィンドウで GLJPanel を使用したときに形成される基本的なフレームを示しています-

基本フレーム