From 95e420bd4a407b64ddc983ca5d2f17ed34d4f0ad Mon Sep 17 00:00:00 2001 From: Adrien Berthet Date: Mon, 6 Jan 2020 15:11:38 +0100 Subject: [PATCH] fix(core): remove objects of a GeometryLayer from the Scene The property object3d (an instance of THREE.Object3D, most of the time THREE.Group) was not correctly removed for a GeometryLayer, when calling View#removeLayer. Now, if the layer is a geometry one, the GeometryLayer#delete method is called once more, and should remove the object3d property from its parent (usually a THREE.Scene). --- src/Layer/GeometryLayer.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Layer/GeometryLayer.js b/src/Layer/GeometryLayer.js index 3b9ecf1b22..db2682c9ac 100644 --- a/src/Layer/GeometryLayer.js +++ b/src/Layer/GeometryLayer.js @@ -193,12 +193,12 @@ class GeometryLayer extends Layer { disposeMesh(obj); } }); - } else { - if (this.object3d.parent) { - this.object3d.parent.remove(this.object3d); - } - this.object3d.traverse(disposeMesh); } + + if (this.object3d.parent) { + this.object3d.parent.remove(this.object3d); + } + this.object3d.traverse(disposeMesh); } /**