ผลต่างระหว่างรุ่นของ "แนวฉาก"

จากวิกิพีเดีย สารานุกรมเสรี
เนื้อหาที่ลบ เนื้อหาที่เพิ่ม
Banlu Kemiyatorn (คุย | ส่วนร่วม)
Banlu Kemiyatorn (คุย | ส่วนร่วม)
ไม่มีความย่อการแก้ไข
บรรทัด 1: บรรทัด 1:
[[Image:Surface normal illustration.png|right|thumb|ค่านอร์มอลสำหรับจุดบนพื้นผิวหาได้จากค่านอร์มอลของระนาบสัมผัสที่สัมผัสพื้นผิวตรงจุดนั้น]]
[[Image:Surface normal illustration.png|right|thumb|ค่านอร์มอลสำหรับจุดบนพื้นผิวหาได้จากค่านอร์มอลของระนาบสัมผัสที่สัมผัสพื้นผิวตรงจุดนั้น]]
[[Image:Normal vectors2.svg|thumb|right|ภาพแสดงนอร์มอลทั้งสองค่าของโพลีกอน]]

'''surface normal''' หรือ '''นอร์มอล''' ค่า[[Euclidean vector|เวกเตอร์]]ที่ตั้งฉากกับพื้นผิวราบ สำหรับพื้นผิวที่ไม่เรียบ ค่านอร์มอลที่[[จุด (เรขาคณิต)|จุด]]หนึ่งๆบนพื้นผิวคือค่าเวกเตอร์ที่ตั้งฉากกับ[[ระนาบสัมผัส]]ที่สัมผัสพื้นผิวที่จุดนั้น หรือตั้งฉากกับเส้นสัมผัสเส้นโค้งในกรณีสองมิติ
'''surface normal''' หรือ '''นอร์มอล''' ค่า[[Euclidean vector|เวกเตอร์]]ที่ตั้งฉากกับพื้นผิวราบ สำหรับพื้นผิวที่ไม่เรียบ ค่านอร์มอลที่[[จุด (เรขาคณิต)|จุด]]หนึ่งๆบนพื้นผิวคือค่าเวกเตอร์ที่ตั้งฉากกับ[[ระนาบสัมผัส]]ที่สัมผัสพื้นผิวที่จุดนั้น หรือตั้งฉากกับเส้นสัมผัสเส้นโค้งในกรณีสองมิติ


ใน[[คอมพิวเตอร์กราฟิกส์สามมิติ]]นิยมใช้ค่านอร์มอลกำหนดมุมระหว่างทิศทางที่พื้นผิวหันไปทำกับทิศทางของต้นกำเนิดแสงเพื่อเพื่อคำนวณการสะท้อนแบบ [[flat shading]] หรือใช้กำหนดที่มุมแต่ละมุมของพื้นผิวโพลีกอน (vertex normal) เพื่อใช้เกลี่ยค่านอร์มอลของสองพื้นผิวที่ติดกันเข้าหากัน ทำให้พื้นผิวที่ทำมุมกันสามารถสะท้อนแสดงได้เหมือนกับเป็นพื้นผิวเรียบโค้ง ([[phong shading]])
ใน[[คอมพิวเตอร์กราฟิกส์สามมิติ]]นิยมใช้ค่านอร์มอลกำหนดมุมระหว่างทิศทางที่พื้นผิวหันไปทำกับทิศทางของต้นกำเนิดแสงเพื่อเพื่อคำนวณการสะท้อนแบบ [[flat shading]] หรือใช้กำหนดที่มุมแต่ละมุมของพื้นผิวโพลีกอน (vertex normal) เพื่อใช้เกลี่ยค่านอร์มอลของสองพื้นผิวที่ติดกันเข้าหากัน ทำให้พื้นผิวที่ทำมุมกันสามารถสะท้อนแสดงได้เหมือนกับเป็นพื้นผิวเรียบโค้ง ([[phong shading]])
<br clear="all"/>



== การคำนวณหาค่านอร์มอล ==
== การคำนวณหาค่านอร์มอล ==

