如何在三个js更新轨迹球控件

时间:2015-02-20 09:02:50

标签: javascript three.js controls trackball

我在three.js有一个项目,我需要在窗口调整大小时更新轨迹球控件。我需要更新调用具有新输入变量的函数的整个控件。重新创建控件会导致崩溃,我不想删除控件并创建可能导致垃圾的新原因。我有一个类似的问题How to update createControls's function input variables at javascript?,但我认为这是一个更完整的问题。

1 个答案:

答案 0 :(得分:2)

如果您想在调整窗口大小时更新TrackballControls,可以使用此模式:

window.addEventListener( 'resize', onWindowResize, false );

function onWindowResize() {

    camera.aspect = window.innerWidth / window.innerHeight;
    camera.updateProjectionMatrix();

    renderer.setSize( window.innerWidth, window.innerHeight );

    controls.handleResize(); // for TrackballControls

    render();

}

您必须根据画布的大小来修改此模式。

请参阅http://threejs.org/examples/misc_controls_trackball.html

three.js r.70