irpg Community

Full Version: [GML] มุมองศาและระยะ จากวัตถุ 2 ตำแหน่ง
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
[GML] มุมองศาและระยะ จากวัตถุ 2 ตำแหน่ง

บทความนี้จะมาเรียนรู้การหามุมองศาและระยะทาง จากวัตถุที่1 ไปยัง วัตถุที่2
ค่าตัวแปรที่จะต้องมี คือ พิกัดแนวแกน x และ y ของวัตถุทั้ง 2
[Image: large17.png]

เรียนรู้เรื่องสูตร
การหาระยะทาง
[Image: Ch5-1.jpg]
จากสูตรด้านบนเราจะแทนค่าโค้ดใน GM ได้ดังนี้
point_distance(x1, y1, x2, y2)

การหามุมองศา
[Image: sin+cos+tan.bmp]
จากสูตรด้านบนเราจะแทนค่าโค้ดได้
point_direction(x1, y1, x2, y2)

การนำไปใช้งาน
1.รู้ระยะจากวัตถุที่1 ไปยัง วัตถุที่2
การรู้ระยะสามารถนำไปประยุคใช้ได้หลายอย่าง เช่น
-หาระยะจากศตรูถึงตัวผู้กล้า
-หาระยะจากโคมไฟเพื่อให้เกิดแสงเงา
-หาระยะเพื่อให้เกิดเหตุการณ์ที่กำหนด ฯลฯ

2.รู้มุมองศาจากวัตถุที่1 ไปยัง วัตถุที่2
สามารถนำไปประยุคใช้ได้ดังนี้ เช่น
-หาทิศทางจากศัตรูไปยังผู้กล้า
-ทิศทางและขอบเขตการมองของศัตรู
-กำหนดทิศทางเเพื่อกำหนดเหตุการณ์ที่กระทำไว้ ฯลฯ
===============================================

โค้ด
point_distance(x1, y1, x2, y2)
point_direction(x1, y1, x2, y2)

x1 คือ พิกัดแนวแกน x ของวัตถุชิ้นที่ 1
y1 คือ พิกัดแนวแกน y ของวัตถุชิ้นที่ 1
x2 คือ พิกัดแนวแกน x ของวัตถุชิ้นที่ 2
y2 คือ พิกัดแนวแกน y ของวัตถุชิ้นที่ 2

เขียนโค้ดไว้ที่ eventsConfusedtep
Code:
dt = point_distance(x, y, mouse_x, mouse_y)

จากโค้ดตัวอย่าง เราจะได้ค่าระยะทางจากตัววัตถุไปยังเมาส์ โดยให้ไปอยู่ในตัวแปร dt

เขียนโค้ดไว้ที่ eventsConfusedtep
Code:
dc = point_direction(x, y, mouse_x, mouse_y)

จากโค้ดตัวอย่าง เราจะได้ค่ามุมองศาจากตัววัตถุไปยังเมาส์ โดยให้ไปอยู่ในตัวแปร dc

ขอบคุณที่เข้ามาชม สงสัยตรงไหน ถามได้ครับ
;3

สุดยอดครับ มีฟังก์ชั่นคำนวณให้เลย ไม่ต้องคำนวณเองด้วย แมวหน้าแดง