2017-03-02 80 views
0

我正在嘗試將相機向左,向右,向後和向前移動,並將其向左和向右旋轉。將相機移動到兩側並旋轉它[Autodesk forge 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.1); 

    target.applyQuaternion(q); 
    viewer.navigation.setTarget(target); 
    orientUp(); 
} 

向左移動:

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

FOWARD:

function onForwardButtonClicked(event) { 
    event.preventDefault(); 
    _camera.translateZ(-1); 
    orientUp(); 
} 

但是這隻能有時和其他時間的旋轉完全是弄亂了,左右旋轉,沿Z軸向前和向後翻轉相機180度沿着z軸。

那麼你應該如何控制像這樣的相機? PS:我在第一人稱視角中執行此操作。

注意相反的方向顯然是對稱的。 _cameraviewer.getCamera()

回答

0

它看起來在你的每個相機的操縱,navigation.setView不叫?在其他線程,也討論了相機操作: Controlling camera in Forge viewer

在線程,我們的同事西里爾提及the sample he produced,其中照相機的移動非常適用於VR的。你可以找到相關的代碼: https://github.com/cyrillef/google-cardboard-vr/blob/2015c7e9c653422d1c466ff129dc1d503f8218c0/www/js/VRTool.js

我還提到了我製作的一個小樣本,其中我manipulated the camera by mobile。相關代碼 https://github.com/xiaodongliang/Forge-Viewer-Mobile-Sensor/blob/master/www/main-js/MobileGyro.js

你能檢查一下這些是否會對你的問題有所幫助嗎?如果它不起作用,你能提供一個你的代碼項目的小樣本嗎?如果有任何私人數據,可以通過電子郵件[email protected]與我們聯繫。

相關問題