20.11.2016 Views

ANDROID APP

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

142 บทที่ 5 อีเวนต์ต่างๆ ที่เกิดขึ้นในส่วนการติดต่อกับผู้ใช้งาน<br />

เมธอด draw() จะถูกใช้ในการประกาศอีลีเมนต์ของรูปสามเหลี่ยมทั้ง 4 ด้าน ส่วนฐานที่เป็นรูป<br />

สี่เหลี่ยมจัตุรัสนั้น เราจะสร้างจากรูปสามเหลี่ยม 2 รูปต่อกัน ทำให้รูปทรงปิรามิดนี้ประกอบไปด้วยรูป<br />

สามเหลี่ยมจำนวน 6 รูป และประกอบไปด้วยมุมของรูปสามเหลี่ยมจำนวน 18 มุม ในรูปที่ 5.5<br />

จะแสดงรูปทรงของปิรามิดในขณะที่เคลื่อนไหวไปทั่วๆ จอ<br />

รูปที่ 5.5 ตัวอย่างของการใช้ไลบรารี OpenGL ES ในการสร้างรูปทรงปิรามิด<br />

พร้อมทั้งหมุนและเคลื่อนที่ไปทั่วจอภาพ<br />

ในขั้นตอนต่อไป เราจะใช้ไลบราลี OpenGL ES ในการสร้างคลาสของ GLSurfaceView.<br />

Renderer เพื่อสร้างพื้นผิวบนรูปทรงปิรามิดตามชุดคำสั่งที่ 5.18 ซึ่งเราจะใช้เมธอดจำนวน 3 ตัว<br />

ในการทำงานนี้<br />

m onSurfaceCreated() – ใช้เริ่มต้นการทำงานของเฟรมเวิร์ค OpenGL<br />

m onSurfaceChanged() – ใช้กำหนดจุดเริ่มต้นของวิวในตอนที่เฟรมเวิร์คเริ่มทำงาน<br />

หรือเมื่อมีการเปลี่ยนแปลงขนาดของวิว<br />

m onDrawFrame() - ใช้ในการวาดรูปกราฟิกของรูปทรงต่างๆ<br />

ชุดคำสั่งที่ 5.18 src/com/cookbook/open_gl/PyramidRenderer.java<br />

package com.cookbook.open_gl;<br />

import javax.microedition.khronos.egl.EGLConfig;<br />

import javax.microedition.khronos.opengles.GL10;<br />

import android.opengl.GLSurfaceView;<br />

/**<br />

* Render a tumbling Pyramid

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!