我有一个定义周围环境的立方体贴图纹理,但是我需要将其传递给仅适用于纬度/经度贴图的程序。我真的不知道如何进行翻译。这里有什么帮助吗?
换句话说,我需要从这里出发:
对此(我认为该图像在 x 轴上有一个额外的 -90° 旋转):
update:我得到了投影的正式名称。顺便我发现了相反的投影here http://os.ivrpa.org/panosalado/downloads
像这样投影光栅图像的一般过程是:
for each pixel of the destination image:
calculate the corresponding unit vector in 3-dimensional space
calculate the x,y coordinate for that vector in the source image
sample the source image at that coordinate and assign the value to the destination pixel
最后一步只是插值。我们将重点关注其他两个步骤。
给定纬度和经度的单位向量为(+z 朝向北极,+x 朝向本初子午线):
x = cos(lat)*cos(lon)
y = cos(lat)*sin(lon)
z = sin(lat)
假设立方体围绕原点 +/- 1 个单位(即 2x2x2 整体尺寸)。
一旦我们有了单位向量,我们就可以通过查看绝对值最大的元素来找到它所在的立方体的面。例如,如果我们的单位向量为 ,则 y 元素具有最大的绝对值。它是负数,因此该点将在立方体的 -y 面上找到。通过除以 y 幅值来标准化其他两个坐标,以获得该面内的位置。因此,该点将位于 -y 面上的 x=0.2879、z=0.8939 处。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)