我有很多json文件,我使用loader.load使用three.js加载。当我点击与json文件名对应的文本内容时,它们会显示出来。
如何通过第二次点击卸载或隐藏对象?
这是我的代码:
document.getElementById("dest").getElementsByTagName("span").onclick = function(element, key) {myFunction()};
function myFunction() {
document.getElementById("dest").getElementsByTagName("span").height = "100%";
var t = event.target.textContent;
var a = t.slice(1,t.length-1);
path = 'examples/brain_parts/' + groupNames[a] + '.json';
loader.load( path,
function ( geometry, materials, data ) {
var material = new THREE.MultiMaterial( materials );
var object = new THREE.Mesh( geometry, material );
object.scale.set(5,5,5);
object.position.set( 0, 0, 0 );
scene.add( object );
render();
})
}
答案 0 :(得分:0)
var a = t.slice(1,t.length-1);
var objName = "groupNames" + a;
然后遍历场景,寻找具有等于objName值的属性“name”的对象。或者你可以做到
var obj = scene.getObjectByName( objName );
如果您找到了一个然后将其删除,如果您没找到,请致电
loader.load(...
var object = new THREE.Mesh( geometry, material );
object.name = objName;
...
);