1、首先需要知道的是,特征尺寸较大,光线可以当作成直线。
2、如图所示,已知入射光线向量I,法向N,那么需要求的包括交点o以及反射光线向量R.
3、假设o点要经过求得了,那么:
OR=IR-IO=2*IP-IO;
又IP=IO+OP;
所以OR=IO+2*OP
即只需要求出OP就可以求出OR.
4、求OP,显然OP为IO在ON方向的投影的负方向。
首先获得N的单位法向量:n=N/|N|
OP=|OP|n
|OP|=|OI|cosθ
cosθ=OI.n/|OI|
|OP|=OI.n=-IO.n
5、所以求出OR.
OR=IO+2*OP=IO+2*|OP|n=IO-2*(IO.n)*n
6、对反射向量进行单位化:
OR_unit=OR/|OR|
7、测试一下,效果如下。