diff --git a/packages/viewer/example/example.html b/packages/viewer/example/example.html index 07da5c2b3..146e8f163 100644 --- a/packages/viewer/example/example.html +++ b/packages/viewer/example/example.html @@ -31,7 +31,7 @@
- +
diff --git a/packages/viewer/package.json b/packages/viewer/package.json index 3c4ed8809..26e7a3247 100644 --- a/packages/viewer/package.json +++ b/packages/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@speckle/viewer", - "version": "2.0.2", + "version": "2.0.4", "description": "A 3d viewer for Speckle, based on threejs.", "homepage": "https://speckle.systems", "repository": { diff --git a/packages/viewer/src/assets/example.html b/packages/viewer/src/assets/example.html index 8d9531fa8..a7020d472 100644 --- a/packages/viewer/src/assets/example.html +++ b/packages/viewer/src/assets/example.html @@ -31,7 +31,7 @@
- +
diff --git a/packages/viewer/src/modules/InteractionHandler.js b/packages/viewer/src/modules/InteractionHandler.js index 76ccab606..3df4623f9 100644 --- a/packages/viewer/src/modules/InteractionHandler.js +++ b/packages/viewer/src/modules/InteractionHandler.js @@ -26,6 +26,8 @@ export default class InteractionHandler { this.viewer.scene.add( this.selectedObjects ) this.selectedObjects.renderOrder = 1000 + this.selectedObjectsUserData = [] + this.selectionHelper.on( 'object-doubleclicked', this._handleDoubleClick.bind( this ) ) this.selectionHelper.on( 'object-clicked', this._handleSelect.bind( this ) ) @@ -63,17 +65,20 @@ export default class InteractionHandler { return // exit the whole func here, points cause all sorts of trouble when being selected (ie, bbox stuff) } + this.selectedObjectsUserData.push( objs[0].object.userData ) + let box = new THREE.BoxHelper( objs[0].object, 0x23F3BD ) box.material = this.selectionEdgesMaterial this.selectedObjects.add( box ) this.viewer.needsRender = true - this.viewer.emit( 'select', this.selectedObjects.children.filter( o => o.type !== 'BoxHelper' ) ) + this.viewer.emit( 'select', this.selectedObjectsUserData ) } deselectObjects() { this.selectedObjects.clear() + this.selectedObjectsUserData = [] this.viewer.needsRender = true - this.viewer.emit( 'select', this.selectedObjects.children.filter( o => o.type !== 'BoxHelper' ) ) + this.viewer.emit( 'select', this.selectedObjectsUserData ) } toggleSectionBox() {