JOGL-스윙 캔버스
이 장에서는 다음을 사용하여 JOGL 기본 프레임을 그리는 방법을 설명합니다. Canvas, 및 JFramejavax.swing 패키지의 클래스. 여기에서는 JFrame을 인스턴스화하고 캔버스 개체를 JFrame의 인스턴스에 추가합니다.add() 방법.
AWT와 함께 Canvas를 사용하면 무거운 기능이있는 그래픽 프레임이 제공됩니다. 가벼운 그래픽 프레임을 사용하려면GLCanvas스윙과 함께. 사용 중GLCanvas 스윙을 사용하면 GLCanvas 에 JFrame 창에 직접 추가하거나 JPanel.
아래는 JOGL의 조합으로 JOGL 기본 프레임을 생성하는 프로그램입니다. GLCanvas 수업과 JFramejavax.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 canvas
final GLCanvas glcanvas = new GLCanvas(capabilities);
BasicFrame b = new BasicFrame();
glcanvas.addGLEventListener(b);
glcanvas.setSize(400, 400);
//creating frame
final JFrame frame = new JFrame (" Basic Frame");
//adding canvas to it
frame.getContentPane().add(glcanvas);
frame.setSize(frame.getContentPane().getPreferredSize());
frame.setVisible(true);
}//end of main
}//end of classimport
위 프로그램을 컴파일하여 실행하면 다음과 같은 출력이 생성됩니다. 우리가 사용할 때 형성되는 기본 프레임을 보여줍니다.GLCanvas 스윙 창.