我有两个领域,全景图像是映射的。我想做两个渐变效果的全景之间的平稳过渡。对于这两幅全景图,我都设置了最佳视角的初始摄像机方向。现在的问题是,如果用户在第一个全景图中看到某个摄像机角度,然后单击某个按钮来切换全景图,我希望给出淡出效果,并直接降落在另一个全景的初始摄像机角度上。但是由于两台pano共用一台普通相机,我不能用相机来实现它,所以我设计了以下解决方案-
在这里,我找不到旋转全景的公式来看相机。(就像相机是静态的,而pano是旋转的,以达到类似的效果,就像我们在移动相机一样)。有人能帮忙找出相对于相机旋转全景(球体)的公式吗?
发布于 2017-05-17 05:59:45
矩阵是解决旋转问题的有力工具。我做了一个简单的解释。

一开始,摄像机位于左球体的中心,面向初始视点,然后,摄像机面对另一个点,现在,摄像机的旋转发生了变化,然后,摄像机移动到右球体的中心,并保持其方向。我们需要旋转正确的球体。如果C是我们想让相机面对的点,首先,我们旋转A到B,第二,我们旋转一些角度θ等于C到A。
那么,怎么做呢?我使用了矩阵,因为A是一个单位矩阵中的一个初始点,从A到C的旋转可以用一个矩阵来表示,由three.js函数matrix4.lookAt(eye,center,up)计算,‘眼睛’是摄像机的位置,‘中心’是C的坐标,' up‘是相机上的向量。然后,从C到A的旋转矩阵是从A到C的矩阵的逆矩阵,因为相机现在是面对B的,所以摄像机的矩阵等于A到B的旋转矩阵。
最后,我们把它放在一起,最后的旋转矩阵可以写成:rotationMatrix = matrixAtoB.multiply(new THREE.Matrix4().getInverse(matrixAtoC));。
这是一种矩阵方法,你也可以用球极系统来解决这个问题。
https://stackoverflow.com/questions/43997187
复制相似问题