diff --git a/packages/viewer-sandbox/src/Sandbox.ts b/packages/viewer-sandbox/src/Sandbox.ts index 295d32ef2..31364e118 100644 --- a/packages/viewer-sandbox/src/Sandbox.ts +++ b/packages/viewer-sandbox/src/Sandbox.ts @@ -126,16 +126,16 @@ export default class Sandbox { this.refresh() }) viewer.on(ViewerEvent.UnloadComplete, (url: string) => { + url this.removeViewControls() this.addViewControls() this.properties = this.viewer.getObjectProperties() - viewer.World.reduceWorld(this.viewer.getWorldTree().getRenderTree(url).treeBounds) }) viewer.on(ViewerEvent.UnloadAllComplete, (url: string) => { this.removeViewControls() this.addViewControls() this.properties = this.viewer.getObjectProperties() - viewer.World.resetWorld() + // viewer.World.resetWorld() url }) viewer.on(ViewerEvent.ObjectClicked, (selectionEvent: SelectionEvent) => { diff --git a/packages/viewer/src/modules/SpeckleRenderer.ts b/packages/viewer/src/modules/SpeckleRenderer.ts index 8e65cef4e..35e57fca6 100644 --- a/packages/viewer/src/modules/SpeckleRenderer.ts +++ b/packages/viewer/src/modules/SpeckleRenderer.ts @@ -600,6 +600,11 @@ export default class SpeckleRenderer { this.rootGroup.remove(this.rootGroup.getObjectByName(subtreeId)) this.updateShadowCatcher() + const batches = this.batcher.getBatches(subtreeId) + batches.forEach((value) => { + this.viewer.World.reduceWorld(value.bounds) + }) + this.batcher.purgeBatches(subtreeId) this.updateDirectLights() this.updateHelpers()