球面点三维坐标到纹理二维坐标的转换

来源:互联网 发布:linux:yy 编辑:程序博客网 时间:2024/05/16 18:48

 

把全景图像贴在一个固定半径的三维球体上,这样该视点空间就建立起来了。这里的固定半径对应固

定的焦距。

三维球体的半径为r,水平转动角度为h[02PI]),上下转动角度为p[-PI/2PI/2]),所以球面上一

点的三维坐标sphere(x,y,z)=(r*cosp*cosh,r*cosp*sinh,r*sinp)

反向变换有p=arcsin(z/r) ,h=arctan(y/x)

当把p对应到纹理的V方向,把H对应到纹理的U方向,UV的范围都是[0,1]。在知道球面坐标xyz和半

r以后,球面点对应的纹理坐标就是V=arcsin(z/r)/PI+0.5,U=arctan(y/x)/2/PI

原创粉丝点击