Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 网格检测只有在打开控制台后才能工作_Javascript_Three.js_Developer Tools_Console.log_Raycasting - Fatal编程技术网

Javascript 网格检测只有在打开控制台后才能工作

Javascript 网格检测只有在打开控制台后才能工作,javascript,three.js,developer-tools,console.log,raycasting,Javascript,Three.js,Developer Tools,Console.log,Raycasting,我用three.js编写了一个应用程序,我想在鼠标点击时检测一些圆圈。 问题是,只有当我打开然后关闭它时,它才能工作得很好,这与Chrome开发者工具无关!如果我不这样做,它很难检测到在圆圈上的点击,一次五次 我读了这个 我删除了我的控制台调用,尽管我没有在IE上运行它。虽然,在我下载的three.js文件中有很多控制台调用,但我认为这不是问题所在 我能做什么 板条箱圆的代码: for (var i = 0; i <6; i++) { fo

我用three.js编写了一个应用程序,我想在鼠标点击时检测一些圆圈。 问题是,只有当我打开然后关闭它时,它才能工作得很好,这与Chrome开发者工具无关!如果我不这样做,它很难检测到在圆圈上的点击,一次五次

我读了这个

我删除了我的控制台调用,尽管我没有在IE上运行它。虽然,在我下载的three.js文件中有很多控制台调用,但我认为这不是问题所在

我能做什么

板条箱圆的代码:

for (var i = 0; i <6; i++) {

                        for (var j = 0; j < 16; j++) {

                              var crcl = {};


                                crcl.obj = new THREE.Mesh( new THREE.CircleGeometry( 1.7, 30, 0, Math.PI * 2 ), mat);
                                crcl.obj.position.set(j*4.5+7, 277-i*3, 250);
                                crcl.obj.scale.set(1,1,1);

                                scene.add(crcl.obj);
                                SlotsToDetect.push(crcl.obj); // array to help detect click 
                                PlayingSlotMatrix[i][j]=crcl; // array that hold circles for future handling

                              }
 }
编辑:我想补充一点,有时我会遇到一个错误,即无法读取triple.js文件中var intersectsubstands=函数对象raycaster,intersects{..}函数的未定义属性“getsubstands”


编辑2:Chrome不再显示警报。不过,它显示了控制台调用。这是什么意思?

我们可以看看您的代码吗
var intersectsSLOTS = raycaster.intersectObjects(SlotsToDetect, true); 
 if(intersectsSLOTS.length>0 ){

               clickedObject=intersectsSLOTS[0].object; 
               updateSlots(clickedObject.id);

  }