Selaa lähdekoodia

fix: 深色地图

xzw 1 vuosi sitten
vanhempi
commit
c1326f911d
2 muutettua tiedostoa jossa 55 lisäystä ja 31 poistoa
  1. 54 30
      public/lib/potree/potree.js
  2. 1 1
      public/lib/potree/potree.js.map

+ 54 - 30
public/lib/potree/potree.js

@@ -22715,8 +22715,9 @@
 	  //ctrlPolygon是否可以拖拽到没点云的地方
 	  panoZoomByPointer: false,
 	  //全景图是否定点缩放
-	  areaAtNotPlane: false,
-	  fastTran: isTest
+	  areaAtNotPlane: false
+
+	  //fastTran: isTest
 	};
 	Potree.config = config$1;
 	Potree.settings = settings;
@@ -23040,6 +23041,9 @@
 	    var c = this.tileSizePx / i.length() / scale //多除以一个scale缩放因子,scale越大level越小
 	      ,
 	      level = Math.ceil(-Math.log(c) / Math.log(2) - this.bias);
+	    if (this.style == 'dark-standard') {
+	      level -= 1;
+	    }
 	    level = Math.max(level, 0);
 	    level = Math.min(level, void 0 === this.maxDepth ? 1 / 0 : this.maxDepth);
 	    this.zoomLevel = level; //add
@@ -23415,7 +23419,7 @@
 	          //卫星
 	          this.maxDepth = 18;
 	          this.baseUrl = "https://webst01.is.autonavi.com/appmaptile?lang=zh_cn&style=6&yrs=m&x=${x}&y=${y}&z=${z}";
-	        } else if (style == 'roads') {
+	        } else if (style == 'dark-standard') {
 	          this.maxDepth = 18;
 	          this.baseUrl = "https://wprd01.is.autonavi.com/appmaptile?lang=zh_cn&style=8&yrs=m&x=${x}&y=${y}&z=${z}"; //路网   加上scl=2后去掉名字
 	        } else {
@@ -86791,32 +86795,7 @@
 	        this.setDisplay(true);
 	      });
 	    });
