. . . . . .ต่อไปใครตกคณิตศาสตร์คงจะได้รื้อพื้นกันใหม่ละ เราจะมาลุยเรื่อง matrix ซึ่งมีรูปแบบอย่างนี้ครับ |
. . . . . .จากรูปข้างบนเป็น matrix ขนาด 4x4 ช่อง ดูที่ช่องสีเขียวก่อน สำหรับใส่ค่า XYZ matrix ข้างล่างก็คือ T ย่อมากจาก Translation matrix บางคนงง อ้าวอย่างนี้ก็มีค่า X 3 ตัว Y 3 ตัว Z 3 ตัว T 3 ตัวสิ แต่มันมีแค่ XYZ หึหึหึ ถูกแล้วครับ เพราะฉนั้นดูรูปต่อไปนี้ |
. . . . . .ผมได้ใส่ตัวเลข 0 กับ 1 ใน matrix แล้วทีนี้ สังเกตช่องที่มีค่า 1 คราวนี้เราก็ใส่ค่า XYZ ลงไปได้แล้วสิ ไม่ยากๆ บอกแล้ว ชองไหนมีค่า 1 ก็ใส่ค่านั้นลงไปงัย แหม... get ยัง ที่เราเห็นอยู่นี่เรียกว่า Indentity matrix ครับ จำไว้ให้ดี... คราวนี้เรามาดูความหมายของแต่ละสีใน matrix กันว่าใช้งานในด้านไหน สีเขียว ใช้สำหรับ การหมุน การปรับขนาด และ การบิด (rotation, scale and shear) สีน้ำเงินสำหรับการเคลื่อนย้าย matrix (translation) สีแดงและสีดำ ไม่ต้องไปยุ่งมันครับ ปล่อยเท่ๆ ไว้อย่างนั้นละ ทีนี้พอที่จะรู้ค่าที่จะใส่ใน matrix แล้วนะครับ ต่อไปเป็นการดำเนินการกับ matrix ต้องมี 2 matrix ขึ้นไปครับ จะมี matrix หลักอยู่ 1 ตัว คือ Indentity matrix เราก็สร้าง matrix มาอีกตัวมา บวก ลบ คูณ หาร กับ Indentity matrix ก็จะได้ตำแหน่งของสามมิติครับ ทบทวนคณิศาสตร์กันหน่อย การบวกลบ หรือ คูณ Vector ทำกันยังงัย |
Magnitude |pq| = sqrt( Xq^2 + Yq^2 + Xq^2) Addition V1 + V2 = (x1,y1,z1) + (x2, y2, z2) = (x1 + x2,y1 + y2,z1 + z2) Subtracktion V2 - V1 = (x2,y2,z2) - (x1, y1, z1) = (x2 - x1,y2 - y1,z2 - z1) Dot product V1 * V2 = (x1,y1,z1) . (x2, y2, z2) = x1,x2 + y1,y2 + z1,z2 Cross Product V1 x V2 = (x1, y1, z1) x (x2, y2, z2) = (y1,z2 - z1,y2)(z1,x2 - x1,z2)(x1,y2 - y1,x2) |
. . . . . .ฮ่า ฮ่า ฮ่า สงสัยมึนกันไปเป็นแถบๆ มันเป็นสูตรสำคัญครับ ต้องใช้งานในระบบ 3D ต้องค่อยๆทำความเข้าใจ กับสูตรเหล่านี้อาจจะงงตรงที่ Cross Product นี่เขาคิดกันยังงัย ไม่ยากๆ ดูหน้าต่อไป |