[[Image:Normal vectors2.svg|thumb|right|ภาพแสดงนอร์มอลทั้งสองค่าของโพลีกอน]]
การหาค่านอร์มอลของโพลีกอน สามารถหาได้จาก[[ผลคูณไขว้]]ของเวกเตอร์ขอบสองด้านที่ไม่ขนานกันของโพลีกอน ค่านอร์มอลจะมีสองค่าชี้ไปในทิศทางตรงข้ามกัน จึงอาจใช้[[กฎมือขวา]]ร่วมกำหนดทิศทางที่นอร์มอลหรือหน้าของโพลีกอนหันไป
การหาค่านอร์มอลของโพลีกอน สามารถหาได้จาก[[ผลคูณไขว้]]ของเวกเตอร์ขอบสองด้านที่ไม่ขนานกันของโพลีกอน ค่านอร์มอลจะมีสองค่าชี้ไปในทิศทางตรงข้ามกัน จึงอาจใช้[[กฎมือขวา]]ร่วมกำหนดทิศทางที่นอร์มอลหรือหน้าของโพลีกอนหันไป


บรรทัด 16: บรรทัด 14:


== การใช้งาน ==
== การใช้งาน ==
=== งานคอมพิวเตอร์กราฟิกส์สามมิติ ===
=== คอมพิวเตอร์กราฟิกส์สามมิติ ===

[[Image:Reflection_angles.svg|frame|ค่านอร์มอล (normal) กับ[[การสะท้อน (ฟิสิกส์)|การสะท้อน]]]]
[[Image:Surface normal.png|right|thumb|300px|[[สนามเวกเตอร์]]ของนอร์มอลบนพื้นผิว]]
[[File:Phong-shading-sample.jpg|right|thumb|300px|การใช้ vertex normal เปลี่ยนแปลงการสะท้อนพื้นผิว ใน [[Phong shading]]]]


ในงาน[[คอมพิวเตอร์กราฟิกส์สามมิติ]] นอร์มอลและ[[กฎมือขวา]]ใช้กำหนดว่าโพลีกอนจะหันไปในทิศทางใดและจะสะท้อนแสงอย่างไร ทั้งนี้ค่านอร์มอลจะถูกนำมาใช้ในการกำหนดการสะท้อนหรือหักเหแสงของพื้นผิว และอาจจะไม่ตั้งฉากกับพื้นผิวจริงก็ได้
ในงาน[[คอมพิวเตอร์กราฟิกส์สามมิติ]] นอร์มอลและ[[กฎมือขวา]]ใช้กำหนดว่าโพลีกอนจะหันไปในทิศทางใดและจะสะท้อนแสงอย่างไร ทั้งนี้ค่านอร์มอลจะถูกนำมาใช้ในการกำหนดการสะท้อนหรือหักเหแสงของพื้นผิว และอาจจะไม่ตั้งฉากกับพื้นผิวจริงก็ได้


* [[Vertex normal]] : ในบางกรณี ซอฟต์แวร์สำหรับ[[การเรนเดอร์ภาพด้วยคอมพิวเตอร์|เรนเดอร์ภาพ]]อาจคำนวนค่านอร์มอลพื้นผิวจากค่า vertex normal เช่นในโพลีกอนสามเหลี่ยมจะกำหนดค่า vertex normal สามค่าให้ vertex ทั้งสามมุม โดยจะเป็นค่าเวกเตอร์ที่ไม่จำเป็นต้องตั้งฉากกับพื้นผิวโพลีกอนเพื่อมาใช้คำนวน[[สนามเวกเตอร์]]ของนอร์มอลพื้นผิวโพลีกอน เช่นถ้ามีโพลีกอนสองชิ้นวางติดกัน แล้วกำหนด vertex normal ของทั้งสองชิ้นให้วิ่งไปทิศทางเดียวกับนอร์มอลพื้นผิว รอยต่อของโพลีกอนจะแสดงรอยหยักตามขอบ แต่ถ้า vertexให้ normal วิ่งไปทางเดียวกับ normal ของพื้นผิวโพลีกอนข้างเคียง (คือ vertex normal ตรงรอยต่อของทั้งสองพื้นผิวชี้ไปทิศทางเดียวกัน) การสะท้อนของโพลีกอนชิ้นแรกจะถูกเกลี่ยเข้าหาการสะท้อนของโพลีกอนข้างเคียง ทำให้มองดูเสมือนเป็นพื้นผิวเรียบโค้ง




