xzw пре 2 месеци
родитељ
комит
5c1135d117
2 измењених фајлова са 9 додато и 5 уклоњено
  1. 8 4
      public/lib/potree/potree.js
  2. 1 1
      public/lib/potree/potree.js.map

+ 8 - 4
public/lib/potree/potree.js

@@ -32348,6 +32348,9 @@
 	    this.panos = [];
 	    this.neighbourMap = {};
 	    this.disMap = {};
+	    this.addEventListener('panoChanged', () => {
+	      this.disMap = {};
+	    });
 	    this.node = new Object3D();
 	    this.node.name = 'ImagesNode';
 	    this.cubePanos = [];
@@ -73940,19 +73943,18 @@
 	    if (model.isPointcloud && model.transformMatrix) {
 	      model.transformMatrix.multiplyMatrices(model.matrix, model.pos1MatrixInvert);
 	      model.rotateMatrix = new Matrix4().makeRotationFromEuler(model.rotation);
-	      model.panos.forEach(e => e.transformByPointcloud());
 	    } else if (model.panos) {
 	      model.rotateMatrix = new Matrix4().makeRotationFromEuler(model.rotation).multiply(model.rot1MatrixInvert);
 	      model.transformMatrix.multiplyMatrices(model.matrix, model.posRot1MatrixInvert);
-	      model.panos.forEach(e => e.transformByPointcloud());
-	      //model.bound = model.boundingBox.clone().applyMatrix4(model.matrixWorld)
 	    }
 	    if (model.panos) {
+	      model.panos.forEach(e => e.transformByPointcloud());
 	      model.transformInvMatrix.copy(model.transformMatrix).invert();
 	      model.rotateInvMatrix.copy(model.rotateMatrix).invert();
 	      model.panos.forEach(e => {
 	        e.marker.scale.copy(model.scale);
 	      });
+	      viewer.images360.dispatchEvent('panoChanged');
 	    }
 	    model.lastMatrixWorld = model.matrixWorld.clone();
 	    viewer.dispatchEvent('content_changed');
@@ -91822,7 +91824,7 @@
 	    lonlat = [lonlat.x, lonlat.y];
 	  }
 	  proj4.defs("WGS84", "+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs");
-	  if (Potree.settings.showMap3d) {
+	  if (Potree.settings.showMap3d || Potree.settings.useRectProj) {
 	    //Web Mercator(全球矩形,高纬度地区面积变形极大) 
 	    proj4.defs("LOCAL_orgin", "+proj=merc +a=6378137 +b=6378137 +lat_ts=" + lonlat[1] + "  +lon_0=0 +x_0=0 +y_0=0 +k=1 +units=m +nadgrids=@null +wktext +no_defs");
 	    var xyOnMap = proj4("WGS84", "LOCAL_orgin", lonlat.slice()); //偏移,使原点在lonlat处。  
@@ -91833,6 +91835,7 @@
 	  } else {
 	    //横轴墨卡托投影(远离中央的区域变形严重,边缘弯曲。 优点似乎是xy向缩放比例一样,更适用局部地图,但因非绝对矩形不太适合在web显示)
 	    proj4.defs("LOCAL", "+proj=tmerc +ellps=WGS84 +lon_0=" + lonlat[0].toPrecision(15) + " +lat_0=" + lonlat[1].toPrecision(15)); //高德坐标系
+	    //这种加入带坐标的距离中心经纬度很远的cesium的3dtiles后,位置和朝向都对不准。上面那个投影能对准但和地面打滑
 	  }
 	  var transform1 = proj4("WGS84", "LOCAL"); //这个ok 是展开的平面投影  LOCAL即NAVVIS:TMERC
 	  var transform2 = proj4("+proj=tmerc +lat_0=0 +lon_0=123 +k=1 +x_0=500000 +y_0=0 +ellps=GRS80 +units=m +no_defs;");
@@ -91844,6 +91847,7 @@
 	  if (window.transform) {
 	    viewer.transform.lonlatToLocal = window.transform.lonlatToLocal;
 	  }
+	  Potree.lonlat = lonlat;
 	  Potree.Log("setLonlat ".concat(lon, ", ").concat(lat), {
 	    font: {
 	      color: "#f49",

Разлика између датотеке није приказан због своје велике величине
+ 1 - 1
public/lib/potree/potree.js.map