在项目中接到一个需求,是不让相机视角转到地面以下.我们之前有添加过鼠标交互控制器

    1. new THREE.OrbitControls(camera, renderer.domElement)

    只需要在控制器上做限制即可

    1. // 监听鼠标事件
    2. let controls = new THREE.OrbitControls(camera, labelRenderer.domElement);
    3. // 控制上下旋转范围
    4. controls.minPolarAngle = 0;
    5. controls.maxPolarAngle = Math.PI / 2;
    6. controls.addEventListener('change', renderFn);

    这样鼠标就只能在平面只上进行观察了.当然,如果你使用鼠标右键拖拽建筑到上面,还是可以观察到模型底部区域的.最后放一张阶段性的成果图,纪念一下这一个月的three.js学习成果
    image.png