|
@@ -591,34 +591,13 @@ class NavigationCube{
|
|
|
faceMesh.addEventListener('click', (e)=>{
|
|
|
this.changingView = true
|
|
|
faceMesh.material.uniforms.faceColor.value.set(Colors.blue)
|
|
|
- /*
|
|
|
- this.changingView = true
|
|
|
- let viewStart = viewer.scene.view.clone();
|
|
|
- viewer["set"+name+'View']()
|
|
|
- let viewEnd = viewer.scene.view.clone();
|
|
|
- viewer.scene.view.copy(viewStart) //先变回来,以渐变
|
|
|
-
|
|
|
- let duration = 4000
|
|
|
- viewer.scene.view.setView({
|
|
|
- position: viewEnd.position ,
|
|
|
- quaternion:new THREE.Quaternion().setFromEuler(viewEnd.rotation),
|
|
|
- duration,
|
|
|
- callback: ()=>{
|
|
|
- this.changingView = false
|
|
|
- faceMesh.material.uniforms.faceColor.value.set(Colors.black)
|
|
|
- console.log('回2', name)
|
|
|
- navCubeViewer.dispatchEvent('content_changed')
|
|
|
- },onUpdate: (e)=>{
|
|
|
- console.log(e, viewer.scene.view.position.toArray(), viewer.scene.view.rotation.toArray())
|
|
|
- }
|
|
|
- }) */
|
|
|
+
|
|
|
if(viewer.mainViewport.camera != viewer.scene.cameraO){
|
|
|
viewer.scene.cameraO.position.copy(viewer.mainViewport.camera.position)
|
|
|
viewer.scene.cameraO.quaternion.copy(viewer.mainViewport.camera.quaternion)
|
|
|
viewer.mainViewport.camera = viewer.scene.cameraO
|
|
|
- viewer.setCameraMode(CameraMode.ORTHOGRAPHIC)
|
|
|
-
|
|
|
-
|
|
|
+ viewer.setCameraMode(CameraMode.ORTHOGRAPHIC)
|
|
|
+ navCubeViewer.controls.setEnable(false)
|
|
|
}
|
|
|
|
|
|
viewer.focusOnObject(viewer.bound, 'boundingBox', 1000, {dir:directions[name].clone()}).promise.done(()=>{
|
|
@@ -816,7 +795,7 @@ class NavCubeViewer extends ViewerBase{
|
|
|
let dis = halfHeight / Math.tan( THREE.Math.degToRad(viewer.scene.cameraP.fov/2))
|
|
|
|
|
|
view.position.copy(viewer.mainViewport.shiftTarget).sub(view.direction.clone().multiplyScalar(dis));
|
|
|
-
|
|
|
+ this.controls.setEnable(true)
|
|
|
}
|
|
|
}
|
|
|
|