JOGL - ผ้าใบพร้อมสวิง
บทนี้จะอธิบายวิธีการวาดเฟรมพื้นฐาน JOGL โดยใช้ Canvasและ JFrameคลาสของแพ็คเกจ javax.swing ที่นี่เราจะสร้างอินสแตนซ์ JFrame และเพิ่มวัตถุ canvas ไปยังอินสแตนซ์ของ JFrame โดยใช้ไฟล์add() วิธี.
การใช้ Canvas กับ AWT ช่วยให้คุณได้เฟรมกราฟิกที่มีคุณสมบัติหนา คุณจำเป็นต้องใช้เพื่อให้มีเฟรมกราฟิกน้ำหนักเบาGLCanvasพร้อมสวิง ขณะใช้งานGLCanvas ด้วย Swing คุณสามารถวาง GLCanvas ใน JFrame หน้าต่างโดยตรงหรือคุณสามารถเพิ่มลงใน JPanel.
ด้านล่างนี้เป็นโปรแกรมที่สร้างเฟรมพื้นฐาน JOGL ด้วยการรวมกันของ JOGL GLCanvas ชั้นเรียนและ JFrameคลาสของแพ็คเกจjavax.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 พร้อมหน้าต่างบานสวิง