* [[Vertex normal]] : ในบางกรณี ซอฟต์แวร์สำหรับ[[การเรนเดอร์ภาพด้วยคอมพิวเตอร์|เรนเดอร์ภาพ]]อาจคำนวนค่านอร์มอลพื้นผิวจากค่า vertex normal เช่นในโพลีกอนสามเหลี่ยมจะกำหนดค่า vertex normal สามค่าให้ vertex ทั้งสามมุม โดยจะเป็นค่าเวกเตอร์ที่ไม่จำเป็นต้องตั้งฉากกับพื้นผิวโพลีกอนเพื่อมาใช้คำนวน[[สนามเวกเตอร์]]ของนอร์มอลพื้นผิวโพลีกอน เช่นถ้ามีโพลีกอนสองชิ้นวางติดกัน แล้วกำหนด vertex normal ของทั้งสองชิ้นให้วิ่งไปทิศทางเดียวกับนอร์มอลพื้นผิว รอยต่อของโพลีกอนจะแสดงรอยหยักตามขอบ แต่ถ้า vertexให้ normal วิ่งไปทางเดียวกับ normal ของพื้นผิวโพลีกอนข้างเคียง (คือ vertex normal ตรงรอยต่อของทั้งสองพื้นผิวชี้ไปทิศทางเดียวกัน) การสะท้อนของโพลีกอนชิ้นแรกจะถูกเกลี่ยเข้าหาการสะท้อนของโพลีกอนข้างเคียง ทำให้มองดูเสมือนเป็นพื้นผิวเรียบโค้ง


=== ทัศนศาสตร์เชิงเรขาคณิต ===
<table><tr><td>
[[Image:Reflection_angles.svg|frame|ค่านอร์มอล (normal) กับ[[การสะท้อน (ฟิสิกส์)|การสะท้อน]]]]
[[Image:Surface normal.png|right|thumb|300px|[[สนามเวกเตอร์]]ของนอร์มอลบนพื้นผิว]]</td><td>
'''นอร์มอล''' คือเส้นที่ตั้งฉากกับพื้นผิว<ref>{{cite web
[[File:Phong-shading-sample.jpg|right|thumb|300px|การใช้ vertex normal เปลี่ยนแปลงการสะท้อนพื้นผิว ใน [[Phong shading]]]]</td></tr></table>
|url= http://www.glenbrook.k12.il.us/gbssci/phys/Class/refln/u13l1c.html
|title= The Law of Reflection
|accessdate=2008-03-31
|format= HTML
|work= The Physics Classroom Tutorial
}}</ref> ของตัวกลางต่างๆ คำว่านอร์มอลในที่นี้ใช้ในแง่ของคณิตศาสตร์ หมายถึงการตั้งฉาก โดยใน[[การสะท้อน_(ฟิสิกส์)|การสะท้อน]]ของแสง [[มุมตกกระทบ]] หมายถึงมุมระหว่างนอร์มอลกับทิศทางที่แสงวิ่งเข้า ขณะที่ [[มุมสะท้อน]] คือมุมระหว่างนอร์มอลกับทิศทางที่แสงสะท้อนออกไป
==References==

{{reflist}}



[[หมวดหมู่:คอมพิวเตอร์กราฟิกส์สามมิติ]]
[[หมวดหมู่:คอมพิวเตอร์กราฟิกส์สามมิติ]]

รุ่นแก้ไขเมื่อ 18:04, 5 กุมภาพันธ์ 2552

ค่านอร์มอลสำหรับจุดบนพื้นผิวหาได้จากค่านอร์มอลของระนาบสัมผัสที่สัมผัสพื้นผิวตรงจุดนั้น
ภาพแสดงนอร์มอลทั้งสองค่าของโพลีกอน

surface normal หรือ นอร์มอล ค่าเวกเตอร์ที่ตั้งฉากกับพื้นผิวราบ สำหรับพื้นผิวที่ไม่เรียบ ค่านอร์มอลที่จุดหนึ่งๆบนพื้นผิวคือค่าเวกเตอร์ที่ตั้งฉากกับระนาบสัมผัสที่สัมผัสพื้นผิวที่จุดนั้น หรือตั้งฉากกับเส้นสัมผัสเส้นโค้งในกรณีสองมิติ

