Pārlūkot izejas kodu

fix: data panoid wrong fix

xzw 1 gadu atpakaļ
vecāks
revīzija
6eaf6445d3
1 mainītis faili ar 16 papildinājumiem un 1 dzēšanām
  1. 16 1
      service/PanoBoxFrame.js

+ 16 - 1
service/PanoBoxFrame.js

@@ -2959,7 +2959,12 @@ async compute(dataList) {
             {//KJ-iUrPonbhCQo 大的场景有很多柜子时,groups的前两个元素很可能相隔很远,导致匹配不到柜子。 
             
             
-                 
+                let disScores = [], bestDisSquared = 2
+                for (let i = 0; i < groups.length - 1; i++) {
+                    let dis = groups[i][0].pano.position.distanceToSquared(groups[i+1][0].pano.position)
+                    let score = 1/Math.max(dis - bestDisSquared, 0.05) + (groups[i].length + groups[i+1].length)
+                    disScores.push()
+                }
                 
             
                 for (let i = 0; i < groups.length - 1; i++) {
@@ -3519,6 +3524,16 @@ async compute(dataList) {
         {
             this.removedDatas = {}
             let panoIds = Object.keys(this.datas)
+
+            let panoIds = Object.keys(this.datas).filter(id=>{
+                if(!player.model.panos.index[id]){//排除数据错误
+                    this.removedDatas[id] = this.datas[id]
+                    delete this.datas[id]
+                    return
+                }
+                return true
+            })
+
             let len = panoIds.length
             for (let i = 0; i < len; i++) {
                 let pano0 = player.model.panos.index[panoIds[i]]