我使用三个j来显示视频,用户可以使用鼠标浏览视频,例如:
https://threejs.org/examples/?q=video#webgl_video_panorama_equirectangular
代码:https://github.com/mrdoob/three.js/blob/master/examples/webgl_video_panorama_equirectangular.html
有没有办法显示用户在容器内观察的位置(位置和方向),如下所示:
http://ignitersworld.com/lab/imageViewer.html
在左上角有一个显示当前位置的小方块。我想知道视图面临的位置和方向(全部是2D)
我怎么能实现这个目标?
编辑:
方向已经解决。
我正在寻找视频中的布局位置,这可能吗?如图所示:https://imgur.com/a/xsNYM
答案 0 :(得分:1)
您可以获取相机方向并计算角度。这些角度将是您在球体上的2D方向:
var dir = camera.getWorldDirection();
var groundProjection = dir.clone().projectOnPlane(new THREE.Vector3(0,1,0))
var longitudeRadians = Math.atan2(groundProjection.x, groundProjection.z);
var latitudeRadians = Math.atan2(groundProjection.length(), dir.y)
// longitudeRadians is now an angle between -3.14 and 3.14
// latitudeRadians is now an angle between 0 and 3.14
以下是一个正在运行的示例:https://jsfiddle.net/holgerl/bqvdotps/