Sfoglia il codice sorgente

Adding predicate to the get world extends, bug fix

Raanan Weber 7 anni fa
parent
commit
3da440688d
2 ha cambiato i file con 4 aggiunte e 2 eliminazioni
  1. 3 1
      Viewer/src/viewer/viewer.ts
  2. 1 1
      src/babylon.scene.ts

+ 3 - 1
Viewer/src/viewer/viewer.ts

@@ -421,7 +421,9 @@ export abstract class AbstractViewer {
             }
         };
 
-        const sceneExtends = this.scene.getWorldExtends();
+        const sceneExtends = this.scene.getWorldExtends((mesh) => {
+            return !this.environmentHelper || (mesh !== this.environmentHelper.ground && mesh !== this.environmentHelper.rootMesh && mesh !== this.environmentHelper.skybox);
+        });
         const sceneDiagonal = sceneExtends.max.subtract(sceneExtends.min);
         const sceneDiagonalLenght = sceneDiagonal.length();
         if (isFinite(sceneDiagonalLenght))

+ 1 - 1
src/babylon.scene.ts

@@ -4233,7 +4233,7 @@
         public getWorldExtends(filterPredicate?: (mesh: AbstractMesh) => boolean): { min: Vector3; max: Vector3 } {
             var min = new Vector3(Number.MAX_VALUE, Number.MAX_VALUE, Number.MAX_VALUE);
             var max = new Vector3(-Number.MAX_VALUE, -Number.MAX_VALUE, -Number.MAX_VALUE);
-            filterPredicate = filterPredicate || (() => false);
+            filterPredicate = filterPredicate || (() => true);
             this.meshes.filter(filterPredicate).forEach(mesh => {
                 mesh.computeWorldMatrix(true);