學習光線追蹤 10 三角形

2021-10-01 20:43:03 字數 750 閱讀 3915

在opengl或者d3d中,都有乙個最基本的圖元,就是三角形,三角形可以組成任意形狀,並且計算起來也容易,為了能讓我們繪製出更多的形狀,這次來實現乙個三角形類。

三角形在空間中形成了乙個平面,所以,三角形一定在某個平面上,所以先判斷光線是否能打到掃三角形所在平面,如果光線打到了三角形所在平面,那麼再計算打在平面上的點是否在三角形內。判斷光線是否打在平面上已經在上一節平面中實現了,現在要實現的判斷點在三角形內,這裡使用的方法是,將三角形三個點和待判斷點形成三個向量,兩兩計算叉積,三個叉積方向一樣就說明點在三角形內。另一種就是判斷三個向量的角度之和,效果最後都一樣。

求大三角形中三角形個數

一道筆試程式設計題要求求乙個大三角形中所有小三角形的個數,大約是下面這種情況 首先想到是的將問題由求邊長為n的三角形個數 求邊長為n 1的三角形個數 求邊長為1的三角形個數 1,回溯求得所有三角形個數。但是再仔細一看因為有重疊三角形和倒置的三角形,所以這個方法不可行。接著找到三角形個數由三部分組成 ...

經典演算法 (三)帕斯卡三角形(楊輝三角形)

楊輝三角,是二項式係數在三角形中的一種幾何排列。在歐洲,這個表叫做帕斯卡三角形。帕斯卡 1623 1662 是在1654年發現這一規律的,比楊輝要遲393年,比賈憲遲600年。簡介 楊輝三角,是二項式係數在三角形中的一種幾何排列。在歐洲,這個表叫做帕斯卡三角形。帕斯卡 1623 1662 是在165...

三角形面積

算是自己第一道正式寫的演算法幾何吧,先從簡單的開始吧,加油!描述 給你三個點,表示乙個三角形的三個頂點,現你的任務是求出該三角形的面積 輸入 每行是一組測試資料,有6個整數x1,y1,x2,y2,x3,y3分別表示三個點的橫縱座標。座標值都在0到10000之間 輸入0 0 0 0 0 0表示輸入結束...