Browse Source

PR feedbacks

Julien Barrois 6 years ago
parent
commit
2f3a8247f6
2 changed files with 22 additions and 8 deletions
  1. 9 3
      src/Math/babylon.math.ts
  2. 13 5
      src/Tools/babylon.tools.ts

+ 9 - 3
src/Math/babylon.math.ts

@@ -1625,7 +1625,10 @@ module BABYLON {
          * @returns the current updated Vector3
          */
         public addInPlace(otherVector: Vector3): Vector3 {
-            return this.addInPlaceFromFloats(otherVector.x, otherVector.y, otherVector.z);
+            this.x += otherVector.x;
+            this.y += otherVector.y;
+            this.z += otherVector.z;
+            return this;
         }
 
         /**
@@ -2045,7 +2048,10 @@ module BABYLON {
          * @returns the current updated Vector3
          */
         public copyFrom(source: Vector3): Vector3 {
-            return this.copyFromFloats(source.x, source.y, source.z);
+            this.x = source.x;
+            this.y = source.y;
+            this.z = source.z;
+            return this;
         }
 
         /**
@@ -7188,7 +7194,7 @@ module BABYLON {
      */
     export class Tmp {
         public static Color3: Color3[] = Tools.BuildArray(3, Color3);
-        public static Color4: Color4[] = Tools.BuildArray(3, Color4, 0, 0, 0, 0);
+        public static Color4: Color4[] = Tools.BuildArray(3, Color4);
         public static Vector2: Vector2[] = Tools.BuildArray(3, Vector2); // 3 temp Vector2 at once should be enough
         public static Vector3: Vector3[] = Tools.BuildArray(9, Vector3); // 9 temp Vector3 at once should be enough
         public static Vector4: Vector4[] = Tools.BuildArray(3, Vector4); // 3 temp Vector4 at once should be enough

+ 13 - 5
src/Tools/babylon.tools.ts

@@ -518,8 +518,12 @@ module BABYLON {
             }
 
             if (bias) {
-                minimum.scaleInPlace(1 - bias.x).addInPlaceFromFloats(-bias.y, -bias.y, -bias.y);
-                maximum.scaleInPlace(1 + bias.x).addInPlaceFromFloats(bias.y, bias.y, bias.y);
+                minimum.x -= minimum.x * bias.x + bias.y;
+                minimum.y -= minimum.y * bias.x + bias.y;
+                minimum.z -= minimum.z * bias.x + bias.y;
+                maximum.x += maximum.x * bias.x + bias.y;
+                maximum.y += maximum.y * bias.x + bias.y;
+                maximum.z += maximum.z * bias.x + bias.y;
             }
 
             return {
@@ -554,8 +558,12 @@ module BABYLON {
             }
 
             if (bias) {
-                minimum.scaleInPlace(1 - bias.x).addInPlaceFromFloats(-bias.y, -bias.y, -bias.y);
-                maximum.scaleInPlace(1 + bias.x).addInPlaceFromFloats(bias.y, bias.y, bias.y);
+                minimum.x -= minimum.x * bias.x + bias.y;
+                minimum.y -= minimum.y * bias.x + bias.y;
+                minimum.z -= minimum.z * bias.x + bias.y;
+                maximum.x += maximum.x * bias.x + bias.y;
+                maximum.y += maximum.y * bias.x + bias.y;
+                maximum.z += maximum.z * bias.x + bias.y;
             }
 
             return {
@@ -585,7 +593,7 @@ module BABYLON {
          * @param kparams the arguments to pass to each call to the constructor
          * @returns a new array filled with new objects
          */
-        public static BuildArray = <T, P extends any[]>(size: number, konstructor: new (...p: P) => T, ...kparams: P): Array<T> => {
+        public static BuildArray<T, P extends any[]>(size: number, konstructor: new (...p: P) => T, ...kparams: P): Array<T> {
             const a: T[] = [];
             for (let i = 0; i < size; ++i) {
                 a.push(new konstructor(...kparams));