我确信我的JavaScript代码中有使用Three.js OrbitControls所需的一切。我有:
<script>"OrbitControls.js"></script>
还有:
var cameraControls;
cameraControls = new THREE.OrbitControls(camera, renderer.domElement);
它没有抱怨。但我的错误是。。。
Uncaught TypeError:无法读取public_html/OrborControls.js:76 中未定义的属性"LEFT"(21:20:28:855|error,javascript)
指的是轨道控制公司的文件,上面写着:
this.mouseButtons = { ORBIT: THREE.MOUSE.LEFT, ZOOM: THREE.MOUSE.MIDDLE, PAN: THREE.MOUSE.RIGHT };
我不知道该怎么修,任何东西都将不胜感激!!
Like@ryanpcmcquen已经在他的评论中暗示您缺少THREE.MOUSE
对象。您也应该加载three.js
库以使其工作。
这里在three.js库的核心中定义了THREE.MOUSE
对象。
THREE.MOUSE = { LEFT: 0, MIDDLE: 1, RIGHT: 2 };
更新
确保在代码中定义了THREE.MOUSE
对象的位置加载了build
版本的库。我建议从http://threejs.org/网站
- 此处:http://threejs.org/build/three.js对于完整版本或
- 此处:http://threejs.org/build/three.min.js对于缩小版
这两个文件都有THREE.MOUSE
对象。
注意:还要考虑库的正确加载顺序。您必须在OrbitControls.js
脚本之前包含three.js
脚本。