0

我正在尝试管理单击网格(立方体)以进行一些处理。

    var cubeFor3D = new THREE.Mesh(new THREE.CubeGeometry(40,80,40),img3D);

    scene.add(cubeFor3D);
    //
    renderer.render(scene,camera);
    //
    animate();
         //Track the click on cube3d
    cubeFor3D.on('click', function(){

          // response to click...
          console.log('you have clicked on cube 2D');

 });

运行时,我在 Web 控制台上收到此错误:

TypeError: cubeFor3D.on is not a function 

在 API 文档中,它显示为这样:

mesh.on('click',..

但我想我应该用mesh我的网状真实姓名替换。看来我错了。请帮忙。

我在我的文件中包含 API JS:<script src='threex.domevent.js'></script>

4

1 回答 1

0

迟到的答案,但是,如果您将其添加到 init 函数的乞求中,它应该可以工作:

三.Object3D._threexDomEvent.camera(camera);

事实上,我通常会直接在 scene = new THREE.Scene();

于 2013-02-18T10:59:35.823 回答