ในคอมพิวเตอร์กราฟิกส์สามมิตินิยมใช้ค่านอร์มอลกำหนดมุมระหว่างทิศทางที่พื้นผิวหันไปทำกับทิศทางของต้นกำเนิดแสงเพื่อเพื่อคำนวณการสะท้อนแบบ flat shading หรือใช้กำหนดที่มุมแต่ละมุมของพื้นผิวโพลีกอน (vertex normal) เพื่อใช้เกลี่ยค่านอร์มอลของสองพื้นผิวที่ติดกันเข้าหากัน ทำให้พื้นผิวที่ทำมุมกันสามารถสะท้อนแสดงได้เหมือนกับเป็นพื้นผิวเรียบโค้ง (phong shading)

การคำนวณหาค่านอร์มอล

การหาค่านอร์มอลของโพลีกอน สามารถหาได้จากผลคูณไขว้ของเวกเตอร์ขอบสองด้านที่ไม่ขนานกันของโพลีกอน ค่านอร์มอลจะมีสองค่าชี้ไปในทิศทางตรงข้ามกัน จึงอาจใช้กฎมือขวาร่วมกำหนดทิศทางที่นอร์มอลหรือหน้าของโพลีกอนหันไป

ถ้าระนาบเกิดจากสมการ เวกเตอร์ จะเป็นค่านอร์มอลของระนาบ ถ้าพื้นผิว(ที่อาจไม่เรียบ) S ถูกพาราเมไทรซ์ในระบบพิกัดเชิงเส้นโค้ง x(s, t) โดยจำนวนจริง s และ t ค่านอร์มอลจะหาได้จากผลคูณไขว้ของอนุพันธ์บางส่วน

การใช้งาน

คอมพิวเตอร์กราฟิกส์สามมิติ

สนามเวกเตอร์ของนอร์มอลบนพื้นผิว
การใช้ vertex normal เปลี่ยนแปลงการสะท้อนพื้นผิว ใน Phong shading

ในงานคอมพิวเตอร์กราฟิกส์สามมิติ นอร์มอลและกฎมือขวาใช้กำหนดว่าโพลีกอนจะหันไปในทิศทางใดและจะสะท้อนแสงอย่างไร ทั้งนี้ค่านอร์มอลจะถูกนำมาใช้ในการกำหนดการสะท้อนหรือหักเหแสงของพื้นผิว และอาจจะไม่ตั้งฉากกับพื้นผิวจริงก็ได้

  • Vertex normal : ในบางกรณี ซอฟต์แวร์สำหรับเรนเดอร์ภาพอาจคำนวนค่านอร์มอลพื้นผิวจากค่า vertex normal เช่นในโพลีกอนสามเหลี่ยมจะกำหนดค่า vertex normal สามค่าให้ vertex ทั้งสามมุม โดยจะเป็นค่าเวกเตอร์ที่ไม่จำเป็นต้องตั้งฉากกับพื้นผิวโพลีกอนเพื่อมาใช้คำนวนสนามเวกเตอร์ของนอร์มอลพื้นผิวโพลีกอน เช่นถ้ามีโพลีกอนสองชิ้นวางติดกัน แล้วกำหนด vertex normal ของทั้งสองชิ้นให้วิ่งไปทิศทางเดียวกับนอร์มอลพื้นผิว รอยต่อของโพลีกอนจะแสดงรอยหยักตามขอบ แต่ถ้า vertexให้ normal วิ่งไปทางเดียวกับ normal ของพื้นผิวโพลีกอนข้างเคียง (คือ vertex normal ตรงรอยต่อของทั้งสองพื้นผิวชี้ไปทิศทางเดียวกัน) การสะท้อนของโพลีกอนชิ้นแรกจะถูกเกลี่ยเข้าหาการสะท้อนของโพลีกอนข้างเคียง ทำให้มองดูเสมือนเป็นพื้นผิวเรียบโค้ง


ทัศนศาสตร์เชิงเรขาคณิต

ค่านอร์มอล (normal) กับการสะท้อน

นอร์มอล คือเส้นที่ตั้งฉากกับพื้นผิว[1] ของตัวกลางต่างๆ คำว่านอร์มอลในที่นี้ใช้ในแง่ของคณิตศาสตร์ หมายถึงการตั้งฉาก โดยในการสะท้อนของแสง มุมตกกระทบ หมายถึงมุมระหว่างนอร์มอลกับทิศทางที่แสงวิ่งเข้า ขณะที่ มุมสะท้อน คือมุมระหว่างนอร์มอลกับทิศทางที่แสงสะท้อนออกไป

References

  1. "The Law of Reflection" (HTML). The Physics Classroom Tutorial. สืบค้นเมื่อ 2008-03-31.