xzw 2 vuotta sitten
vanhempi
commit
4dd5473de8
3 muutettua tiedostoa jossa 31 lisäystä ja 13 poistoa
  1. 12 2
      src/pages/Bim.vue
  2. 6 1
      src/pages/LaserBim.vue
  3. 13 10
      src/utils/ConvertViews.js

+ 12 - 2
src/pages/Bim.vue

@@ -27,18 +27,28 @@ const successCallback = viewMetaData => {
     viewer3D.addEventListener(Glodon.Bimface.Viewer.Viewer3DEvent.ViewAdded, function () {
         //自适应屏幕大小
         window.onresize = function () {
-            viewer3D.resize(document.documentElement.clientWidth, document.documentElement.clientHeight - 40)
+            viewer3D.resize(document.documentElement.clientWidth, document.documentElement.clientHeight/* - 40*/)
         }
         viewAdded = true
         // 渲染3D模型
         viewer3D.render()
  
         window.loaded.resolve(viewer3D)
-    }) 
+    })
+
+    /*
+    let measureConfig = new Glodon.Bimface.Plugins.Measure.MeasureConfig();
+    console.log('measureConfig', measureConfig)
+    measureConfig.viewer = viewer3D;
+    let measure = new Glodon.Bimface.Plugins.Measure.Measure(measureConfig);
+    measure.switchOn();  //measure.isOpen   div.bf-measure-conext
+    */
+    
     /*viewer3D.addEventListener(Glodon.Bimface.Viewer.Viewer3DEvent.MouseClicked, function (objectdata) {
      // 调用viewerDrawing对象的Method,可以继续扩展功能
         alert('objectId : ' + JSON.stringify(objectdata.objectId) + '\n' + 'worldPosition : ' + JSON.stringify(objectdata.worldPosition))
     })*/ 
+    
 }
 
 // 加载失败回调函数

+ 6 - 1
src/pages/LaserBim.vue

@@ -87,7 +87,7 @@ let getView = ()=>{
 const initConvertView = (noNeedBindEvent) => {
     if(sourceApp && targetApp ){//存在且和当前不同
         views.init(sourceApp, targetApp , sourceApp.viewer.inputHandler.domElement, 'laser', getView(), 
-                    sourceApp.viewer.images360.panos.slice(0,2).map(e=>e.position))
+                    sourceApp.viewer.images360.panos.slice(0,2).map(e=>e.position), )
     }
 }
 
@@ -112,6 +112,11 @@ const onLoadSource = () => {
         })  
         
     }) 
+    
+    sourceApp.canChangePos = ()=>{
+        return sourceApp.Potree.settings.displayMode != 'showPanos'
+    }
+    
 }
 const onLoadTarget = () => { 
  

+ 13 - 10
src/utils/ConvertViews.js

@@ -37,19 +37,20 @@ export default class ConvertViews extends THREE.EventDispatcher{
         viewer.setFlySpeedRate(5)
         viewer.getViewer().setTransitionAnimationState(false) //setCameraStatus瞬间变化相机
         
-        /* viewer.addEventListener('Rendered', (e)=>{
+        viewer.addEventListener('Rendered', (e)=>{
             let info = viewer.getCameraStatus() 
             let poseChanged = !math.closeTo(this.lastCamStatus.position, info.position)
                 || !math.closeTo(this.lastCamStatus.target, info.target)
                 || !math.closeTo(this.lastCamStatus.fov, info.fov)
             
-            if(poseChanged){ 
-                this.send(info)
-            }
-            
-            this.lastCamStatus = info 
+            if(poseChanged){
+                if(sourceApp.canChangePos()){
+                    this.send(info)
+                    this.lastCamStatus = info 
+                }  
+            } 
             
-        })  */
+        })  
         
         
         /* viewer.addEventListener(targetApp.Glodon.Bimface.Viewer.Viewer3DEvent.ViewAdded,
@@ -96,6 +97,7 @@ export default class ConvertViews extends THREE.EventDispatcher{
             this.sourceDom.dispatchEvent(event)  
         })
         dom1.addEventListener('mouseup',(e)=>{
+            
             let event = getEvent('mouseup', e)
             this.sourceApp.dispatchEvent(event)   //mouseup 在laser中加在window上的
         })
@@ -164,8 +166,9 @@ export default class ConvertViews extends THREE.EventDispatcher{
             target,
             up: new THREE.Vector3(0,0,1),
             //前三个缺一不可  
+            fov: data.fov ,      //fov 用setCameraStatus 无效
         }
-        //fov 用setCameraStatus 无效
+        
         
          
         this.viewer.setCameraStatus(msg)    
@@ -230,8 +233,8 @@ export default class ConvertViews extends THREE.EventDispatcher{
         let panoPos1 = sourcePano
         
         let panoPos2 = [
-            new THREE.Vector3( -5.313605730801787,  -4.889868407960505,  1.717447893355817),
-            new THREE.Vector3( -5.337403524084278,  -2.5012228235167737, 1.7608838933558175) 
+            new THREE.Vector3( -5.313605730801787,  -4.889868407960505,  1.237447893355817),
+            new THREE.Vector3( -5.337403524084278,  -2.5012228235167737, 1.2808838933558175) 
         ]
          
         let length = panoPos1.length