在手机上启动VR工具并直接向前看时,我想让视图在屏幕中央显示整个模型。视图应该是一个小角度,所以我可以看到整个建筑物的楼层。目前它是直接向前,这使您看不到整个模型的视图。我怎么能做到这一点?
例如,在此Autodesk示例中,当您输入VR时,模型位于中心。
http://viewervr.herokuapp.com/
当前代码,我正在尝试调整相机位置
document.getElementById("toolbar-vrTool").addEventListener("click", function () {
let _navapi = viewer.navigation;
let _camera = _navapi.getCamera();
let xValue = viewer.getCamera().position.x;
let yValue = viewer.getCamera().position.y;
let zValue = viewer.getCamera().position.z;
zValue = zValue * 0.5;
yValue = (zValue * 0.7071) * -1;
_camera.position.set(xValue, yValue, zValue);
});
当前视图
查看我想要
答案 0 :(得分:1)
有一个名为fitToView()的函数可以完全按照您的意愿执行。但是在使用之前,您需要等待几何体完全加载。我还在下面的示例中添加了对setHomeViewFrom()的调用,将Home位置重置为fitToView()位置结果,以便以后导航。
oViewer.addEventListener (Autodesk.Viewing.GEOMETRY_LOADED_EVENT, onViewerGeometryLoaded) ;
function onViewerGeometryLoaded () {
oViewer.removeEventListener (Autodesk.Viewing.GEOMETRY_LOADED_EVENT, onViewerGeometryLoaded) ;
oViewer.fitToView (true) ;
setTimeout (function () { oViewer.autocam.setHomeViewFrom (oViewer.navigation.getCamera ()) ; }, 1000) ;
}