Explorar o código

fix: almost done

xzw hai 1 ano
pai
achega
d4a1913d33

+ 18 - 19
public/static/lib/potree/potree.js

@@ -82488,16 +82488,13 @@ void main()
 	        }
 	        
 	        
-	        if(this.measureType == 'MulDistance_shape'){
-	            if(absoluteState){
-	                if(hoverObject == 'single'){
-	                    marker.material = this.getMarkerMaterial('select'); //路径选中后marker是非选中状态, 但是颜色一样
-	                }else {
-	                    marker.material = this.getMarkerMaterial('default');
-	                }  
+	        if(this.measureType == 'MulDistance_shape'){ 
+	            if(state == 'hover' && hoverObject == 'single'){
+	                marker.material = this.getMarkerMaterial('select'); //路径选中后marker是非选中状态, 但是颜色一样
 	            }else {
-	                 
-	            }
+	                marker.material = this.getMarkerMaterial('default');
+	            }  
+	             
 	        }else {
 	            if(absoluteState){
 	                marker.material = this.getMarkerMaterial('select');
@@ -91309,7 +91306,8 @@ void main()
 	const Colors = {
 	    black : '#161A1A',
 	    blue: '#3290ff',
-	    gray: '#878585' ,
+	    gray: '#f6f6f6' ,
+	    grayDeep:'#f3f3f3',
 	    white:'#ffffff'
 	};
 
@@ -91320,10 +91318,10 @@ void main()
 
 	class base{
 	    constructor(){
-	        this.faceDefaultColor = Colors.black;//14936556,
-	        this.wireframeDefaultColor = 13421772,
+	        this.faceDefaultColor = Colors.gray;//14936556,
+	        /* this.wireframeDefaultColor = 13421772,
 	        this.faceHighlightColor = 12255212,
-	        this.wireframeHighlightColor = 3330982;
+	        this.wireframeHighlightColor = 3330982 */
 	    }
 
 
@@ -91334,7 +91332,7 @@ void main()
 	            n[o++] = s + 1;
 	        var r = new MeshBasicMaterial({
 	            color: this.faceDefaultColor,
-	            side: DoubleSide
+	            side: DoubleSide, 
 	        })
 	          , a = new Float32Array(3 * e.length);
 	        t.setAttribute("position", new BufferAttribute(a,3).copyVector3sArray(e)),
@@ -91346,7 +91344,7 @@ void main()
 	     
 	    createWireframe(e ) { 
 	        let line = LineDraw.createFatLine(e,{
-		        color: Colors.white , 
+		        color: Colors.grayDeep , 
 				lineWidth : 2,
 	            viewer:   navCubeViewer,
 	            depthTest:true, depthWrite:true,
@@ -91662,8 +91660,8 @@ void main()
 	            side: DoubleSide,
 	            transparent: !1, 
 	            uniforms:{
-	                faceColor: {type:'v3',   value:  new Color(Colors.black)  } , 
-	                textColor: {type:'v3',   value:  new Color(Colors.white)  } , 
+	                faceColor: {type:'v3',   value:  new Color(Colors.white)  } , 
+	                textColor: {type:'v3',   value:  new Color(Colors.black)  } , 
 	                map: {type: 't',    value: this.texture },
 	            },
 	            vertexShader:`
@@ -91858,7 +91856,7 @@ void main()
 	                });
 	                faceMesh.addEventListener('mouseleave', (e)=>{
 	                    if(viewer.mainViewport.view.isFlying())return
-	                    faceMesh.material.uniforms.faceColor.value.set(Colors.black);
+	                    faceMesh.material.uniforms.faceColor.value.set(Colors.white);
 	                    //console.log('回', name)
 	                    navCubeViewer.dispatchEvent('content_changed');
 	                });
@@ -91874,7 +91872,7 @@ void main()
 	                    }                        
 	                     
 	                    navCubeViewer.switchView('ortho', dir, ()=>{ 
-	                        faceMesh.material.uniforms.faceColor.value.set(Colors.black);
+	                        faceMesh.material.uniforms.faceColor.value.set(Colors.white);
 	                        viewer.dispatchEvent({type:'viewChanged', name });
 	                    }); 
 	                    faceMesh.material.uniforms.faceColor.value.set(Colors.blue); 
@@ -91939,6 +91937,7 @@ void main()
 	class NavCubeViewer extends ViewerBase{
 	   constructor(domElement, listenViewport){
 	        super(domElement,  {name:'navCube', antialias:true/* , preserveDrawingBuffer:true */} );
+	        domElement.style.opacity = 0.9;
 	        
 	        navCubeViewer = this; 
 	        this.scene = new Scene; 

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 1 - 1
public/static/lib/potree/potree.js.map


+ 36 - 32
src/sdk/laser/core/enter.js

@@ -242,7 +242,9 @@ var enter = ({
             if (measure.parent) {
                 //未被删除
                 isShape ? bus.emit("graphChange", {path:measure.points, center:measure.getCenter()}) : bus.emit("update");
-                
+                if(measure.isBaseLine){
+                    viewer.dispatchEvent('baseLineChanged')
+                }
             }
         });
         /* measure.addEventListener("highlight", (e) => {
@@ -281,6 +283,9 @@ var enter = ({
                     measure,
                 });
                 viewer.scene.removeMeasurement(measure);
+                if(measure.isBaseLine){
+                    viewer.dispatchEvent('baseLineRemoved')
+                }
             },
             end: () => {
                 //完成 相当于右键
@@ -444,20 +449,31 @@ var enter = ({
         
         fixPoint.disMeasure1 = disMeasure1;
         fixPoint.disMeasure2 = disMeasure2;
-        
-        
-        
             
-          
-        
-        
     }
     
     let removeMeasureForPoint = (fixPoint)=>{
         viewer.scene.removeMeasurement(fixPoint.disMeasure1);  
         viewer.scene.removeMeasurement(fixPoint.disMeasure2);  
+        fixPoint.disMeasure1 = null
+        fixPoint.disMeasure2 = null
+        fixPoint.basePoint = null 
+    }
+    let updateMeasureForPoint = (fixPoint, {onlyBasePoint}={})=>{
+        let info = getMeasurePointsInfo(fixPoint)
+        if(!info)return
+        if(!onlyBasePoint){
+            fixPoint.disMeasure1.points = info.disMeasure1.points
+            fixPoint.disMeasure1.update({ifUpdateMarkers:true})
+        }
+        fixPoint.disMeasure1.guideLinePoints = info.disMeasure1.guideLinePoints 
+        fixPoint.disMeasure1.updateGuideLines()
+        fixPoint.disMeasure2.points = info.disMeasure2.points
+        fixPoint.disMeasure2.update({ifUpdateMarkers:true})
+        fixPoint.disMeasure2.guideLinePoints = info.disMeasure2.guideLinePoints 
+        fixPoint.disMeasure2.updateGuideLines()
+        
     }
-    
     
     
     
@@ -753,45 +769,33 @@ var enter = ({
                     viewer.fixPoints.push(fixPoint)
                 }
                  
-                
+                let baseLineChanged = ()=>{
+                    updateMeasureForPoint(fixPoint)
+                } 
+                viewer.addEventListener('baseLineChanged',baseLineChanged)  
                 const ret = {  
                     bus,
                     destroy : measureFun ? measureFun.clear : ()=>{
-                        console.log('destroy'  )
-                        removeMeasureForPoint(fixPoint) 
+                        console.log('destroy'  ) 
+                        ret.quitMeasure() 
                         let index = viewer.fixPoints.indexOf(fixPoint)
-                        index > -1 && viewer.fixPoints.splice(index,1)
+                        index > -1 && viewer.fixPoints.splice(index,1)  
                     },
-                    quitMeasure(){//退出测量模式,删除测量线
+                    quitMeasure(){//退出测量模式,删除测量线. 基准线被删时
                         console.log('quitMeasure'  )
                         removeMeasureForPoint(fixPoint) 
-
+                        viewer.removeEventListener('baseLineChanged',baseLineChanged) 
                     },
-                    changePos(pos){//固定点修改
+                    changePos(pos){//固定点修改 
                         console.log('changePos',pos)
                         fixPoint.copy(pos)
-                        let info = getMeasurePointsInfo(fixPoint)
-                        if(!info)return
-                        fixPoint.disMeasure1.points = info.disMeasure1.points
-                        fixPoint.disMeasure1.update({ifUpdateMarkers:true})
-                        fixPoint.disMeasure1.guideLinePoints = info.disMeasure1.guideLinePoints 
-                        fixPoint.disMeasure1.updateGuideLines()
-                        fixPoint.disMeasure2.points = info.disMeasure2.points
-                        fixPoint.disMeasure2.update({ifUpdateMarkers:true})
-                        fixPoint.disMeasure2.guideLinePoints = info.disMeasure2.guideLinePoints 
-                        fixPoint.disMeasure2.updateGuideLines()
+                        updateMeasureForPoint(fixPoint)
                        
                     },
                     changeBase(pos){//基准点修改
                         console.log('changeBase',pos)
                         fixPoint.basePoint.copy(pos) 
-                        let info = getMeasurePointsInfo(fixPoint)
-                        if(!info)return
-                        fixPoint.disMeasure1.guideLinePoints = info.disMeasure1.guideLinePoints 
-                        fixPoint.disMeasure1.guideLine.updateGuideLines()
-                        fixPoint.disMeasure2.points = info.disMeasure2.points
-                        fixPoint.disMeasure2.guideLinePoints = info.disMeasure2.guideLinePoints 
-                        fixPoint.disMeasure2.guideLine.updateGuideLines()
+                        updateMeasureForPoint(fixPoint,{onlyBasePoint:true})
                         
                     },
                     graphDrawComplete: measureFun && measureFun.end,