我需要在3D绘图上重绘轴标签(实现为精灵),为此需要在添加更新的标签之前删除旧标签。然而,这让我感到悲伤:旧标签只是拒绝离开现场!我使用Three.js发布了66。
使用Three.js示例场景对此进行测试:http://threejs.org/examples/#webgl_sprites我只需添加以下代码:
setInterval(removesprites, 1000);
所以每一秒我们都会删除所有的精灵:
function removesprites() {
for ( var i = group.children.length-1; i>=0 ; i-- ) {
var sprite = group.children[ i ];
console.log("removing");
scene.remove(sprite);
}
}
精灵都在Object3D组中。我在另一篇文章中读到需要反向移除对象(因此需要移除后向循环),但无论我循环使用哪种方式,标签都不会被删除。
任何想法?
答案 0 :(得分:2)
而不是
scene.remove( sprite );
使用
group.remove( sprite );
请参阅Object3D.remove()
。
three.js r.67