Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将相机移到侧面并旋转[Autodesk forge viewer]_Javascript_Camera_Autodesk_Autodesk Forge_Autodesk Viewer - Fatal编程技术网

Javascript 将相机移到侧面并旋转[Autodesk forge viewer]

Javascript 将相机移到侧面并旋转[Autodesk forge viewer],javascript,camera,autodesk,autodesk-forge,autodesk-viewer,Javascript,Camera,Autodesk,Autodesk Forge,Autodesk Viewer,我试着将相机向左、向右、向后和向前移动,并将其向左和向右旋转 这就是我尝试的旋转: function onRotateLeftButtonClicked(event) { event.preventDefault(); var target = viewer.navigation.getTarget(); var q = new THREE.Quaternion(); q.setFromAxisAngle(new THREE.Vector3(0, 0, 1), 0

我试着将相机向左、向右、向后和向前移动,并将其向左和向右旋转

这就是我尝试的旋转:

function onRotateLeftButtonClicked(event) {
    event.preventDefault();
    var target = viewer.navigation.getTarget();
    var q = new THREE.Quaternion();
    q.setFromAxisAngle(new THREE.Vector3(0, 0, 1), 0.1);

    target.applyQuaternion(q);
    viewer.navigation.setTarget(target);
    orientUp();
}
向左移动:

function onLeftButtonClicked(event) {
    event.preventDefault();
    _camera.translateX(-1);
    orientUp();
}
前进:

function onForwardButtonClicked(event) {
    event.preventDefault();
    _camera.translateZ(-1);
    orientUp();
}
但这只在某些情况下有效,而在其他情况下,旋转完全混乱,左右沿z轴旋转,前后沿z轴翻转相机180度

那你怎么能像这样控制摄像机呢

PS:我是以第一人称的视角来做这件事的


注:相反方向明显对称
\u camera
viewer.getCamera()

它在您对摄影机的每次操作中都会显示,navigation.setView是否未调用?在另一个线程中,还讨论了摄影机操作:

在这篇文章中,我们的同事西里尔提到,手机摄像头在虚拟现实中工作得很好。您可以在以下位置找到相关代码:

我还提到了我制作的一个小样本,我在那里。相关代码

你能检查一下这些对你的问题是否有帮助吗?如果它不起作用,你能提供你的代码项目的一个小样本吗?您可以通过电子邮件forge与我们联系。help@autodesk.com如果有任何私人数据