JOGL - Lớp GLJPanel

Chương này giải thích cho bạn cách vẽ một khung cơ bản JOGL bằng lớp GLJpanel. Nó là một thành phần Swing nhẹ cung cấp hỗ trợ kết xuất OpenGL. Nó được cung cấp để tương thích với Swing. Ở đây, chúng tôi sẽ khởi tạo một JFrame và thêm đối tượng GLJpanel vào phiên bản của JFrame bằng cách sử dụngadd() phương pháp.

Chương trình sau tạo một khung cơ bản bằng cách sử dụng GLJPanel với cửa sổ Swing -

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

Nếu bạn biên dịch và thực thi chương trình trên, kết quả sau sẽ được tạo. Nó cho thấy một khung cơ bản được hình thành khi chúng ta sử dụngGLJPanel có cửa sổ xoay -