Autodesk forge 通过WASD按钮移动摄像机

Autodesk forge 通过WASD按钮移动摄像机,autodesk-forge,autodesk-viewer,Autodesk Forge,Autodesk Viewer,如何使用WAST键控制Forge Viewer中的摄像头 我试过这样的东西 viewer = new Autodesk.Viewing.GuiViewer3D(document.getElementById('forgeViewer')); viewer.start(); addEventListener("keydown", function(event) { if (event.ke

如何使用WAST键控制Forge Viewer中的摄像头

我试过这样的东西

        viewer = new Autodesk.Viewing.GuiViewer3D(document.getElementById('forgeViewer'));
        viewer.start();
        
        addEventListener("keydown", function(event) {
            if (event.keyCode === 87) {
                console.log("W pressed")
                camera = viewer.getCamera()
                camera.translateZ(50)
                viewer.applyCamera(camera)
            }
        });

您缺少EventListener的对象,它应该是:

  • 打字稿:
  • javascript:

  • 对于按键事件,我建议您尝试一下HotKeyManger。 像这样的方法应该会奏效:

    const热键=[{
    键码:[
    Autodesk.Viewing.KeyCode.w
    ],
    onRelease:(e)=>console.log(“刚刚按下了W”)
    },{
    键码:[
    Autodesk.Viewing.KeyCode.s
    ],
    onRelease:(e)=>console.log(“刚刚按下S键”)
    },{
    键码:[
    Autodesk.Viewing.KeyCode.a
    ],
    onRelease:(e)=>console.log(“刚刚按下了A”)
    },{
    键码:[
    Autodesk.Viewing.KeyCode.d
    ],
    onRelease:(e)=>console.log(“刚刚按了D键”)
    }];
    让manager=this.viewer.getHotkeyManager()
    管理器。热键(“HZ”,热键)
    document.addEventListener('keyup', (event)=>{});
    
    $(document).bind('keyup', (event)=>{});