Je génère des objets à partir d'un tableau que j'ai défini comme ceci (ce n'est pas limité à ces trois):
var links = [['Linkedin','img/linkedin.png','-300','-230', '600'],
['Google+', 'img/google.png', '0', '-230', '600'],
['Twitter', 'img/Twitter.png', '300', '-230', '600']];
Maintenant, il passe par chaque boucle pour créer et ajouter les objets à la scène par Three.JS comme ceci:
$.each(links, function(i, item) {
var thisItemTexture = THREE.ImageUtils.loadTexture(item[1]);
thisItemGeo = new THREE.CubeGeometry(60, 60, 60,1 ,1 , 1);
thisItemMat = new THREE.MeshBasicMaterial({map: thisItemTexture });
thisItem = new THREE.Mesh(thisItemGeo, thisItemMat);
scene.add(thisItem);
thisItem.position.x = item[2];
thisItem.position.y = item[3];
thisItem.position.z = item[4];
thisItem.castShadow = true;
thisItem.receiveShadow = true;
});
La question est:
Comment puis-je accéder aux objets que j'ai créés dans chaque boucle ci-dessus?
Tu peux le faire:
myObject.name = "objectName";
...
var object = scene.getObjectByName( "objectName" );
ou pour rechercher récursivement le graphique de la scène
var object = scene.getObjectByName( "objectName", true );
Vous pouvez également effectuer une recherche par ID.
var object = scene.getObjectById( 4, true );
three.js r.61