Bladeren bron

Ground and mirror tests

Raanan Weber 7 jaren geleden
bovenliggende
commit
b185995738
2 gewijzigde bestanden met toevoegingen van 70 en 2 verwijderingen
  1. 2 2
      Viewer/src/viewer/sceneManager.ts
  2. 68 0
      Viewer/tests/unit/src/viewer/sceneManager.ts

+ 2 - 2
Viewer/src/viewer/sceneManager.ts

@@ -240,7 +240,7 @@ export class SceneManager {
         }
     }
 
-    private _groundMirrorEnabled = false;
+    private _groundMirrorEnabled = true;
     /**
      * gets wether the reflection is disabled.
      */
@@ -257,7 +257,7 @@ export class SceneManager {
 
         this._groundMirrorEnabled = value;
         if (this.environmentHelper && this.environmentHelper.groundMaterial && this.environmentHelper.groundMirror) {
-            if (value) {
+            if (!value) {
                 this.environmentHelper.groundMaterial.reflectionTexture = null;
             } else {
                 this.environmentHelper.groundMaterial.reflectionTexture = this.environmentHelper.groundMirror;

+ 68 - 0
Viewer/tests/unit/src/viewer/sceneManager.ts

@@ -113,11 +113,79 @@ describe(name, function () {
 
             assert.isNull(viewer.sceneManager.defaultRenderingPipeline);
             assert.isFalse(viewer.sceneManager.defaultRenderingPipelineEnabled);
+            assert.isFalse(viewer.sceneManager.scene.imageProcessingConfiguration.applyByPostProcess);
 
             viewer.sceneManager.defaultRenderingPipelineEnabled = true;
 
             assert.isDefined(viewer.sceneManager.defaultRenderingPipeline);
             assert.isTrue(viewer.sceneManager.defaultRenderingPipelineEnabled);
+            assert.isTrue(viewer.sceneManager.scene.imageProcessingConfiguration.applyByPostProcess);
+
+            viewer.dispose();
+            done();
+        });
+    });
+
+    it("should allow disabling and enabling ground", (done) => {
+        let viewer = Helper.getNewViewerInstance(undefined, {
+            ground: true
+        });
+
+        viewer.onInitDoneObservable.add(() => {
+            // ground should be defined, and mirror should be enabled
+            assert.isDefined(viewer.sceneManager.environmentHelper.ground);
+
+            viewer.sceneManager.groundEnabled = false;
+
+            assert.isFalse(viewer.sceneManager.environmentHelper.ground!.isEnabled());
+
+            viewer.sceneManager.groundEnabled = true;
+
+            assert.isTrue(viewer.sceneManager.environmentHelper.ground!.isEnabled());
+
+            viewer.updateConfiguration({
+                ground: false
+            });
+
+            assert.isUndefined(viewer.sceneManager.environmentHelper);
+            assert.isTrue(viewer.sceneManager.groundEnabled);
+
+            viewer.dispose();
+            done();
+        });
+    });
+
+    it("should allow disabling and enabling ground texture", (done) => {
+        let viewer = Helper.getNewViewerInstance(undefined, {
+            ground: {
+                mirror: true
+            }
+        });
+
+        viewer.onInitDoneObservable.add(() => {
+            // ground should be defined, and mirror should be enabled
+            assert.isDefined(viewer.sceneManager.environmentHelper.groundMaterial);
+            assert.isDefined(viewer.sceneManager.environmentHelper.groundMaterial!.reflectionTexture);
+
+            viewer.sceneManager.groundMirrorEnabled = false;
+
+            assert.isDefined(viewer.sceneManager.environmentHelper.groundMaterial);
+            assert.isNull(viewer.sceneManager.environmentHelper.groundMaterial!.reflectionTexture);
+
+            viewer.sceneManager.groundMirrorEnabled = true;
+
+            assert.isDefined(viewer.sceneManager.environmentHelper.groundMaterial);
+            assert.isDefined(viewer.sceneManager.environmentHelper.groundMaterial!.reflectionTexture);
+
+            viewer.updateConfiguration({
+                ground: {
+                    mirror: false
+                }
+            });
+
+            assert.isDefined(viewer.sceneManager.environmentHelper.groundMaterial);
+            assert.isNull(viewer.sceneManager.environmentHelper.groundMaterial!.reflectionTexture);
+            assert.isTrue(viewer.sceneManager.groundMirrorEnabled);
 
             viewer.dispose();
             done();