Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.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
如何在three.js中通过名称或id访问场景,没有scene.childs只有scenes_Three.js - Fatal编程技术网

如何在three.js中通过名称或id访问场景,没有scene.childs只有scenes

如何在three.js中通过名称或id访问场景,没有scene.childs只有scenes,three.js,Three.js,我试试这个 我得到了这个错误 未捕获的TypeError:THREE.getObjectByName不是函数 为什么我不能通过名字或id访问场景 代码是 // setup scenes var scene-1 = new THREE.Scene(); scene-1.add('cube_red'); var scene-2 = new THREE.Scene(); scene-2.add('cube_green'); // get scenes by name var sceneObj =

我试试这个

我得到了这个错误

未捕获的TypeError:THREE.getObjectByName不是函数

为什么我不能通过名字或id访问场景

代码是

// setup scenes
var scene-1 = new THREE.Scene();
scene-1.add('cube_red');

var scene-2 = new THREE.Scene();
scene-2.add('cube_green');

// get scenes by name
var sceneObj = THREE.Object3D.getObjectByName("scene-1");
console.log(sceneObj.userData.someProp);

// or 

selectedScene = THREE.Object3D.getObjectByName("scene-1");

有什么建议吗?

变量名中不能有-1或-2。

您发布的代码不是有效的Javascript。但这会产生与您得到的错误相同的错误:

var scene1 = new THREE.Scene();
var sceneObj = THREE.Object3D.getObjectByName("scene1");
在使用getObjectByName之前,需要实例化一个对象。这将有助于:

//create a Scene
var scene1 = new THREE.Scene();

//create an Object3D
var object1 = new THREE.Object3D();

//give the object a name. By default objects in three don't have names
//but you can add one manually
object1.name = 'obj1';

//add the object as a child of the scene
scene1.add(object1);

//now search through the scene's children for an object called 'obj1'
var obj1 = scene1.getObjectByName('obj1');

console.log(object1 === obj1); //true

这是一个例子,我知道通常我的名字像这个cube\u 1或cube\u 2,你不能发布非工作代码,期望人们做出推断。thnx的答案,但我想你不理解我的问题,我怀疑这使我们两个。也许你愿意再解释一遍?在寻求帮助时,请始终确保发布有效代码。