From a5dcff873e316283e8b24187ac131cf4e55cf04e Mon Sep 17 00:00:00 2001 From: Dimitrie Stefanescu Date: Fri, 23 Apr 2021 20:02:08 +0100 Subject: [PATCH] feat(viewer): adds buttons for some of the new functionality in the example app --- packages/viewer/example/example.html | 6 +++++ packages/viewer/src/assets/example.html | 6 +++++ .../viewer/src/modules/InteractionHandler.js | 22 ++++--------------- 3 files changed, 16 insertions(+), 18 deletions(-) diff --git a/packages/viewer/example/example.html b/packages/viewer/example/example.html index 082489bca..07da5c2b3 100644 --- a/packages/viewer/example/example.html +++ b/packages/viewer/example/example.html @@ -36,6 +36,12 @@
+ View: + + + + +
diff --git a/packages/viewer/src/assets/example.html b/packages/viewer/src/assets/example.html index c2200cebb..8d9531fa8 100644 --- a/packages/viewer/src/assets/example.html +++ b/packages/viewer/src/assets/example.html @@ -36,6 +36,12 @@
+ View: + + + + +
diff --git a/packages/viewer/src/modules/InteractionHandler.js b/packages/viewer/src/modules/InteractionHandler.js index 564d68465..943531390 100644 --- a/packages/viewer/src/modules/InteractionHandler.js +++ b/packages/viewer/src/modules/InteractionHandler.js @@ -154,12 +154,12 @@ export default class InteractionHandler { /** * Rotates camera to some canonical views - * @param {string} side Can be any of front, back, up, down, right, left. + * @param {string} side Can be any of front, back, up (top), down (bottom), right, left. * @param {Number} fit [description] * @param {Boolean} transition [description] * @return {[type]} [description] */ - rotateTo( side, fit = 1.2, transition = true ) { + rotateTo( side, transition = true ) { const DEG90 = Math.PI * 0.5 const DEG180 = Math.PI @@ -173,10 +173,12 @@ export default class InteractionHandler { break case 'up': + case 'top': this.viewer.controls.rotateTo( 0, 0, transition ) break case 'down': + case 'bottom': this.viewer.controls.rotateTo( 0, DEG180, transition ) break @@ -189,21 +191,5 @@ export default class InteractionHandler { break } - if ( this.sectionBox.display.visible ) { - const box = new THREE.Box3().setFromObject( this.sectionBox.boxMesh ) - this.viewer.controls.zoomToBox( box, fit, transition ) - return - } - - if ( this.viewer.sceneManager.objects.length === 0 ) { - let box = new THREE.Box3( new THREE.Vector3( -1,-1,-1 ), new THREE.Vector3( 1,1,1 ) ) - this.viewer.controls.fitToBox( box, fit, transition ) - return - } - - let box = new THREE.Box3().setFromObject( this.viewer.sceneManager.userObjects ) - this.viewer.controls.fitToBox( box, fit, transition ) - this.viewer.controls.setBoundary( box ) - } }