-	    if (Potree.settings.editType != 'pano' && Potree.settings.editType != 'merge') {
-	      this.addEventListener('switchFloorplanSelect', e => {
-	        //进入平面图设置后 切换选中的数据集
-	        this.selectedFloorplan = e.pointcloud; //绝对显示
-	        this.updateFpVisiDatasets();
-	        var pointclouds;
-	        if (e.pointcloud) {
-	          pointclouds = [e.pointcloud];
-	        } else if (this.fpVisiDatasets.length) {
-	          pointclouds = this.fpVisiDatasets;
-	        }
-	        pointclouds && this.mapViewer.fitToDatasets(pointclouds);
-	      });
-	      this.modules.SiteModel.bus.addEventListener('FloorChange', e => {
-	        this.updateFpVisiDatasets();
-	        this.updatePanosVisibles(e.currentFloor); //问:编辑空间模型时,需不需要改为显示当前选择的楼层。因为若所在楼层和选中的不一致,修改选中楼层的轮廓却改不了marker显示很奇怪,尤其刚好在一个建筑内时。
-	      });
-	      this.mapViewer.mapLayer.addEventListener('floorplanLoaded', () => {
-	        this.updateCadVisibles(this.fpVisiDatasets, true); //加载完成后重新更新下
-	      });
-
-	      /* this.modules.Clip.bus.addEventListener('updateSelectedDatasets',()=>{
-	           this.updateFpVisiDatasets()
-	      }) */
-	    }
-	    {
+	    if (Potree.settings.editType != 'pano' && Potree.settings.editType != 'merge' || Potree.settings.mergeType2) {
 	      var updated, zoomLevel;
 	      var update = e => {
 	        if (e.type == 'updateModelBound' || e.viewport == this.mainViewport && (e.changeInfo.positionChanged || zoomLevel != this.images360.zoomLevel)) {
@@ -86824,7 +86803,7 @@
 	          //e.changeInfo.positionChanged && shelterHistory.clear() //清空
 	          (e.type == 'updateModelBound' || e.changeInfo.positionChanged) && this.updateDatasetAt(); //更新所在数据集  
 
-	          if (Potree.settings.ifShowMarker && Potree.settings.editType != 'merge') {
+	          if (Potree.settings.ifShowMarker) {
 	            Common.intervalTool.isWaiting('updateMarkerVisibles', () => {
 	              if (!this.mainViewport.view.isFlying()) {
 	                this.updateMarkerVisibles();
@@ -86857,6 +86836,31 @@
 
 	      /* } */
 	    }
+	    if (Potree.settings.editType != 'pano' && Potree.settings.editType != 'merge') {
+	      this.addEventListener('switchFloorplanSelect', e => {
+	        //进入平面图设置后 切换选中的数据集
+	        this.selectedFloorplan = e.pointcloud; //绝对显示
+	        this.updateFpVisiDatasets();
+	        var pointclouds;
+	        if (e.pointcloud) {
+	          pointclouds = [e.pointcloud];
+	        } else if (this.fpVisiDatasets.length) {
+	          pointclouds = this.fpVisiDatasets;
+	        }
+	        pointclouds && this.mapViewer.fitToDatasets(pointclouds);
+	      });
+	      this.modules.SiteModel.bus.addEventListener('FloorChange', e => {
+	        this.updateFpVisiDatasets();
+	        this.updatePanosVisibles(e.currentFloor); //问:编辑空间模型时,需不需要改为显示当前选择的楼层。因为若所在楼层和选中的不一致,修改选中楼层的轮廓却改不了marker显示很奇怪,尤其刚好在一个建筑内时。
+	      });
+	      this.mapViewer.mapLayer.addEventListener('floorplanLoaded', () => {
+	        this.updateCadVisibles(this.fpVisiDatasets, true); //加载完成后重新更新下
+	      });
+
+	      /* this.modules.Clip.bus.addEventListener('updateSelectedDatasets',()=>{
+	           this.updateFpVisiDatasets()
+	      }) */
+	    }
 	    {
 	      var interval;
 	      document.addEventListener('visibilitychange', e => {
@@ -92359,6 +92363,7 @@
 	}
 	function load4dkkPanos(sceneCode, model, done) {
 	  //加载四维看看的漫游点并转换
+	  model.is4dkkModel = true;
 	  model.panos = [];
 	  //模拟点云,需要rotX(90)+平移一段才能和四维看看的bound一样
 	  var rot1M = new THREE.Matrix4().makeRotationX(Math.PI / 2);
@@ -92389,9 +92394,28 @@
 	    viewer.images360.addPanoData(panoData, model);
 	    viewer.images360.loadDone();
 	    viewer.scene.add360Images(viewer.images360);
+	    {
+	      //neighbourMap全部填满,否则之后会被修改
+	      data.sweepLocations.forEach(pano1Data => {
+	        var pano1 = model.panos.find(e => e.originID == pano1Data.uuid);
+	        model.panos.forEach(pano2 => {
+	          if (pano1 == pano2) return;
+	          var v = pano1Data.visibles.includes(pano2.originID);
+	          viewer.images360.neighbourMap[pano1.id][pano2.id] = v;
+	          viewer.images360.neighbourMap[pano2.id][pano1.id] = v;
+	          if (v) {
+	            pano1.neighbours.includes(pano2) || pano1.neighbours.push(pano2);
+	            pano2.neighbours.includes(pano1) || pano2.neighbours.push(pano1);
+	          }
+	        });
+	      });
+	    }
 	    viewer.modules.MergeEditor.modelTransformCallback(model, true); //初始化pano的pose
 	    done();
 	  });
+	  /*  neighbours: e.visibles3 || e.visibles,
+	      noBlocks: e.visibles2,
+	      seeMarkers: e.visibles, */
 	}
 	async function loadImgVersion(callback) {
 	  var path;

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 1 - 1
public/lib/potree/potree.js.map