From 85ef5be94c8e8c0d167624a7e023fc0ae10cc393 Mon Sep 17 00:00:00 2001 From: "Raoul v. R" Date: Fri, 1 May 2020 14:17:02 +0200 Subject: [PATCH] Version 1.2.1 --- build/math-ds.esm.js | 18 +- build/math-ds.js | 14 +- build/math-ds.min.js | 4 +- docs/ast/source/Vector2.js.json | 3965 ++++++------ docs/ast/source/Vector3.js.json | 7665 +++++++++++++----------- docs/class/src/Vector2.js~Vector2.html | 8 +- docs/file/src/Vector2.js.html | 10 +- docs/file/src/Vector3.js.html | 6 +- docs/index.json | 14 +- docs/source.html | 10 +- package.json | 2 +- 11 files changed, 5760 insertions(+), 5956 deletions(-) diff --git a/build/math-ds.esm.js b/build/math-ds.esm.js index 7e54879..b2675ef 100644 --- a/build/math-ds.esm.js +++ b/build/math-ds.esm.js @@ -1,5 +1,5 @@ /** - * math-ds v1.2.0 build Fri May 01 2020 + * math-ds v1.2.1 build Fri May 01 2020 * https://github.com/vanruesc/math-ds * Copyright 2020 Raoul van Rüschen * @license Zlib @@ -682,10 +682,10 @@ class Vector3 { angleTo(v) { - const theta = this.dot(v) / (Math.sqrt(this.lengthSquared() * v.lengthSquared())); + const denominator = Math.sqrt(this.lengthSquared() * v.lengthSquared()); - // Clamp to avoid numerical problems. - return Math.acos(Math.min(Math.max(theta, -1), 1)); + return (denominator === 0.0) ? (Math.PI * 0.5) : + Math.acos(Math.min(Math.max(this.dot(v) / denominator, -1), 1)); } @@ -2388,15 +2388,7 @@ class Vector2 { angle() { - let angle = Math.atan2(this.y, this.x); - - if(angle < 0) { - - angle += 2 * Math.PI; - - } - - return angle; + return Math.atan2(-this.y, -this.x) + Math.PI; } diff --git a/build/math-ds.js b/build/math-ds.js index 6512b96..5211790 100644 --- a/build/math-ds.js +++ b/build/math-ds.js @@ -1,5 +1,5 @@ /** - * math-ds v1.2.0 build Fri May 01 2020 + * math-ds v1.2.1 build Fri May 01 2020 * https://github.com/vanruesc/math-ds * Copyright 2020 Raoul van Rüschen * @license Zlib @@ -351,8 +351,8 @@ }, { key: "angleTo", value: function angleTo(v) { - var theta = this.dot(v) / Math.sqrt(this.lengthSquared() * v.lengthSquared()); - return Math.acos(Math.min(Math.max(theta, -1), 1)); + var denominator = Math.sqrt(this.lengthSquared() * v.lengthSquared()); + return denominator === 0.0 ? Math.PI * 0.5 : Math.acos(Math.min(Math.max(this.dot(v) / denominator, -1), 1)); } }, { key: "manhattanLength", @@ -1064,13 +1064,7 @@ }, { key: "angle", value: function angle() { - var angle = Math.atan2(this.y, this.x); - - if (angle < 0) { - angle += 2 * Math.PI; - } - - return angle; + return Math.atan2(-this.y, -this.x) + Math.PI; } }, { key: "lerp", diff --git a/build/math-ds.min.js b/build/math-ds.min.js index eef9202..dc00f65 100644 --- a/build/math-ds.min.js +++ b/build/math-ds.min.js @@ -1,7 +1,7 @@ /** - * math-ds v1.2.0 build Fri May 01 2020 + * math-ds v1.2.1 build Fri May 01 2020 * https://github.com/vanruesc/math-ds * Copyright 2020 Raoul van Rüschen * @license Zlib */ -!function(t,i){"object"==typeof exports&&"undefined"!=typeof module?i(exports):"function"==typeof define&&define.amd?define(["exports"],i):i((t=t||self).MATHDS={})}(this,(function(t){"use strict";function i(t,i){if(!(t instanceof i))throw new TypeError("Cannot call a class as a function")}function e(t,i){for(var e=0;e0&&void 0!==arguments[0]?arguments[0]:0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;i(this,t),this.x=e,this.y=n,this.z=s}return n(t,[{key:"set",value:function(t,i,e){return this.x=t,this.y=i,this.z=e,this}},{key:"random",value:function(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}},{key:"copy",value:function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}},{key:"clone",value:function(){return new this.constructor(this.x,this.y,this.z)}},{key:"fromArray",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this.x=t[i],this.y=t[i+1],this.z=t[i+2],this}},{key:"toArray",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return t[i]=this.x,t[i+1]=this.y,t[i+2]=this.z,t}},{key:"setFromSpherical",value:function(t){return this.setFromSphericalCoords(t.radius,t.phi,t.theta)}},{key:"setFromSphericalCoords",value:function(t,i,e){var n=Math.sin(i)*t;return this.x=n*Math.sin(e),this.y=Math.cos(i)*t,this.z=n*Math.cos(e),this}},{key:"setFromCylindrical",value:function(t){return this.setFromCylindricalCoords(t.radius,t.theta,t.y)}},{key:"setFromCylindricalCoords",value:function(t,i,e){return this.x=t*Math.sin(i),this.y=e,this.z=t*Math.cos(i),this}},{key:"setFromMatrix3Column",value:function(t,i){return this.fromArray(t.elements,3*i)}},{key:"setFromMatrixColumn",value:function(t,i){return this.fromArray(t.elements,4*i)}},{key:"setFromMatrixPosition",value:function(t){var i=t.elements;return this.x=i[12],this.y=i[13],this.z=i[14],this}},{key:"setFromMatrixScale",value:function(t){var i=this.setFromMatrixColumn(t,0).length(),e=this.setFromMatrixColumn(t,1).length(),n=this.setFromMatrixColumn(t,2).length();return this.x=i,this.y=e,this.z=n,this}},{key:"add",value:function(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this}},{key:"addScalar",value:function(t){return this.x+=t,this.y+=t,this.z+=t,this}},{key:"addVectors",value:function(t,i){return this.x=t.x+i.x,this.y=t.y+i.y,this.z=t.z+i.z,this}},{key:"addScaledVector",value:function(t,i){return this.x+=t.x*i,this.y+=t.y*i,this.z+=t.z*i,this}},{key:"sub",value:function(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this}},{key:"subScalar",value:function(t){return this.x-=t,this.y-=t,this.z-=t,this}},{key:"subVectors",value:function(t,i){return this.x=t.x-i.x,this.y=t.y-i.y,this.z=t.z-i.z,this}},{key:"multiply",value:function(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this}},{key:"multiplyScalar",value:function(t){return this.x*=t,this.y*=t,this.z*=t,this}},{key:"multiplyVectors",value:function(t,i){return this.x=t.x*i.x,this.y=t.y*i.y,this.z=t.z*i.z,this}},{key:"divide",value:function(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this}},{key:"divideScalar",value:function(t){return this.x/=t,this.y/=t,this.z/=t,this}},{key:"crossVectors",value:function(t,i){var e=t.x,n=t.y,s=t.z,h=i.x,r=i.y,a=i.z;return this.x=n*a-s*r,this.y=s*h-e*a,this.z=e*r-n*h,this}},{key:"cross",value:function(t){return this.crossVectors(this,t)}},{key:"transformDirection",value:function(t){var i=this.x,e=this.y,n=this.z,s=t.elements;return this.x=s[0]*i+s[4]*e+s[8]*n,this.y=s[1]*i+s[5]*e+s[9]*n,this.z=s[2]*i+s[6]*e+s[10]*n,this.normalize()}},{key:"applyMatrix3",value:function(t){var i=this.x,e=this.y,n=this.z,s=t.elements;return this.x=s[0]*i+s[3]*e+s[6]*n,this.y=s[1]*i+s[4]*e+s[7]*n,this.z=s[2]*i+s[5]*e+s[8]*n,this}},{key:"applyNormalMatrix",value:function(t){return this.applyMatrix3(t).normalize()}},{key:"applyMatrix4",value:function(t){var i=this.x,e=this.y,n=this.z,s=t.elements;return this.x=s[0]*i+s[4]*e+s[8]*n+s[12],this.y=s[1]*i+s[5]*e+s[9]*n+s[13],this.z=s[2]*i+s[6]*e+s[10]*n+s[14],this}},{key:"applyQuaternion",value:function(t){var i=this.x,e=this.y,n=this.z,s=t.x,h=t.y,r=t.z,a=t.w,u=a*i+h*n-r*e,o=a*e+r*i-s*n,l=a*n+s*e-h*i,y=-s*i-h*e-r*n;return this.x=u*a+y*-s+o*-r-l*-h,this.y=o*a+y*-h+l*-s-u*-r,this.z=l*a+y*-r+u*-h-o*-s,this}},{key:"negate",value:function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}},{key:"dot",value:function(t){return this.x*t.x+this.y*t.y+this.z*t.z}},{key:"reflect",value:function(t){var i=t.x,e=t.y,n=t.z;return this.sub(t.multiplyScalar(2*this.dot(t))),t.set(i,e,n),this}},{key:"angleTo",value:function(t){var i=this.dot(t)/Math.sqrt(this.lengthSquared()*t.lengthSquared());return Math.acos(Math.min(Math.max(i,-1),1))}},{key:"manhattanLength",value:function(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}},{key:"lengthSquared",value:function(){return this.x*this.x+this.y*this.y+this.z*this.z}},{key:"length",value:function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}},{key:"manhattanDistanceTo",value:function(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)+Math.abs(this.z-t.z)}},{key:"distanceToSquared",value:function(t){var i=this.x-t.x,e=this.y-t.y,n=this.z-t.z;return i*i+e*e+n*n}},{key:"distanceTo",value:function(t){return Math.sqrt(this.distanceToSquared(t))}},{key:"normalize",value:function(){return this.divideScalar(this.length())}},{key:"setLength",value:function(t){return this.normalize().multiplyScalar(t)}},{key:"min",value:function(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this}},{key:"max",value:function(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this}},{key:"clamp",value:function(t,i){return this.x=Math.max(t.x,Math.min(i.x,this.x)),this.y=Math.max(t.y,Math.min(i.y,this.y)),this.z=Math.max(t.z,Math.min(i.z,this.z)),this}},{key:"floor",value:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}},{key:"ceil",value:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}},{key:"round",value:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}},{key:"lerp",value:function(t,i){return this.x+=(t.x-this.x)*i,this.y+=(t.y-this.y)*i,this.z+=(t.z-this.z)*i,this}},{key:"lerpVectors",value:function(t,i,e){return this.subVectors(i,t).multiplyScalar(e).add(t)}},{key:"equals",value:function(t){return t.x===this.x&&t.y===this.y&&t.z===this.z}}]),t}(),h=new s,r=[new s,new s,new s,new s,new s,new s,new s,new s],a=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new s(1/0,1/0,1/0),n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new s(-1/0,-1/0,-1/0);i(this,t),this.min=e,this.max=n}return n(t,[{key:"set",value:function(t,i){return this.min.copy(t),this.max.copy(i),this}},{key:"copy",value:function(t){return this.min.copy(t.min),this.max.copy(t.max),this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"makeEmpty",value:function(){return this.min.x=this.min.y=this.min.z=1/0,this.max.x=this.max.y=this.max.z=-1/0,this}},{key:"isEmpty",value:function(){return this.max.x0&&void 0!==arguments[0]?arguments[0]:new s;return this.isEmpty()?t.set(0,0,0):t.addVectors(this.min,this.max).multiplyScalar(.5)}},{key:"getSize",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new s;return this.isEmpty()?t.set(0,0,0):t.subVectors(this.max,this.min)}},{key:"setFromSphere",value:function(t){return this.set(t.center,t.center),this.expandByScalar(t.radius),this}},{key:"expandByPoint",value:function(t){return this.min.min(t),this.max.max(t),this}},{key:"expandByVector",value:function(t){return this.min.sub(t),this.max.add(t),this}},{key:"expandByScalar",value:function(t){return this.min.addScalar(-t),this.max.addScalar(t),this}},{key:"setFromPoints",value:function(t){var i,e;for(this.min.set(0,0,0),this.max.set(0,0,0),i=0,e=t.length;i1&&void 0!==arguments[1]?arguments[1]:new s;return i.copy(t).clamp(this.min,this.max)}},{key:"distanceToPoint",value:function(t){return h.copy(t).clamp(this.min,this.max).sub(t).length()}},{key:"applyMatrix4",value:function(t){var i=this.min,e=this.max;return this.isEmpty()||(r[0].set(i.x,i.y,i.z).applyMatrix4(t),r[1].set(i.x,i.y,e.z).applyMatrix4(t),r[2].set(i.x,e.y,i.z).applyMatrix4(t),r[3].set(i.x,e.y,e.z).applyMatrix4(t),r[4].set(e.x,i.y,i.z).applyMatrix4(t),r[5].set(e.x,i.y,e.z).applyMatrix4(t),r[6].set(e.x,e.y,i.z).applyMatrix4(t),r[7].set(e.x,e.y,e.z).applyMatrix4(t),this.setFromPoints(r)),this}},{key:"translate",value:function(t){return this.min.add(t),this.max.add(t),this}},{key:"intersect",value:function(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this}},{key:"union",value:function(t){return this.min.min(t.min),this.max.max(t.max),this}},{key:"containsPoint",value:function(t){var i=this.min,e=this.max;return t.x>=i.x&&t.y>=i.y&&t.z>=i.z&&t.x<=e.x&&t.y<=e.y&&t.z<=e.z}},{key:"containsBox",value:function(t){var i=this.min,e=this.max,n=t.min,s=t.max;return i.x<=n.x&&s.x<=e.x&&i.y<=n.y&&s.y<=e.y&&i.z<=n.z&&s.z<=e.z}},{key:"intersectsBox",value:function(t){var i=this.min,e=this.max,n=t.min,s=t.max;return s.x>=i.x&&s.y>=i.y&&s.z>=i.z&&n.x<=e.x&&n.y<=e.y&&n.z<=e.z}},{key:"intersectsSphere",value:function(t){return this.clampPoint(t.center,h).distanceToSquared(t.center)<=t.radius*t.radius}},{key:"intersectsPlane",value:function(t){var i,e;return t.normal.x>0?(i=t.normal.x*this.min.x,e=t.normal.x*this.max.x):(i=t.normal.x*this.max.x,e=t.normal.x*this.min.x),t.normal.y>0?(i+=t.normal.y*this.min.y,e+=t.normal.y*this.max.y):(i+=t.normal.y*this.max.y,e+=t.normal.y*this.min.y),t.normal.z>0?(i+=t.normal.z*this.min.z,e+=t.normal.z*this.max.z):(i+=t.normal.z*this.max.z,e+=t.normal.z*this.min.z),i<=-t.constant&&e>=-t.constant}},{key:"equals",value:function(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}]),t}(),u=new a,o=new s,l=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new s,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;i(this,t),this.center=e,this.radius=n}return n(t,[{key:"set",value:function(t,i){return this.center.copy(t),this.radius=i,this}},{key:"copy",value:function(t){return this.center.copy(t.center),this.radius=t.radius,this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"setFromPoints",value:function(t){var i,e,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:u.setFromPoints(t).getCenter(this.center),s=0;for(i=0,e=t.length;i1&&void 0!==arguments[1]?arguments[1]:new s,e=this.center.distanceToSquared(t);return i.copy(t),e>this.radius*this.radius&&(i.sub(this.center).normalize(),i.multiplyScalar(this.radius).add(this.center)),i}},{key:"distanceToPoint",value:function(t){return t.distanceTo(this.center)-this.radius}},{key:"containsPoint",value:function(t){return t.distanceToSquared(this.center)<=this.radius*this.radius}},{key:"intersectsSphere",value:function(t){var i=this.radius+t.radius;return t.center.distanceToSquared(this.center)<=i*i}},{key:"intersectsBox",value:function(t){return t.intersectsSphere(this)}},{key:"intersectsPlane",value:function(t){return Math.abs(t.distanceToPoint(this.center))<=this.radius}},{key:"equals",value:function(t){return t.center.equals(this.center)&&t.radius===this.radius}}]),t}(),y=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;i(this,t),this.x=e,this.y=n}return n(t,[{key:"set",value:function(t,i){return this.x=t,this.y=i,this}},{key:"random",value:function(){return this.x=Math.random(),this.y=Math.random(),this}},{key:"copy",value:function(t){return this.x=t.x,this.y=t.y,this}},{key:"clone",value:function(){return new this.constructor(this.x,this.y)}},{key:"fromArray",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this.x=t[i],this.y=t[i+1],this}},{key:"toArray",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return t[i]=this.x,t[i+1]=this.y,t}},{key:"add",value:function(t){return this.x+=t.x,this.y+=t.y,this}},{key:"addScalar",value:function(t){return this.x+=t,this.y+=t,this}},{key:"addVectors",value:function(t,i){return this.x=t.x+i.x,this.y=t.y+i.y,this}},{key:"addScaledVector",value:function(t,i){return this.x+=t.x*i,this.y+=t.y*i,this}},{key:"sub",value:function(t){return this.x-=t.x,this.y-=t.y,this}},{key:"subScalar",value:function(t){return this.x-=t,this.y-=t,this}},{key:"subVectors",value:function(t,i){return this.x=t.x-i.x,this.y=t.y-i.y,this}},{key:"multiply",value:function(t){return this.x*=t.x,this.y*=t.y,this}},{key:"multiplyScalar",value:function(t){return this.x*=t,this.y*=t,this}},{key:"divide",value:function(t){return this.x/=t.x,this.y/=t.y,this}},{key:"divideScalar",value:function(t){return this.x/=t,this.y/=t,this}},{key:"applyMatrix3",value:function(t){var i=this.x,e=this.y,n=t.elements;return this.x=n[0]*i+n[3]*e+n[6],this.y=n[1]*i+n[4]*e+n[7],this}},{key:"dot",value:function(t){return this.x*t.x+this.y*t.y}},{key:"cross",value:function(t){return this.x*t.y-this.y*t.x}},{key:"manhattanLength",value:function(){return Math.abs(this.x)+Math.abs(this.y)}},{key:"lengthSquared",value:function(){return this.x*this.x+this.y*this.y}},{key:"length",value:function(){return Math.sqrt(this.x*this.x+this.y*this.y)}},{key:"manhattanDistanceTo",value:function(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)}},{key:"distanceToSquared",value:function(t){var i=this.x-t.x,e=this.y-t.y;return i*i+e*e}},{key:"distanceTo",value:function(t){return Math.sqrt(this.distanceToSquared(t))}},{key:"normalize",value:function(){return this.divideScalar(this.length())}},{key:"setLength",value:function(t){return this.normalize().multiplyScalar(t)}},{key:"min",value:function(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this}},{key:"max",value:function(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this}},{key:"clamp",value:function(t,i){return this.x=Math.max(t.x,Math.min(i.x,this.x)),this.y=Math.max(t.y,Math.min(i.y,this.y)),this}},{key:"floor",value:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}},{key:"ceil",value:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}},{key:"round",value:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},{key:"negate",value:function(){return this.x=-this.x,this.y=-this.y,this}},{key:"angle",value:function(){var t=Math.atan2(this.y,this.x);return t<0&&(t+=2*Math.PI),t}},{key:"lerp",value:function(t,i){return this.x+=(t.x-this.x)*i,this.y+=(t.y-this.y)*i,this}},{key:"lerpVectors",value:function(t,i,e){return this.subVectors(i,t).multiplyScalar(e).add(t)}},{key:"rotateAround",value:function(t,i){var e=Math.cos(i),n=Math.sin(i),s=this.x-t.x,h=this.y-t.y;return this.x=s*e-h*n+t.x,this.y=s*n+h*e+t.y,this}},{key:"equals",value:function(t){return t.x===this.x&&t.y===this.y}},{key:"width",get:function(){return this.x},set:function(t){return this.x=t}},{key:"height",get:function(){return this.y},set:function(t){return this.y=t}}]),t}(),c=new y,v=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new y(1/0,1/0),n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new y(-1/0,-1/0);i(this,t),this.min=e,this.max=n}return n(t,[{key:"set",value:function(t,i){return this.min.copy(t),this.max.copy(i),this}},{key:"copy",value:function(t){return this.min.copy(t.min),this.max.copy(t.max),this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"makeEmpty",value:function(){return this.min.x=this.min.y=1/0,this.max.x=this.max.y=-1/0,this}},{key:"isEmpty",value:function(){return this.max.x0&&void 0!==arguments[0]?arguments[0]:new y;return this.isEmpty()?t.set(0,0):t.addVectors(this.min,this.max).multiplyScalar(.5)}},{key:"getSize",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new y;return this.isEmpty()?t.set(0,0):t.subVectors(this.max,this.min)}},{key:"getBoundingSphere",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new l;return this.getCenter(t.center),t.radius=.5*this.getSize(c).length(),t}},{key:"expandByPoint",value:function(t){return this.min.min(t),this.max.max(t),this}},{key:"expandByVector",value:function(t){return this.min.sub(t),this.max.add(t),this}},{key:"expandByScalar",value:function(t){return this.min.addScalar(-t),this.max.addScalar(t),this}},{key:"setFromPoints",value:function(t){var i,e;for(this.min.set(0,0),this.max.set(0,0),i=0,e=t.length;i1&&void 0!==arguments[1]?arguments[1]:new y;return i.copy(t).clamp(this.min,this.max)}},{key:"distanceToPoint",value:function(t){return c.copy(t).clamp(this.min,this.max).sub(t).length()}},{key:"translate",value:function(t){return this.min.add(t),this.max.add(t),this}},{key:"intersect",value:function(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this}},{key:"union",value:function(t){return this.min.min(t.min),this.max.max(t.max),this}},{key:"containsPoint",value:function(t){var i=this.min,e=this.max;return t.x>=i.x&&t.y>=i.y&&t.x<=e.x&&t.y<=e.y}},{key:"containsBox",value:function(t){var i=this.min,e=this.max,n=t.min,s=t.max;return i.x<=n.x&&s.x<=e.x&&i.y<=n.y&&s.y<=e.y}},{key:"intersectsBox",value:function(t){var i=this.min,e=this.max,n=t.min,s=t.max;return s.x>=i.x&&s.y>=i.y&&n.x<=e.x&&n.y<=e.y}},{key:"equals",value:function(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}]),t}(),m=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;i(this,t),this.radius=e,this.theta=n,this.y=s}return n(t,[{key:"set",value:function(t,i,e){return this.radius=t,this.theta=i,this.y=e,this}},{key:"copy",value:function(t){return this.radius=t.radius,this.theta=t.theta,this.y=t.y,this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"setFromVector3",value:function(t){return this.setFromCartesianCoords(t.x,t.y,t.z)}},{key:"setFromCartesianCoords",value:function(t,i,e){return this.radius=Math.sqrt(t*t+e*e),this.theta=Math.atan2(t,e),this.y=i,this}}]),t}(),x=function(){function t(){i(this,t),this.elements=new Float32Array([1,0,0,0,1,0,0,0,1])}return n(t,[{key:"set",value:function(t,i,e,n,s,h,r,a,u){var o=this.elements;return o[0]=t,o[3]=i,o[6]=e,o[1]=n,o[4]=s,o[7]=h,o[2]=r,o[5]=a,o[8]=u,this}},{key:"identity",value:function(){return this.set(1,0,0,0,1,0,0,0,1),this}},{key:"copy",value:function(t){var i=t.elements,e=this.elements;return e[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[3],e[4]=i[4],e[5]=i[5],e[6]=i[6],e[7]=i[7],e[8]=i[8],this}},{key:"clone",value:function(){return(new this.constructor).fromArray(this.elements)}},{key:"fromArray",value:function(t){var i,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=this.elements;for(i=0;i<9;++i)n[i]=t[i+e];return this}},{key:"toArray",value:function(){var t,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=this.elements;for(t=0;t<9;++t)i[t+e]=n[t];return i}},{key:"multiplyMatrices",value:function(t,i){var e=t.elements,n=i.elements,s=this.elements,h=e[0],r=e[3],a=e[6],u=e[1],o=e[4],l=e[7],y=e[2],c=e[5],v=e[8],m=n[0],x=n[3],f=n[6],d=n[1],k=n[4],z=n[7],M=n[2],p=n[5],w=n[8];return s[0]=h*m+r*d+a*M,s[3]=h*x+r*k+a*p,s[6]=h*f+r*z+a*w,s[1]=u*m+o*d+l*M,s[4]=u*x+o*k+l*p,s[7]=u*f+o*z+l*w,s[2]=y*m+c*d+v*M,s[5]=y*x+c*k+v*p,s[8]=y*f+c*z+v*w,this}},{key:"multiply",value:function(t){return this.multiplyMatrices(this,t)}},{key:"premultiply",value:function(t){return this.multiplyMatrices(t,this)}},{key:"multiplyScalar",value:function(t){var i=this.elements;return i[0]*=t,i[3]*=t,i[6]*=t,i[1]*=t,i[4]*=t,i[7]*=t,i[2]*=t,i[5]*=t,i[8]*=t,this}},{key:"determinant",value:function(){var t=this.elements,i=t[0],e=t[1],n=t[2],s=t[3],h=t[4],r=t[5],a=t[6],u=t[7],o=t[8];return i*h*o-i*r*u-e*s*o+e*r*a+n*s*u-n*h*a}},{key:"getInverse",value:function(t){var i,e=t.elements,n=this.elements,s=e[0],h=e[1],r=e[2],a=e[3],u=e[4],o=e[5],l=e[6],y=e[7],c=e[8],v=c*u-o*y,m=o*l-c*a,x=y*a-u*l,f=s*v+h*m+r*x;return 0!==f?(i=1/f,n[0]=v*i,n[1]=(r*y-c*h)*i,n[2]=(o*h-r*u)*i,n[3]=m*i,n[4]=(c*s-r*l)*i,n[5]=(r*a-o*s)*i,n[6]=x*i,n[7]=(h*l-y*s)*i,n[8]=(u*s-h*a)*i):this.set(0,0,0,0,0,0,0,0,0),this}},{key:"transpose",value:function(){var t,i=this.elements;return t=i[1],i[1]=i[3],i[3]=t,t=i[2],i[2]=i[6],i[6]=t,t=i[5],i[5]=i[7],i[7]=t,this}},{key:"scale",value:function(t,i){var e=this.elements;return e[0]*=t,e[3]*=t,e[6]*=t,e[1]*=i,e[4]*=i,e[7]*=i,this}},{key:"rotate",value:function(t){var i=Math.cos(t),e=Math.sin(t),n=this.elements,s=n[0],h=n[3],r=n[6],a=n[1],u=n[4],o=n[7];return n[0]=i*s+e*a,n[3]=i*h+e*u,n[6]=i*r+e*o,n[1]=-e*s+i*a,n[4]=-e*h+i*u,n[7]=-e*r+i*o,this}},{key:"translate",value:function(t,i){var e=this.elements;return e[0]+=t*e[2],e[3]+=t*e[5],e[6]+=t*e[8],e[1]+=i*e[2],e[4]+=i*e[5],e[7]+=i*e[8],this}},{key:"equals",value:function(t){var i,e=this.elements,n=t.elements,s=!0;for(i=0;s&&i<9;++i)e[i]!==n[i]&&(s=!1);return s}}]),t}(),f={XYZ:"XYZ",YZX:"YZX",ZXY:"ZXY",XZY:"XZY",YXZ:"YXZ",ZYX:"ZYX"},d=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,h=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;i(this,t),this.x=e,this.y=n,this.z=s,this.w=h}return n(t,[{key:"set",value:function(t,i,e,n){return this.x=t,this.y=i,this.z=e,this.w=n,this}},{key:"copy",value:function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w,this}},{key:"clone",value:function(){return new this.constructor(this.x,this.y,this.z,this.w)}},{key:"fromArray",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this.x=t[i],this.y=t[i+1],this.z=t[i+2],this.w=t[i+3],this}},{key:"toArray",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return t[i]=this.x,t[i+1]=this.y,t[i+2]=this.z,t[i+3]=this.w,t}},{key:"setFromEuler",value:function(t){var i=t.x,e=t.y,n=t.z,s=Math.cos,h=Math.sin,r=s(i/2),a=s(e/2),u=s(n/2),o=h(i/2),l=h(e/2),y=h(n/2);switch(t.order){case f.XYZ:this.x=o*a*u+r*l*y,this.y=r*l*u-o*a*y,this.z=r*a*y+o*l*u,this.w=r*a*u-o*l*y;break;case f.YXZ:this.x=o*a*u+r*l*y,this.y=r*l*u-o*a*y,this.z=r*a*y-o*l*u,this.w=r*a*u+o*l*y;break;case f.ZXY:this.x=o*a*u-r*l*y,this.y=r*l*u+o*a*y,this.z=r*a*y+o*l*u,this.w=r*a*u-o*l*y;break;case f.ZYX:this.x=o*a*u-r*l*y,this.y=r*l*u+o*a*y,this.z=r*a*y-o*l*u,this.w=r*a*u+o*l*y;break;case f.YZX:this.x=o*a*u+r*l*y,this.y=r*l*u+o*a*y,this.z=r*a*y-o*l*u,this.w=r*a*u-o*l*y;break;case f.XZY:this.x=o*a*u-r*l*y,this.y=r*l*u-o*a*y,this.z=r*a*y+o*l*u,this.w=r*a*u+o*l*y}return this}},{key:"setFromAxisAngle",value:function(t,i){var e=i/2,n=Math.sin(e);return this.x=t.x*n,this.y=t.y*n,this.z=t.z*n,this.w=Math.cos(e),this}},{key:"setFromRotationMatrix",value:function(t){var i,e=t.elements,n=e[0],s=e[4],h=e[8],r=e[1],a=e[5],u=e[9],o=e[2],l=e[6],y=e[10],c=n+a+y;return c>0?(i=.5/Math.sqrt(c+1),this.w=.25/i,this.x=(l-u)*i,this.y=(h-o)*i,this.z=(r-s)*i):n>a&&n>y?(i=2*Math.sqrt(1+n-a-y),this.w=(l-u)/i,this.x=.25*i,this.y=(s+r)/i,this.z=(h+o)/i):a>y?(i=2*Math.sqrt(1+a-n-y),this.w=(h-o)/i,this.x=(s+r)/i,this.y=.25*i,this.z=(u+l)/i):(i=2*Math.sqrt(1+y-n-a),this.w=(r-s)/i,this.x=(h+o)/i,this.y=(u+l)/i,this.z=.25*i),this}},{key:"setFromUnitVectors",value:function(t,i){var e=t.dot(i)+1;return e<1e-6?(e=0,Math.abs(t.x)>Math.abs(t.z)?(this.x=-t.y,this.y=t.x,this.z=0,this.w=e):(this.x=0,this.y=-t.z,this.z=t.y,this.w=e)):(this.x=t.y*i.z-t.z*i.y,this.y=t.z*i.x-t.x*i.z,this.z=t.x*i.y-t.y*i.x,this.w=e),this.normalize()}},{key:"angleTo",value:function(t){return 2*Math.acos(Math.abs(Math.min(Math.max(this.dot(t),-1),1)))}},{key:"rotateTowards",value:function(t,i){var e=this.angleTo(t);return 0!==e&&this.slerp(t,Math.min(1,i/e)),this}},{key:"invert",value:function(){return this.conjugate()}},{key:"conjugate",value:function(){return this.x*=-1,this.y*=-1,this.z*=-1,this}},{key:"lengthSquared",value:function(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}},{key:"length",value:function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}},{key:"normalize",value:function(){var t,i=this.length();return 0===i?(this.x=0,this.y=0,this.z=0,this.w=1):(t=1/i,this.x=this.x*t,this.y=this.y*t,this.z=this.z*t,this.w=this.w*t),this}},{key:"dot",value:function(t){return this.x*t.x+this.y*t.y+this.z*t.z+this.w*t.w}},{key:"multiplyQuaternions",value:function(t,i){var e=t.x,n=t.y,s=t.z,h=t.w,r=i.x,a=i.y,u=i.z,o=i.w;return this.x=e*o+h*r+n*u-s*a,this.y=n*o+h*a+s*r-e*u,this.z=s*o+h*u+e*a-n*r,this.w=h*o-e*r-n*a-s*u,this}},{key:"multiply",value:function(t){return this.multiplyQuaternions(this,t)}},{key:"premultiply",value:function(t){return this.multiplyQuaternions(t,this)}},{key:"slerp",value:function(t,i){var e,n,s,h,r,a,u,o=this.x,l=this.y,y=this.z,c=this.w;return 1===i?this.copy(t):i>0&&((e=c*t.w+o*t.x+l*t.y+y*t.z)<0?(this.w=-t.w,this.x=-t.x,this.y=-t.y,this.z=-t.z,e=-e):this.copy(t),e>=1?(this.w=c,this.x=o,this.y=l,this.z=y):(r=1-i,(n=1-e*e)<=Number.EPSILON?(this.w=r*c+i*this.w,this.x=r*o+i*this.x,this.y=r*l+i*this.y,this.z=r*y+i*this.z,this.normalize()):(s=Math.sqrt(n),h=Math.atan2(s,e),a=Math.sin(r*h)/s,u=Math.sin(i*h)/s,this.w=c*a+this.w*u,this.x=o*a+this.x*u,this.y=l*a+this.y*u,this.z=y*a+this.z*u))),this}},{key:"equals",value:function(t){return t.x===this.x&&t.y===this.y&&t.z===this.z&&t.w===this.w}}],[{key:"slerp",value:function(t,i,e,n){return e.copy(t).slerp(i,n)}},{key:"slerpFlat",value:function(t,i,e,n,s,h,r){var a,u,o,l,y,c,v,m,x=s[h],f=s[h+1],d=s[h+2],k=s[h+3],z=e[n],M=e[n+1],p=e[n+2],w=e[n+3];w===k&&z===x&&M===f&&p===d||(a=1-r,c=(l=z*x+M*f+p*d+w*k)>=0?1:-1,(y=1-l*l)>Number.EPSILON&&(o=Math.sqrt(y),v=Math.atan2(o,l*c),a=Math.sin(a*v)/o,r=Math.sin(r*v)/o),z=z*a+x*(m=r*c),M=M*a+f*m,p=p*a+d*m,w=w*a+k*m,a===1-r&&(z*=u=1/Math.sqrt(z*z+M*M+p*p+w*w),M*=u,p*=u,w*=u)),t[i]=z,t[i+1]=M,t[i+2]=p,t[i+3]=w}}]),t}();function k(t,i,e){return Math.max(Math.min(t,e),i)}var z=new x,M=new d,p=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;i(this,t),this.x=e,this.y=n,this.z=s,this.order=t.defaultOrder}return n(t,[{key:"set",value:function(t,i,e,n){return this.x=t,this.y=i,this.z=e,this.order=n,this}},{key:"copy",value:function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.order=t.order,this}},{key:"clone",value:function(){return new this.constructor(this.x,this.y,this.z,this.order)}},{key:"fromArray",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this.x=t[i],this.y=t[i+1],this.z=t[i+2],this.order=t[i+3],this}},{key:"toArray",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return t[i]=this.x,t[i+1]=this.y,t[i+2]=this.z,t[i+3]=this.order,t}},{key:"toVector3",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new s;return t.set(this.x,this.y,this.z)}},{key:"setFromRotationMatrix",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.order,e=t.elements,n=e[0],s=e[4],h=e[8],r=e[1],a=e[5],u=e[9],o=e[2],l=e[6],y=e[10],c=1-1e-7;switch(i){case f.XYZ:this.y=Math.asin(k(h,-1,1)),Math.abs(h)1&&void 0!==arguments[1]?arguments[1]:this.order;return this.set(t.x,t.y,t.z,i)}},{key:"reorder",value:function(t){return M.setFromEuler(this),this.setFromQuaternion(M,t)}},{key:"equals",value:function(t){return t.x===this.x&&t.y===this.y&&t.z===this.z&&t.order===this.order}}],[{key:"defaultOrder",get:function(){return f.XYZ}}]),t}(),w=new s,g=new s,S=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new s(1,0,0),n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;i(this,t),this.normal=e,this.constant=n}return n(t,[{key:"set",value:function(t,i){return this.normal.copy(t),this.constant=i,this}},{key:"setComponents",value:function(t,i,e,n){return this.normal.set(t,i,e),this.constant=n,this}},{key:"copy",value:function(t){return this.normal.copy(t.normal),this.constant=t.constant,this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"setFromNormalAndCoplanarPoint",value:function(t,i){return this.normal.copy(t),this.constant=-i.dot(this.normal),this}},{key:"setFromCoplanarPoints",value:function(t,i,e){var n=w.subVectors(e,i).cross(g.subVectors(t,i)).normalize();return this.setFromNormalAndCoplanarPoint(n,w),this}},{key:"normalize",value:function(){var t=1/this.normal.length();return this.normal.multiplyScalar(t),this.constant*=t,this}},{key:"negate",value:function(){return this.normal.negate(),this.constant=-this.constant,this}},{key:"distanceToPoint",value:function(t){return this.normal.dot(t)+this.constant}},{key:"distanceToSphere",value:function(t){return this.distanceToPoint(t.center)-t.radius}},{key:"projectPoint",value:function(t,i){return i.copy(this.normal).multiplyScalar(-this.distanceToPoint(t)).add(t)}},{key:"coplanarPoint",value:function(t){return t.copy(this.normal).multiplyScalar(-this.constant)}},{key:"translate",value:function(t){return this.constant-=t.dot(this.normal),this}},{key:"intersectLine",value:function(t,i){var e=t.delta(w),n=this.normal.dot(e);if(0===n)0===this.distanceToPoint(t.start)&&i.copy(t.start);else{var s=-(t.start.dot(this.normal)+this.constant)/n;s>=0&&s<=1&&i.copy(e).multiplyScalar(s).add(t.start)}return i}},{key:"intersectsLine",value:function(t){var i=this.distanceToPoint(t.start),e=this.distanceToPoint(t.end);return i<0&&e>0||e<0&&i>0}},{key:"intersectsBox",value:function(t){return t.intersectsPlane(this)}},{key:"intersectsSphere",value:function(t){return t.intersectsPlane(this)}},{key:"equals",value:function(t){return t.normal.equals(this.normal)&&t.constant===this.constant}}]),t}(),b=new s,q=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new S,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new S,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new S,h=arguments.length>3&&void 0!==arguments[3]?arguments[3]:new S,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:new S,a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:new S;i(this,t),this.planes=[e,n,s,h,r,a]}return n(t,[{key:"set",value:function(t,i,e,n,s,h){var r=this.planes;return r[0].copy(t),r[1].copy(i),r[2].copy(e),r[3].copy(n),r[4].copy(s),r[5].copy(h),this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"copy",value:function(t){var i,e=this.planes;for(i=0;i<6;++i)e[i].copy(t.planes[i]);return this}},{key:"setFromMatrix",value:function(t){return this.setFromProjectionMatrix(t)}},{key:"setFromProjectionMatrix",value:function(t){var i=this.planes,e=t.elements,n=e[0],s=e[1],h=e[2],r=e[3],a=e[4],u=e[5],o=e[6],l=e[7],y=e[8],c=e[9],v=e[10],m=e[11],x=e[12],f=e[13],d=e[14],k=e[15];return i[0].setComponents(r-n,l-a,m-y,k-x).normalize(),i[1].setComponents(r+n,l+a,m+y,k+x).normalize(),i[2].setComponents(r+s,l+u,m+c,k+f).normalize(),i[3].setComponents(r-s,l-u,m-c,k-f).normalize(),i[4].setComponents(r-h,l-o,m-v,k-d).normalize(),i[5].setComponents(r+h,l+o,m+v,k+d).normalize(),this}},{key:"intersectsSphere",value:function(t){var i,e=this.planes,n=t.center,s=-t.radius,h=!0;for(i=0;i<6;++i)if(e[i].distanceToPoint(n)0?h.x:s.x,b.y=e.normal.y>0?h.y:s.y,b.z=e.normal.z>0?h.z:s.z,e.distanceToPoint(b)<0)return!1;return!0}},{key:"containsPoint",value:function(t){var i,e=this.planes,n=!0;for(i=0;i<6;++i)if(e[i].distanceToPoint(t)<0){n=!1;break}return n}}]),t}(),P=new s,F=new s,T=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new s,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new s;i(this,t),this.start=e,this.end=n}return n(t,[{key:"set",value:function(t,i){return this.start.copy(t),this.end.copy(i),this}},{key:"copy",value:function(t){return this.start.copy(t.start),this.end.copy(t.end),this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"getCenter",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new s;return t.addVectors(this.start,this.end).multiplyScalar(.5)}},{key:"delta",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new s;return t.subVectors(this.end,this.start)}},{key:"lengthSquared",value:function(){return this.start.distanceToSquared(this.end)}},{key:"length",value:function(){return this.start.distanceTo(this.end)}},{key:"at",value:function(t,i){return this.delta(i).multiplyScalar(t).add(this.start)}},{key:"closestPointToPointParameter",value:function(t,i){P.subVectors(t,this.start),F.subVectors(this.end,this.start);var e=F.dot(F),n=F.dot(P);return i?Math.min(Math.max(n/e,0),1):n/e}},{key:"closestPointToPoint",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new s,n=this.closestPointToPointParameter(t,i);return this.delta(e).multiplyScalar(n).add(this.start)}},{key:"equals",value:function(t){return t.start.equals(this.start)&&t.end.equals(this.end)}}]),t}(),V=new s,C=new s,A=new s,X=function(){function t(){i(this,t),this.elements=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])}return n(t,[{key:"set",value:function(t,i,e,n,s,h,r,a,u,o,l,y,c,v,m,x){var f=this.elements;return f[0]=t,f[4]=i,f[8]=e,f[12]=n,f[1]=s,f[5]=h,f[9]=r,f[13]=a,f[2]=u,f[6]=o,f[10]=l,f[14]=y,f[3]=c,f[7]=v,f[11]=m,f[15]=x,this}},{key:"identity",value:function(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}},{key:"copy",value:function(t){var i=t.elements,e=this.elements;return e[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[3],e[4]=i[4],e[5]=i[5],e[6]=i[6],e[7]=i[7],e[8]=i[8],e[9]=i[9],e[10]=i[10],e[11]=i[11],e[12]=i[12],e[13]=i[13],e[14]=i[14],e[15]=i[15],this}},{key:"clone",value:function(){return(new this.constructor).fromArray(this.elements)}},{key:"fromArray",value:function(t){var i,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=this.elements;for(i=0;i<16;++i)n[i]=t[i+e];return this}},{key:"toArray",value:function(){var t,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=this.elements;for(t=0;t<16;++t)i[t+e]=n[t];return i}},{key:"getMaxScaleOnAxis",value:function(){var t=this.elements,i=t[0]*t[0]+t[1]*t[1]+t[2]*t[2],e=t[4]*t[4]+t[5]*t[5]+t[6]*t[6],n=t[8]*t[8]+t[9]*t[9]+t[10]*t[10];return Math.sqrt(Math.max(i,e,n))}},{key:"copyPosition",value:function(t){var i=this.elements,e=t.elements;return i[12]=e[12],i[13]=e[13],i[14]=e[14],this}},{key:"setPosition",value:function(t){var i=this.elements;return i[12]=t.x,i[13]=t.y,i[14]=t.z,this}},{key:"extractBasis",value:function(t,i,e){return t.setFromMatrixColumn(this,0),i.setFromMatrixColumn(this,1),e.setFromMatrixColumn(this,2),this}},{key:"makeBasis",value:function(t,i,e){return this.set(t.x,i.x,e.x,0,t.y,i.y,e.y,0,t.z,i.z,e.z,0,0,0,0,1),this}},{key:"extractRotation",value:function(t){var i=this.elements,e=t.elements,n=1/V.setFromMatrixColumn(t,0).length(),s=1/V.setFromMatrixColumn(t,1).length(),h=1/V.setFromMatrixColumn(t,2).length();return i[0]=e[0]*n,i[1]=e[1]*n,i[2]=e[2]*n,i[3]=0,i[4]=e[4]*s,i[5]=e[5]*s,i[6]=e[6]*s,i[7]=0,i[8]=e[8]*h,i[9]=e[9]*h,i[10]=e[10]*h,i[11]=0,i[12]=0,i[13]=0,i[14]=0,i[15]=1,this}},{key:"makeRotationFromEuler",value:function(t){var i,e,n,s,h,r,a,u,o,l,y,c,v=this.elements,m=t.x,x=t.y,d=t.z,k=Math.cos(m),z=Math.sin(m),M=Math.cos(x),p=Math.sin(x),w=Math.cos(d),g=Math.sin(d);switch(t.order){case f.XYZ:i=k*w,e=k*g,n=z*w,s=z*g,v[0]=M*w,v[4]=-M*g,v[8]=p,v[1]=e+n*p,v[5]=i-s*p,v[9]=-z*M,v[2]=s-i*p,v[6]=n+e*p,v[10]=k*M;break;case f.YXZ:h=M*w,r=M*g,a=p*w,u=p*g,v[0]=h+u*z,v[4]=a*z-r,v[8]=k*p,v[1]=k*g,v[5]=k*w,v[9]=-z,v[2]=r*z-a,v[6]=u+h*z,v[10]=k*M;break;case f.ZXY:h=M*w,r=M*g,a=p*w,u=p*g,v[0]=h-u*z,v[4]=-k*g,v[8]=a+r*z,v[1]=r+a*z,v[5]=k*w,v[9]=u-h*z,v[2]=-k*p,v[6]=z,v[10]=k*M;break;case f.ZYX:i=k*w,e=k*g,n=z*w,s=z*g,v[0]=M*w,v[4]=n*p-e,v[8]=i*p+s,v[1]=M*g,v[5]=s*p+i,v[9]=e*p-n,v[2]=-p,v[6]=z*M,v[10]=k*M;break;case f.YZX:o=k*M,l=k*p,y=z*M,c=z*p,v[0]=M*w,v[4]=c-o*g,v[8]=y*g+l,v[1]=g,v[5]=k*w,v[9]=-z*w,v[2]=-p*w,v[6]=l*g+y,v[10]=o-c*g;break;case f.XZY:o=k*M,l=k*p,y=z*M,c=z*p,v[0]=M*w,v[4]=-g,v[8]=p*w,v[1]=o*g+c,v[5]=k*w,v[9]=l*g-y,v[2]=y*g-l,v[6]=z*w,v[10]=c*g+o}return v[3]=0,v[7]=0,v[11]=0,v[12]=0,v[13]=0,v[14]=0,v[15]=1,this}},{key:"makeRotationFromQuaternion",value:function(t){return this.compose(V.set(0,0,0),t,C.set(1,1,1))}},{key:"lookAt",value:function(t,i,e){var n=this.elements,s=V,h=C,r=A;return r.subVectors(t,i),0===r.lengthSquared()&&(r.z=1),r.normalize(),s.crossVectors(e,r),0===s.lengthSquared()&&(1===Math.abs(e.z)?r.x+=1e-4:r.z+=1e-4,r.normalize(),s.crossVectors(e,r)),s.normalize(),h.crossVectors(r,s),n[0]=s.x,n[4]=h.x,n[8]=r.x,n[1]=s.y,n[5]=h.y,n[9]=r.y,n[2]=s.z,n[6]=h.z,n[10]=r.z,this}},{key:"multiplyMatrices",value:function(t,i){var e=this.elements,n=t.elements,s=i.elements,h=n[0],r=n[4],a=n[8],u=n[12],o=n[1],l=n[5],y=n[9],c=n[13],v=n[2],m=n[6],x=n[10],f=n[14],d=n[3],k=n[7],z=n[11],M=n[15],p=s[0],w=s[4],g=s[8],S=s[12],b=s[1],q=s[5],P=s[9],F=s[13],T=s[2],V=s[6],C=s[10],A=s[14],X=s[3],Y=s[7],Z=s[11],B=s[15];return e[0]=h*p+r*b+a*T+u*X,e[4]=h*w+r*q+a*V+u*Y,e[8]=h*g+r*P+a*C+u*Z,e[12]=h*S+r*F+a*A+u*B,e[1]=o*p+l*b+y*T+c*X,e[5]=o*w+l*q+y*V+c*Y,e[9]=o*g+l*P+y*C+c*Z,e[13]=o*S+l*F+y*A+c*B,e[2]=v*p+m*b+x*T+f*X,e[6]=v*w+m*q+x*V+f*Y,e[10]=v*g+m*P+x*C+f*Z,e[14]=v*S+m*F+x*A+f*B,e[3]=d*p+k*b+z*T+M*X,e[7]=d*w+k*q+z*V+M*Y,e[11]=d*g+k*P+z*C+M*Z,e[15]=d*S+k*F+z*A+M*B,this}},{key:"multiply",value:function(t){return this.multiplyMatrices(this,t)}},{key:"premultiply",value:function(t){return this.multiplyMatrices(t,this)}},{key:"multiplyScalar",value:function(t){var i=this.elements;return i[0]*=t,i[4]*=t,i[8]*=t,i[12]*=t,i[1]*=t,i[5]*=t,i[9]*=t,i[13]*=t,i[2]*=t,i[6]*=t,i[10]*=t,i[14]*=t,i[3]*=t,i[7]*=t,i[11]*=t,i[15]*=t,this}},{key:"determinant",value:function(){var t=this.elements,i=t[0],e=t[4],n=t[8],s=t[12],h=t[1],r=t[5],a=t[9],u=t[13],o=t[2],l=t[6],y=t[10],c=t[14],v=i*r,m=i*a,x=i*u,f=e*h,d=e*a,k=e*u,z=n*h,M=n*r,p=n*u,w=s*h,g=s*r,S=s*a;return t[3]*(S*l-p*l-g*y+k*y+M*c-d*c)+t[7]*(m*c-x*y+w*y-z*c+p*o-S*o)+t[11]*(x*l-v*c-w*l+f*c+g*o-k*o)+t[15]*(-M*o-m*l+v*y+z*l-f*y+d*o)}},{key:"getInverse",value:function(t){var i,e=this.elements,n=t.elements,s=n[0],h=n[1],r=n[2],a=n[3],u=n[4],o=n[5],l=n[6],y=n[7],c=n[8],v=n[9],m=n[10],x=n[11],f=n[12],d=n[13],k=n[14],z=n[15],M=v*k*y-d*m*y+d*l*x-o*k*x-v*l*z+o*m*z,p=f*m*y-c*k*y-f*l*x+u*k*x+c*l*z-u*m*z,w=c*d*y-f*v*y+f*o*x-u*d*x-c*o*z+u*v*z,g=f*v*l-c*d*l-f*o*m+u*d*m+c*o*k-u*v*k,S=s*M+h*p+r*w+a*g;return 0!==S?(i=1/S,e[0]=M*i,e[1]=(d*m*a-v*k*a-d*r*x+h*k*x+v*r*z-h*m*z)*i,e[2]=(o*k*a-d*l*a+d*r*y-h*k*y-o*r*z+h*l*z)*i,e[3]=(v*l*a-o*m*a-v*r*y+h*m*y+o*r*x-h*l*x)*i,e[4]=p*i,e[5]=(c*k*a-f*m*a+f*r*x-s*k*x-c*r*z+s*m*z)*i,e[6]=(f*l*a-u*k*a-f*r*y+s*k*y+u*r*z-s*l*z)*i,e[7]=(u*m*a-c*l*a+c*r*y-s*m*y-u*r*x+s*l*x)*i,e[8]=w*i,e[9]=(f*v*a-c*d*a-f*h*x+s*d*x+c*h*z-s*v*z)*i,e[10]=(u*d*a-f*o*a+f*h*y-s*d*y-u*h*z+s*o*z)*i,e[11]=(c*o*a-u*v*a-c*h*y+s*v*y+u*h*x-s*o*x)*i,e[12]=g*i,e[13]=(c*d*r-f*v*r+f*h*m-s*d*m-c*h*k+s*v*k)*i,e[14]=(f*o*r-u*d*r-f*h*l+s*d*l+u*h*k-s*o*k)*i,e[15]=(u*v*r-c*o*r+c*h*l-s*v*l-u*h*m+s*o*m)*i):this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0),this}},{key:"transpose",value:function(){var t,i=this.elements;return t=i[1],i[1]=i[4],i[4]=t,t=i[2],i[2]=i[8],i[8]=t,t=i[6],i[6]=i[9],i[9]=t,t=i[3],i[3]=i[12],i[12]=t,t=i[7],i[7]=i[13],i[13]=t,t=i[11],i[11]=i[14],i[14]=t,this}},{key:"scale",value:function(t,i,e){var n=this.elements;return n[0]*=t,n[4]*=i,n[8]*=e,n[1]*=t,n[5]*=i,n[9]*=e,n[2]*=t,n[6]*=i,n[10]*=e,n[3]*=t,n[7]*=i,n[11]*=e,this}},{key:"makeScale",value:function(t,i,e){return this.set(t,0,0,0,0,i,0,0,0,0,e,0,0,0,0,1),this}},{key:"makeTranslation",value:function(t,i,e){return this.set(1,0,0,t,0,1,0,i,0,0,1,e,0,0,0,1),this}},{key:"makeRotationX",value:function(t){var i=Math.cos(t),e=Math.sin(t);return this.set(1,0,0,0,0,i,-e,0,0,e,i,0,0,0,0,1),this}},{key:"makeRotationY",value:function(t){var i=Math.cos(t),e=Math.sin(t);return this.set(i,0,e,0,0,1,0,0,-e,0,i,0,0,0,0,1),this}},{key:"makeRotationZ",value:function(t){var i=Math.cos(t),e=Math.sin(t);return this.set(i,-e,0,0,e,i,0,0,0,0,1,0,0,0,0,1),this}},{key:"makeRotationAxis",value:function(t,i){var e=Math.cos(i),n=Math.sin(i),s=1-e,h=t.x,r=t.y,a=t.z,u=s*h,o=s*r;return this.set(u*h+e,u*r-n*a,u*a+n*r,0,u*r+n*a,o*r+e,o*a-n*h,0,u*a-n*r,o*a+n*h,s*a*a+e,0,0,0,0,1),this}},{key:"makeShear",value:function(t,i,e){return this.set(1,i,e,0,t,1,e,0,t,i,1,0,0,0,0,1),this}},{key:"compose",value:function(t,i,e){var n=this.elements,s=i.x,h=i.y,r=i.z,a=i.w,u=s+s,o=h+h,l=r+r,y=s*u,c=s*o,v=s*l,m=h*o,x=h*l,f=r*l,d=a*u,k=a*o,z=a*l,M=e.x,p=e.y,w=e.z;return n[0]=(1-(m+f))*M,n[1]=(c+z)*M,n[2]=(v-k)*M,n[3]=0,n[4]=(c-z)*p,n[5]=(1-(y+f))*p,n[6]=(x+d)*p,n[7]=0,n[8]=(v+k)*w,n[9]=(x-d)*w,n[10]=(1-(y+m))*w,n[11]=0,n[12]=t.x,n[13]=t.y,n[14]=t.z,n[15]=1,this}},{key:"decompose",value:function(t,i,e){var n=this.elements,s=n[0],h=n[1],r=n[2],a=n[4],u=n[5],o=n[6],l=n[8],y=n[9],c=n[10],v=this.determinant(),m=V.set(s,h,r).length()*(v<0?-1:1),x=V.set(a,u,o).length(),f=V.set(l,y,c).length(),d=1/m,k=1/x,z=1/f;return t.x=n[12],t.y=n[13],t.z=n[14],n[0]*=d,n[1]*=d,n[2]*=d,n[4]*=k,n[5]*=k,n[6]*=k,n[8]*=z,n[9]*=z,n[10]*=z,i.setFromRotationMatrix(this),n[0]=s,n[1]=h,n[2]=r,n[4]=a,n[5]=u,n[6]=o,n[8]=l,n[9]=y,n[10]=c,e.x=m,e.y=x,e.z=f,this}},{key:"makePerspective",value:function(t,i,e,n,s,h){var r=this.elements,a=2*s/(i-t),u=2*s/(e-n),o=(i+t)/(i-t),l=(e+n)/(e-n),y=-(h+s)/(h-s),c=-2*h*s/(h-s);return r[0]=a,r[4]=0,r[8]=o,r[12]=0,r[1]=0,r[5]=u,r[9]=l,r[13]=0,r[2]=0,r[6]=0,r[10]=y,r[14]=c,r[3]=0,r[7]=0,r[11]=-1,r[15]=0,this}},{key:"makeOrthographic",value:function(t,i,e,n,s,h){var r=this.elements,a=1/(i-t),u=1/(e-n),o=1/(h-s),l=(i+t)*a,y=(e+n)*u,c=(h+s)*o;return r[0]=2*a,r[4]=0,r[8]=0,r[12]=-l,r[1]=0,r[5]=2*u,r[9]=0,r[13]=-y,r[2]=0,r[6]=0,r[10]=-2*o,r[14]=-c,r[3]=0,r[7]=0,r[11]=0,r[15]=1,this}},{key:"equals",value:function(t){var i,e=this.elements,n=t.elements,s=!0;for(i=0;s&&i<16;++i)e[i]!==n[i]&&(s=!1);return s}}]),t}(),Y=[new s,new s,new s,new s],Z=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new s,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new s(0,0,-1);i(this,t),this.origin=e,this.direction=n}return n(t,[{key:"set",value:function(t,i){return this.origin.copy(t),this.direction.copy(i),this}},{key:"copy",value:function(t){return this.origin.copy(t.origin),this.direction.copy(t.direction),this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"at",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new s;return i.copy(this.direction).multiplyScalar(t).add(this.origin)}},{key:"lookAt",value:function(t){return this.direction.copy(t).sub(this.origin).normalize(),this}},{key:"recast",value:function(t){return this.origin.copy(this.at(t,Y[0])),this}},{key:"closestPointToPoint",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new s,e=i.subVectors(t,this.origin).dot(this.direction);return e>=0?i.copy(this.direction).multiplyScalar(e).add(this.origin):i.copy(this.origin)}},{key:"distanceSquaredToPoint",value:function(t){var i=Y[0].subVectors(t,this.origin).dot(this.direction);return i<0?this.origin.distanceToSquared(t):Y[0].copy(this.direction).multiplyScalar(i).add(this.origin).distanceToSquared(t)}},{key:"distanceToPoint",value:function(t){return Math.sqrt(this.distanceSquaredToPoint(t))}},{key:"distanceToPlane",value:function(t){var i=t.normal.dot(this.direction),e=0!==i?-(this.origin.dot(t.normal)+t.constant)/i:0===t.distanceToPoint(this.origin)?0:-1;return e>=0?e:null}},{key:"distanceSquaredToSegment",value:function(t,i,e,n){var s,h,r,a,u,o=Y[0].copy(t).add(i).multiplyScalar(.5),l=Y[1].copy(i).sub(t).normalize(),y=Y[2].copy(this.origin).sub(o),c=.5*t.distanceTo(i),v=-this.direction.dot(l),m=y.dot(this.direction),x=-y.dot(l),f=y.lengthSq(),d=Math.abs(1-v*v);return d>0?(h=v*m-x,r=c*d,(s=v*x-m)>=0?h>=-r?h<=r?u=(s*=a=1/d)*(s+v*(h*=a)+2*m)+h*(v*s+h+2*x)+f:(h=c,u=-(s=Math.max(0,-(v*h+m)))*s+h*(h+2*x)+f):(h=-c,u=-(s=Math.max(0,-(v*h+m)))*s+h*(h+2*x)+f):h<=-r?u=-(s=Math.max(0,-(-v*c+m)))*s+(h=s>0?-c:Math.min(Math.max(-c,-x),c))*(h+2*x)+f:h<=r?(s=0,u=(h=Math.min(Math.max(-c,-x),c))*(h+2*x)+f):u=-(s=Math.max(0,-(v*c+m)))*s+(h=s>0?c:Math.min(Math.max(-c,-x),c))*(h+2*x)+f):(h=v>0?-c:c,u=-(s=Math.max(0,-(v*h+m)))*s+h*(h+2*x)+f),void 0!==e&&e.copy(this.direction).multiplyScalar(s).add(this.origin),void 0!==n&&n.copy(l).multiplyScalar(h).add(o),u}},{key:"intersectSphere",value:function(t){var i,e,n,h=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new s,r=Y[0].subVectors(t.center,this.origin),a=r.dot(this.direction),u=r.dot(r)-a*a,o=t.radius*t.radius,l=null;return u<=o&&(n=a+(i=Math.sqrt(o-u)),((e=a-i)>=0||n>=0)&&(l=e<0?this.at(n,h):this.at(e,h))),l}},{key:"intersectsSphere",value:function(t){return this.distanceSqToPoint(t.center)<=t.radius*t.radius}},{key:"intersectPlane",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new s,e=this.distanceToPlane(t);return null===e?null:this.at(e,i)}},{key:"intersectsPlane",value:function(t){var i=t.distanceToPoint(this.origin);return 0===i||t.normal.dot(this.direction)*i<0}},{key:"intersectBox",value:function(t){var i,e,n,h,r,a,u=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new s,o=this.origin,l=this.direction,y=t.min,c=t.max,v=1/l.x,m=1/l.y,x=1/l.z,f=null;return v>=0?(i=(y.x-o.x)*v,e=(c.x-o.x)*v):(i=(c.x-o.x)*v,e=(y.x-o.x)*v),m>=0?(n=(y.y-o.y)*m,h=(c.y-o.y)*m):(n=(c.y-o.y)*m,h=(y.y-o.y)*m),i<=h&&n<=e&&((n>i||i!=i)&&(i=n),(h=0?(r=(y.z-o.z)*x,a=(c.z-o.z)*x):(r=(c.z-o.z)*x,a=(y.z-o.z)*x),i<=a&&r<=e&&((r>i||i!=i)&&(i=r),(a=0&&(f=this.at(i>=0?i:e,u)))),f}},{key:"intersectsBox",value:function(t){return null!==this.intersectBox(t,Y[0])}},{key:"intersectTriangle",value:function(t,i,e,n,s){var h,r,a,u,o,l=this.direction,y=Y[0],c=Y[1],v=Y[2],m=Y[3],x=null;return c.subVectors(i,t),v.subVectors(e,t),m.crossVectors(c,v),0===(h=l.dot(m))||n&&h>0||(h>0?r=1:(r=-1,h=-h),y.subVectors(this.origin,t),(a=r*l.dot(v.crossVectors(y,v)))>=0&&(u=r*l.dot(c.cross(y)))>=0&&a+u<=h&&(o=-r*y.dot(m))>=0&&(x=this.at(o/h,s))),x}},{key:"applyMatrix4",value:function(t){return this.origin.applyMatrix4(t),this.direction.transformDirection(t),this}},{key:"equals",value:function(t){return t.origin.equals(this.origin)&&t.direction.equals(this.direction)}}]),t}(),B=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;i(this,t),this.radius=e,this.phi=n,this.theta=s}return n(t,[{key:"set",value:function(t,i,e){return this.radius=t,this.phi=i,this.theta=e,this}},{key:"copy",value:function(t){return this.radius=t.radius,this.phi=t.phi,this.theta=t.theta,this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"makeSafe",value:function(){return this.phi=Math.max(1e-6,Math.min(Math.PI-1e-6,this.phi)),this}},{key:"setFromVector3",value:function(t){return this.setFromCartesianCoords(t.x,t.y,t.z)}},{key:"setFromCartesianCoords",value:function(t,i,e){return this.radius=Math.sqrt(t*t+i*i+e*e),0===this.radius?(this.theta=0,this.phi=0):(this.theta=Math.atan2(t,e),this.phi=Math.acos(Math.min(Math.max(i/this.radius,-1),1))),this}}]),t}(),E=function(){function t(){i(this,t),this.elements=new Float32Array([1,0,0,1,0,1])}return n(t,[{key:"set",value:function(t,i,e,n,s,h){var r=this.elements;return r[0]=t,r[1]=i,r[3]=n,r[2]=e,r[4]=s,r[5]=h,this}},{key:"identity",value:function(){return this.set(1,0,0,1,0,1),this}},{key:"copy",value:function(t){var i=t.elements;return this.set(i[0],i[1],i[2],i[3],i[4],i[5]),this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"toMatrix3",value:function(t){var i=t.elements;t.set(i[0],i[1],i[2],i[1],i[3],i[4],i[2],i[4],i[5])}},{key:"add",value:function(t){var i=this.elements,e=t.elements;return i[0]+=e[0],i[1]+=e[1],i[3]+=e[3],i[2]+=e[2],i[4]+=e[4],i[5]+=e[5],this}},{key:"norm",value:function(){var t=this.elements,i=t[1]*t[1],e=t[2]*t[2],n=t[4]*t[4];return Math.sqrt(t[0]*t[0]+i+e+i+t[3]*t[3]+n+e+n+t[5]*t[5])}},{key:"off",value:function(){var t=this.elements;return Math.sqrt(2*(t[1]*t[1]+t[2]*t[2]+t[4]*t[4]))}},{key:"applyToVector3",value:function(t){var i=t.x,e=t.y,n=t.z,s=this.elements;return t.x=s[0]*i+s[1]*e+s[2]*n,t.y=s[1]*i+s[3]*e+s[4]*n,t.z=s[2]*i+s[4]*e+s[5]*n,t}},{key:"equals",value:function(t){var i,e=this.elements,n=t.elements,s=!0;for(i=0;s&&i<6;++i)e[i]!==n[i]&&(s=!1);return s}}],[{key:"calculateIndex",value:function(t,i){return 3-(3-t)*(2-t)/2+i}}]),t}(),R=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,h=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;i(this,t),this.x=e,this.y=n,this.z=s,this.w=h}return n(t,[{key:"set",value:function(t,i,e,n){return this.x=t,this.y=i,this.z=e,this.w=n,this}},{key:"random",value:function(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}},{key:"copy",value:function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w,this}},{key:"clone",value:function(){return new this.constructor(this.x,this.y,this.z,this.w)}},{key:"fromArray",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this.x=t[i],this.y=t[i+1],this.z=t[i+2],this.w=t[i+3],this}},{key:"toArray",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return t[i]=this.x,t[i+1]=this.y,t[i+2]=this.z,t[i+3]=this.w,t}},{key:"setAxisAngleFromQuaternion",value:function(t){this.w=2*Math.acos(t.w);var i=Math.sqrt(1-t.w*t.w);return i<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=t.x/i,this.y=t.y/i,this.z=t.z/i),this}},{key:"setAxisAngleFromRotationMatrix",value:function(t){var i,e,n,s,h,r,a,u,o,l,y,c=.01,v=.1,m=t.elements,x=m[0],f=m[4],d=m[8],k=m[1],z=m[5],M=m[9],p=m[2],w=m[6],g=m[10];return Math.abs(f-k)(r=(z+1)/2)&&h>a?ha?r0&&void 0!==arguments[0]?arguments[0]:0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;i(this,t),this.x=e,this.y=n,this.z=s}return n(t,[{key:"set",value:function(t,i,e){return this.x=t,this.y=i,this.z=e,this}},{key:"random",value:function(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}},{key:"copy",value:function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}},{key:"clone",value:function(){return new this.constructor(this.x,this.y,this.z)}},{key:"fromArray",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this.x=t[i],this.y=t[i+1],this.z=t[i+2],this}},{key:"toArray",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return t[i]=this.x,t[i+1]=this.y,t[i+2]=this.z,t}},{key:"setFromSpherical",value:function(t){return this.setFromSphericalCoords(t.radius,t.phi,t.theta)}},{key:"setFromSphericalCoords",value:function(t,i,e){var n=Math.sin(i)*t;return this.x=n*Math.sin(e),this.y=Math.cos(i)*t,this.z=n*Math.cos(e),this}},{key:"setFromCylindrical",value:function(t){return this.setFromCylindricalCoords(t.radius,t.theta,t.y)}},{key:"setFromCylindricalCoords",value:function(t,i,e){return this.x=t*Math.sin(i),this.y=e,this.z=t*Math.cos(i),this}},{key:"setFromMatrix3Column",value:function(t,i){return this.fromArray(t.elements,3*i)}},{key:"setFromMatrixColumn",value:function(t,i){return this.fromArray(t.elements,4*i)}},{key:"setFromMatrixPosition",value:function(t){var i=t.elements;return this.x=i[12],this.y=i[13],this.z=i[14],this}},{key:"setFromMatrixScale",value:function(t){var i=this.setFromMatrixColumn(t,0).length(),e=this.setFromMatrixColumn(t,1).length(),n=this.setFromMatrixColumn(t,2).length();return this.x=i,this.y=e,this.z=n,this}},{key:"add",value:function(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this}},{key:"addScalar",value:function(t){return this.x+=t,this.y+=t,this.z+=t,this}},{key:"addVectors",value:function(t,i){return this.x=t.x+i.x,this.y=t.y+i.y,this.z=t.z+i.z,this}},{key:"addScaledVector",value:function(t,i){return this.x+=t.x*i,this.y+=t.y*i,this.z+=t.z*i,this}},{key:"sub",value:function(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this}},{key:"subScalar",value:function(t){return this.x-=t,this.y-=t,this.z-=t,this}},{key:"subVectors",value:function(t,i){return this.x=t.x-i.x,this.y=t.y-i.y,this.z=t.z-i.z,this}},{key:"multiply",value:function(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this}},{key:"multiplyScalar",value:function(t){return this.x*=t,this.y*=t,this.z*=t,this}},{key:"multiplyVectors",value:function(t,i){return this.x=t.x*i.x,this.y=t.y*i.y,this.z=t.z*i.z,this}},{key:"divide",value:function(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this}},{key:"divideScalar",value:function(t){return this.x/=t,this.y/=t,this.z/=t,this}},{key:"crossVectors",value:function(t,i){var e=t.x,n=t.y,s=t.z,h=i.x,r=i.y,a=i.z;return this.x=n*a-s*r,this.y=s*h-e*a,this.z=e*r-n*h,this}},{key:"cross",value:function(t){return this.crossVectors(this,t)}},{key:"transformDirection",value:function(t){var i=this.x,e=this.y,n=this.z,s=t.elements;return this.x=s[0]*i+s[4]*e+s[8]*n,this.y=s[1]*i+s[5]*e+s[9]*n,this.z=s[2]*i+s[6]*e+s[10]*n,this.normalize()}},{key:"applyMatrix3",value:function(t){var i=this.x,e=this.y,n=this.z,s=t.elements;return this.x=s[0]*i+s[3]*e+s[6]*n,this.y=s[1]*i+s[4]*e+s[7]*n,this.z=s[2]*i+s[5]*e+s[8]*n,this}},{key:"applyNormalMatrix",value:function(t){return this.applyMatrix3(t).normalize()}},{key:"applyMatrix4",value:function(t){var i=this.x,e=this.y,n=this.z,s=t.elements;return this.x=s[0]*i+s[4]*e+s[8]*n+s[12],this.y=s[1]*i+s[5]*e+s[9]*n+s[13],this.z=s[2]*i+s[6]*e+s[10]*n+s[14],this}},{key:"applyQuaternion",value:function(t){var i=this.x,e=this.y,n=this.z,s=t.x,h=t.y,r=t.z,a=t.w,u=a*i+h*n-r*e,o=a*e+r*i-s*n,l=a*n+s*e-h*i,y=-s*i-h*e-r*n;return this.x=u*a+y*-s+o*-r-l*-h,this.y=o*a+y*-h+l*-s-u*-r,this.z=l*a+y*-r+u*-h-o*-s,this}},{key:"negate",value:function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}},{key:"dot",value:function(t){return this.x*t.x+this.y*t.y+this.z*t.z}},{key:"reflect",value:function(t){var i=t.x,e=t.y,n=t.z;return this.sub(t.multiplyScalar(2*this.dot(t))),t.set(i,e,n),this}},{key:"angleTo",value:function(t){var i=Math.sqrt(this.lengthSquared()*t.lengthSquared());return 0===i?.5*Math.PI:Math.acos(Math.min(Math.max(this.dot(t)/i,-1),1))}},{key:"manhattanLength",value:function(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}},{key:"lengthSquared",value:function(){return this.x*this.x+this.y*this.y+this.z*this.z}},{key:"length",value:function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}},{key:"manhattanDistanceTo",value:function(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)+Math.abs(this.z-t.z)}},{key:"distanceToSquared",value:function(t){var i=this.x-t.x,e=this.y-t.y,n=this.z-t.z;return i*i+e*e+n*n}},{key:"distanceTo",value:function(t){return Math.sqrt(this.distanceToSquared(t))}},{key:"normalize",value:function(){return this.divideScalar(this.length())}},{key:"setLength",value:function(t){return this.normalize().multiplyScalar(t)}},{key:"min",value:function(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this}},{key:"max",value:function(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this}},{key:"clamp",value:function(t,i){return this.x=Math.max(t.x,Math.min(i.x,this.x)),this.y=Math.max(t.y,Math.min(i.y,this.y)),this.z=Math.max(t.z,Math.min(i.z,this.z)),this}},{key:"floor",value:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}},{key:"ceil",value:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}},{key:"round",value:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}},{key:"lerp",value:function(t,i){return this.x+=(t.x-this.x)*i,this.y+=(t.y-this.y)*i,this.z+=(t.z-this.z)*i,this}},{key:"lerpVectors",value:function(t,i,e){return this.subVectors(i,t).multiplyScalar(e).add(t)}},{key:"equals",value:function(t){return t.x===this.x&&t.y===this.y&&t.z===this.z}}]),t}(),h=new s,r=[new s,new s,new s,new s,new s,new s,new s,new s],a=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new s(1/0,1/0,1/0),n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new s(-1/0,-1/0,-1/0);i(this,t),this.min=e,this.max=n}return n(t,[{key:"set",value:function(t,i){return this.min.copy(t),this.max.copy(i),this}},{key:"copy",value:function(t){return this.min.copy(t.min),this.max.copy(t.max),this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"makeEmpty",value:function(){return this.min.x=this.min.y=this.min.z=1/0,this.max.x=this.max.y=this.max.z=-1/0,this}},{key:"isEmpty",value:function(){return this.max.x0&&void 0!==arguments[0]?arguments[0]:new s;return this.isEmpty()?t.set(0,0,0):t.addVectors(this.min,this.max).multiplyScalar(.5)}},{key:"getSize",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new s;return this.isEmpty()?t.set(0,0,0):t.subVectors(this.max,this.min)}},{key:"setFromSphere",value:function(t){return this.set(t.center,t.center),this.expandByScalar(t.radius),this}},{key:"expandByPoint",value:function(t){return this.min.min(t),this.max.max(t),this}},{key:"expandByVector",value:function(t){return this.min.sub(t),this.max.add(t),this}},{key:"expandByScalar",value:function(t){return this.min.addScalar(-t),this.max.addScalar(t),this}},{key:"setFromPoints",value:function(t){var i,e;for(this.min.set(0,0,0),this.max.set(0,0,0),i=0,e=t.length;i1&&void 0!==arguments[1]?arguments[1]:new s;return i.copy(t).clamp(this.min,this.max)}},{key:"distanceToPoint",value:function(t){return h.copy(t).clamp(this.min,this.max).sub(t).length()}},{key:"applyMatrix4",value:function(t){var i=this.min,e=this.max;return this.isEmpty()||(r[0].set(i.x,i.y,i.z).applyMatrix4(t),r[1].set(i.x,i.y,e.z).applyMatrix4(t),r[2].set(i.x,e.y,i.z).applyMatrix4(t),r[3].set(i.x,e.y,e.z).applyMatrix4(t),r[4].set(e.x,i.y,i.z).applyMatrix4(t),r[5].set(e.x,i.y,e.z).applyMatrix4(t),r[6].set(e.x,e.y,i.z).applyMatrix4(t),r[7].set(e.x,e.y,e.z).applyMatrix4(t),this.setFromPoints(r)),this}},{key:"translate",value:function(t){return this.min.add(t),this.max.add(t),this}},{key:"intersect",value:function(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this}},{key:"union",value:function(t){return this.min.min(t.min),this.max.max(t.max),this}},{key:"containsPoint",value:function(t){var i=this.min,e=this.max;return t.x>=i.x&&t.y>=i.y&&t.z>=i.z&&t.x<=e.x&&t.y<=e.y&&t.z<=e.z}},{key:"containsBox",value:function(t){var i=this.min,e=this.max,n=t.min,s=t.max;return i.x<=n.x&&s.x<=e.x&&i.y<=n.y&&s.y<=e.y&&i.z<=n.z&&s.z<=e.z}},{key:"intersectsBox",value:function(t){var i=this.min,e=this.max,n=t.min,s=t.max;return s.x>=i.x&&s.y>=i.y&&s.z>=i.z&&n.x<=e.x&&n.y<=e.y&&n.z<=e.z}},{key:"intersectsSphere",value:function(t){return this.clampPoint(t.center,h).distanceToSquared(t.center)<=t.radius*t.radius}},{key:"intersectsPlane",value:function(t){var i,e;return t.normal.x>0?(i=t.normal.x*this.min.x,e=t.normal.x*this.max.x):(i=t.normal.x*this.max.x,e=t.normal.x*this.min.x),t.normal.y>0?(i+=t.normal.y*this.min.y,e+=t.normal.y*this.max.y):(i+=t.normal.y*this.max.y,e+=t.normal.y*this.min.y),t.normal.z>0?(i+=t.normal.z*this.min.z,e+=t.normal.z*this.max.z):(i+=t.normal.z*this.max.z,e+=t.normal.z*this.min.z),i<=-t.constant&&e>=-t.constant}},{key:"equals",value:function(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}]),t}(),u=new a,o=new s,l=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new s,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;i(this,t),this.center=e,this.radius=n}return n(t,[{key:"set",value:function(t,i){return this.center.copy(t),this.radius=i,this}},{key:"copy",value:function(t){return this.center.copy(t.center),this.radius=t.radius,this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"setFromPoints",value:function(t){var i,e,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:u.setFromPoints(t).getCenter(this.center),s=0;for(i=0,e=t.length;i1&&void 0!==arguments[1]?arguments[1]:new s,e=this.center.distanceToSquared(t);return i.copy(t),e>this.radius*this.radius&&(i.sub(this.center).normalize(),i.multiplyScalar(this.radius).add(this.center)),i}},{key:"distanceToPoint",value:function(t){return t.distanceTo(this.center)-this.radius}},{key:"containsPoint",value:function(t){return t.distanceToSquared(this.center)<=this.radius*this.radius}},{key:"intersectsSphere",value:function(t){var i=this.radius+t.radius;return t.center.distanceToSquared(this.center)<=i*i}},{key:"intersectsBox",value:function(t){return t.intersectsSphere(this)}},{key:"intersectsPlane",value:function(t){return Math.abs(t.distanceToPoint(this.center))<=this.radius}},{key:"equals",value:function(t){return t.center.equals(this.center)&&t.radius===this.radius}}]),t}(),y=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;i(this,t),this.x=e,this.y=n}return n(t,[{key:"set",value:function(t,i){return this.x=t,this.y=i,this}},{key:"random",value:function(){return this.x=Math.random(),this.y=Math.random(),this}},{key:"copy",value:function(t){return this.x=t.x,this.y=t.y,this}},{key:"clone",value:function(){return new this.constructor(this.x,this.y)}},{key:"fromArray",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this.x=t[i],this.y=t[i+1],this}},{key:"toArray",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return t[i]=this.x,t[i+1]=this.y,t}},{key:"add",value:function(t){return this.x+=t.x,this.y+=t.y,this}},{key:"addScalar",value:function(t){return this.x+=t,this.y+=t,this}},{key:"addVectors",value:function(t,i){return this.x=t.x+i.x,this.y=t.y+i.y,this}},{key:"addScaledVector",value:function(t,i){return this.x+=t.x*i,this.y+=t.y*i,this}},{key:"sub",value:function(t){return this.x-=t.x,this.y-=t.y,this}},{key:"subScalar",value:function(t){return this.x-=t,this.y-=t,this}},{key:"subVectors",value:function(t,i){return this.x=t.x-i.x,this.y=t.y-i.y,this}},{key:"multiply",value:function(t){return this.x*=t.x,this.y*=t.y,this}},{key:"multiplyScalar",value:function(t){return this.x*=t,this.y*=t,this}},{key:"divide",value:function(t){return this.x/=t.x,this.y/=t.y,this}},{key:"divideScalar",value:function(t){return this.x/=t,this.y/=t,this}},{key:"applyMatrix3",value:function(t){var i=this.x,e=this.y,n=t.elements;return this.x=n[0]*i+n[3]*e+n[6],this.y=n[1]*i+n[4]*e+n[7],this}},{key:"dot",value:function(t){return this.x*t.x+this.y*t.y}},{key:"cross",value:function(t){return this.x*t.y-this.y*t.x}},{key:"manhattanLength",value:function(){return Math.abs(this.x)+Math.abs(this.y)}},{key:"lengthSquared",value:function(){return this.x*this.x+this.y*this.y}},{key:"length",value:function(){return Math.sqrt(this.x*this.x+this.y*this.y)}},{key:"manhattanDistanceTo",value:function(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)}},{key:"distanceToSquared",value:function(t){var i=this.x-t.x,e=this.y-t.y;return i*i+e*e}},{key:"distanceTo",value:function(t){return Math.sqrt(this.distanceToSquared(t))}},{key:"normalize",value:function(){return this.divideScalar(this.length())}},{key:"setLength",value:function(t){return this.normalize().multiplyScalar(t)}},{key:"min",value:function(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this}},{key:"max",value:function(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this}},{key:"clamp",value:function(t,i){return this.x=Math.max(t.x,Math.min(i.x,this.x)),this.y=Math.max(t.y,Math.min(i.y,this.y)),this}},{key:"floor",value:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}},{key:"ceil",value:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}},{key:"round",value:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},{key:"negate",value:function(){return this.x=-this.x,this.y=-this.y,this}},{key:"angle",value:function(){return Math.atan2(-this.y,-this.x)+Math.PI}},{key:"lerp",value:function(t,i){return this.x+=(t.x-this.x)*i,this.y+=(t.y-this.y)*i,this}},{key:"lerpVectors",value:function(t,i,e){return this.subVectors(i,t).multiplyScalar(e).add(t)}},{key:"rotateAround",value:function(t,i){var e=Math.cos(i),n=Math.sin(i),s=this.x-t.x,h=this.y-t.y;return this.x=s*e-h*n+t.x,this.y=s*n+h*e+t.y,this}},{key:"equals",value:function(t){return t.x===this.x&&t.y===this.y}},{key:"width",get:function(){return this.x},set:function(t){return this.x=t}},{key:"height",get:function(){return this.y},set:function(t){return this.y=t}}]),t}(),c=new y,v=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new y(1/0,1/0),n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new y(-1/0,-1/0);i(this,t),this.min=e,this.max=n}return n(t,[{key:"set",value:function(t,i){return this.min.copy(t),this.max.copy(i),this}},{key:"copy",value:function(t){return this.min.copy(t.min),this.max.copy(t.max),this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"makeEmpty",value:function(){return this.min.x=this.min.y=1/0,this.max.x=this.max.y=-1/0,this}},{key:"isEmpty",value:function(){return this.max.x0&&void 0!==arguments[0]?arguments[0]:new y;return this.isEmpty()?t.set(0,0):t.addVectors(this.min,this.max).multiplyScalar(.5)}},{key:"getSize",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new y;return this.isEmpty()?t.set(0,0):t.subVectors(this.max,this.min)}},{key:"getBoundingSphere",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new l;return this.getCenter(t.center),t.radius=.5*this.getSize(c).length(),t}},{key:"expandByPoint",value:function(t){return this.min.min(t),this.max.max(t),this}},{key:"expandByVector",value:function(t){return this.min.sub(t),this.max.add(t),this}},{key:"expandByScalar",value:function(t){return this.min.addScalar(-t),this.max.addScalar(t),this}},{key:"setFromPoints",value:function(t){var i,e;for(this.min.set(0,0),this.max.set(0,0),i=0,e=t.length;i1&&void 0!==arguments[1]?arguments[1]:new y;return i.copy(t).clamp(this.min,this.max)}},{key:"distanceToPoint",value:function(t){return c.copy(t).clamp(this.min,this.max).sub(t).length()}},{key:"translate",value:function(t){return this.min.add(t),this.max.add(t),this}},{key:"intersect",value:function(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this}},{key:"union",value:function(t){return this.min.min(t.min),this.max.max(t.max),this}},{key:"containsPoint",value:function(t){var i=this.min,e=this.max;return t.x>=i.x&&t.y>=i.y&&t.x<=e.x&&t.y<=e.y}},{key:"containsBox",value:function(t){var i=this.min,e=this.max,n=t.min,s=t.max;return i.x<=n.x&&s.x<=e.x&&i.y<=n.y&&s.y<=e.y}},{key:"intersectsBox",value:function(t){var i=this.min,e=this.max,n=t.min,s=t.max;return s.x>=i.x&&s.y>=i.y&&n.x<=e.x&&n.y<=e.y}},{key:"equals",value:function(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}]),t}(),m=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;i(this,t),this.radius=e,this.theta=n,this.y=s}return n(t,[{key:"set",value:function(t,i,e){return this.radius=t,this.theta=i,this.y=e,this}},{key:"copy",value:function(t){return this.radius=t.radius,this.theta=t.theta,this.y=t.y,this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"setFromVector3",value:function(t){return this.setFromCartesianCoords(t.x,t.y,t.z)}},{key:"setFromCartesianCoords",value:function(t,i,e){return this.radius=Math.sqrt(t*t+e*e),this.theta=Math.atan2(t,e),this.y=i,this}}]),t}(),x=function(){function t(){i(this,t),this.elements=new Float32Array([1,0,0,0,1,0,0,0,1])}return n(t,[{key:"set",value:function(t,i,e,n,s,h,r,a,u){var o=this.elements;return o[0]=t,o[3]=i,o[6]=e,o[1]=n,o[4]=s,o[7]=h,o[2]=r,o[5]=a,o[8]=u,this}},{key:"identity",value:function(){return this.set(1,0,0,0,1,0,0,0,1),this}},{key:"copy",value:function(t){var i=t.elements,e=this.elements;return e[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[3],e[4]=i[4],e[5]=i[5],e[6]=i[6],e[7]=i[7],e[8]=i[8],this}},{key:"clone",value:function(){return(new this.constructor).fromArray(this.elements)}},{key:"fromArray",value:function(t){var i,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=this.elements;for(i=0;i<9;++i)n[i]=t[i+e];return this}},{key:"toArray",value:function(){var t,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=this.elements;for(t=0;t<9;++t)i[t+e]=n[t];return i}},{key:"multiplyMatrices",value:function(t,i){var e=t.elements,n=i.elements,s=this.elements,h=e[0],r=e[3],a=e[6],u=e[1],o=e[4],l=e[7],y=e[2],c=e[5],v=e[8],m=n[0],x=n[3],f=n[6],d=n[1],k=n[4],z=n[7],M=n[2],p=n[5],w=n[8];return s[0]=h*m+r*d+a*M,s[3]=h*x+r*k+a*p,s[6]=h*f+r*z+a*w,s[1]=u*m+o*d+l*M,s[4]=u*x+o*k+l*p,s[7]=u*f+o*z+l*w,s[2]=y*m+c*d+v*M,s[5]=y*x+c*k+v*p,s[8]=y*f+c*z+v*w,this}},{key:"multiply",value:function(t){return this.multiplyMatrices(this,t)}},{key:"premultiply",value:function(t){return this.multiplyMatrices(t,this)}},{key:"multiplyScalar",value:function(t){var i=this.elements;return i[0]*=t,i[3]*=t,i[6]*=t,i[1]*=t,i[4]*=t,i[7]*=t,i[2]*=t,i[5]*=t,i[8]*=t,this}},{key:"determinant",value:function(){var t=this.elements,i=t[0],e=t[1],n=t[2],s=t[3],h=t[4],r=t[5],a=t[6],u=t[7],o=t[8];return i*h*o-i*r*u-e*s*o+e*r*a+n*s*u-n*h*a}},{key:"getInverse",value:function(t){var i,e=t.elements,n=this.elements,s=e[0],h=e[1],r=e[2],a=e[3],u=e[4],o=e[5],l=e[6],y=e[7],c=e[8],v=c*u-o*y,m=o*l-c*a,x=y*a-u*l,f=s*v+h*m+r*x;return 0!==f?(i=1/f,n[0]=v*i,n[1]=(r*y-c*h)*i,n[2]=(o*h-r*u)*i,n[3]=m*i,n[4]=(c*s-r*l)*i,n[5]=(r*a-o*s)*i,n[6]=x*i,n[7]=(h*l-y*s)*i,n[8]=(u*s-h*a)*i):this.set(0,0,0,0,0,0,0,0,0),this}},{key:"transpose",value:function(){var t,i=this.elements;return t=i[1],i[1]=i[3],i[3]=t,t=i[2],i[2]=i[6],i[6]=t,t=i[5],i[5]=i[7],i[7]=t,this}},{key:"scale",value:function(t,i){var e=this.elements;return e[0]*=t,e[3]*=t,e[6]*=t,e[1]*=i,e[4]*=i,e[7]*=i,this}},{key:"rotate",value:function(t){var i=Math.cos(t),e=Math.sin(t),n=this.elements,s=n[0],h=n[3],r=n[6],a=n[1],u=n[4],o=n[7];return n[0]=i*s+e*a,n[3]=i*h+e*u,n[6]=i*r+e*o,n[1]=-e*s+i*a,n[4]=-e*h+i*u,n[7]=-e*r+i*o,this}},{key:"translate",value:function(t,i){var e=this.elements;return e[0]+=t*e[2],e[3]+=t*e[5],e[6]+=t*e[8],e[1]+=i*e[2],e[4]+=i*e[5],e[7]+=i*e[8],this}},{key:"equals",value:function(t){var i,e=this.elements,n=t.elements,s=!0;for(i=0;s&&i<9;++i)e[i]!==n[i]&&(s=!1);return s}}]),t}(),f={XYZ:"XYZ",YZX:"YZX",ZXY:"ZXY",XZY:"XZY",YXZ:"YXZ",ZYX:"ZYX"},d=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,h=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;i(this,t),this.x=e,this.y=n,this.z=s,this.w=h}return n(t,[{key:"set",value:function(t,i,e,n){return this.x=t,this.y=i,this.z=e,this.w=n,this}},{key:"copy",value:function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w,this}},{key:"clone",value:function(){return new this.constructor(this.x,this.y,this.z,this.w)}},{key:"fromArray",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this.x=t[i],this.y=t[i+1],this.z=t[i+2],this.w=t[i+3],this}},{key:"toArray",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return t[i]=this.x,t[i+1]=this.y,t[i+2]=this.z,t[i+3]=this.w,t}},{key:"setFromEuler",value:function(t){var i=t.x,e=t.y,n=t.z,s=Math.cos,h=Math.sin,r=s(i/2),a=s(e/2),u=s(n/2),o=h(i/2),l=h(e/2),y=h(n/2);switch(t.order){case f.XYZ:this.x=o*a*u+r*l*y,this.y=r*l*u-o*a*y,this.z=r*a*y+o*l*u,this.w=r*a*u-o*l*y;break;case f.YXZ:this.x=o*a*u+r*l*y,this.y=r*l*u-o*a*y,this.z=r*a*y-o*l*u,this.w=r*a*u+o*l*y;break;case f.ZXY:this.x=o*a*u-r*l*y,this.y=r*l*u+o*a*y,this.z=r*a*y+o*l*u,this.w=r*a*u-o*l*y;break;case f.ZYX:this.x=o*a*u-r*l*y,this.y=r*l*u+o*a*y,this.z=r*a*y-o*l*u,this.w=r*a*u+o*l*y;break;case f.YZX:this.x=o*a*u+r*l*y,this.y=r*l*u+o*a*y,this.z=r*a*y-o*l*u,this.w=r*a*u-o*l*y;break;case f.XZY:this.x=o*a*u-r*l*y,this.y=r*l*u-o*a*y,this.z=r*a*y+o*l*u,this.w=r*a*u+o*l*y}return this}},{key:"setFromAxisAngle",value:function(t,i){var e=i/2,n=Math.sin(e);return this.x=t.x*n,this.y=t.y*n,this.z=t.z*n,this.w=Math.cos(e),this}},{key:"setFromRotationMatrix",value:function(t){var i,e=t.elements,n=e[0],s=e[4],h=e[8],r=e[1],a=e[5],u=e[9],o=e[2],l=e[6],y=e[10],c=n+a+y;return c>0?(i=.5/Math.sqrt(c+1),this.w=.25/i,this.x=(l-u)*i,this.y=(h-o)*i,this.z=(r-s)*i):n>a&&n>y?(i=2*Math.sqrt(1+n-a-y),this.w=(l-u)/i,this.x=.25*i,this.y=(s+r)/i,this.z=(h+o)/i):a>y?(i=2*Math.sqrt(1+a-n-y),this.w=(h-o)/i,this.x=(s+r)/i,this.y=.25*i,this.z=(u+l)/i):(i=2*Math.sqrt(1+y-n-a),this.w=(r-s)/i,this.x=(h+o)/i,this.y=(u+l)/i,this.z=.25*i),this}},{key:"setFromUnitVectors",value:function(t,i){var e=t.dot(i)+1;return e<1e-6?(e=0,Math.abs(t.x)>Math.abs(t.z)?(this.x=-t.y,this.y=t.x,this.z=0,this.w=e):(this.x=0,this.y=-t.z,this.z=t.y,this.w=e)):(this.x=t.y*i.z-t.z*i.y,this.y=t.z*i.x-t.x*i.z,this.z=t.x*i.y-t.y*i.x,this.w=e),this.normalize()}},{key:"angleTo",value:function(t){return 2*Math.acos(Math.abs(Math.min(Math.max(this.dot(t),-1),1)))}},{key:"rotateTowards",value:function(t,i){var e=this.angleTo(t);return 0!==e&&this.slerp(t,Math.min(1,i/e)),this}},{key:"invert",value:function(){return this.conjugate()}},{key:"conjugate",value:function(){return this.x*=-1,this.y*=-1,this.z*=-1,this}},{key:"lengthSquared",value:function(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}},{key:"length",value:function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}},{key:"normalize",value:function(){var t,i=this.length();return 0===i?(this.x=0,this.y=0,this.z=0,this.w=1):(t=1/i,this.x=this.x*t,this.y=this.y*t,this.z=this.z*t,this.w=this.w*t),this}},{key:"dot",value:function(t){return this.x*t.x+this.y*t.y+this.z*t.z+this.w*t.w}},{key:"multiplyQuaternions",value:function(t,i){var e=t.x,n=t.y,s=t.z,h=t.w,r=i.x,a=i.y,u=i.z,o=i.w;return this.x=e*o+h*r+n*u-s*a,this.y=n*o+h*a+s*r-e*u,this.z=s*o+h*u+e*a-n*r,this.w=h*o-e*r-n*a-s*u,this}},{key:"multiply",value:function(t){return this.multiplyQuaternions(this,t)}},{key:"premultiply",value:function(t){return this.multiplyQuaternions(t,this)}},{key:"slerp",value:function(t,i){var e,n,s,h,r,a,u,o=this.x,l=this.y,y=this.z,c=this.w;return 1===i?this.copy(t):i>0&&((e=c*t.w+o*t.x+l*t.y+y*t.z)<0?(this.w=-t.w,this.x=-t.x,this.y=-t.y,this.z=-t.z,e=-e):this.copy(t),e>=1?(this.w=c,this.x=o,this.y=l,this.z=y):(r=1-i,(n=1-e*e)<=Number.EPSILON?(this.w=r*c+i*this.w,this.x=r*o+i*this.x,this.y=r*l+i*this.y,this.z=r*y+i*this.z,this.normalize()):(s=Math.sqrt(n),h=Math.atan2(s,e),a=Math.sin(r*h)/s,u=Math.sin(i*h)/s,this.w=c*a+this.w*u,this.x=o*a+this.x*u,this.y=l*a+this.y*u,this.z=y*a+this.z*u))),this}},{key:"equals",value:function(t){return t.x===this.x&&t.y===this.y&&t.z===this.z&&t.w===this.w}}],[{key:"slerp",value:function(t,i,e,n){return e.copy(t).slerp(i,n)}},{key:"slerpFlat",value:function(t,i,e,n,s,h,r){var a,u,o,l,y,c,v,m,x=s[h],f=s[h+1],d=s[h+2],k=s[h+3],z=e[n],M=e[n+1],p=e[n+2],w=e[n+3];w===k&&z===x&&M===f&&p===d||(a=1-r,c=(l=z*x+M*f+p*d+w*k)>=0?1:-1,(y=1-l*l)>Number.EPSILON&&(o=Math.sqrt(y),v=Math.atan2(o,l*c),a=Math.sin(a*v)/o,r=Math.sin(r*v)/o),z=z*a+x*(m=r*c),M=M*a+f*m,p=p*a+d*m,w=w*a+k*m,a===1-r&&(z*=u=1/Math.sqrt(z*z+M*M+p*p+w*w),M*=u,p*=u,w*=u)),t[i]=z,t[i+1]=M,t[i+2]=p,t[i+3]=w}}]),t}();function k(t,i,e){return Math.max(Math.min(t,e),i)}var z=new x,M=new d,p=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;i(this,t),this.x=e,this.y=n,this.z=s,this.order=t.defaultOrder}return n(t,[{key:"set",value:function(t,i,e,n){return this.x=t,this.y=i,this.z=e,this.order=n,this}},{key:"copy",value:function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.order=t.order,this}},{key:"clone",value:function(){return new this.constructor(this.x,this.y,this.z,this.order)}},{key:"fromArray",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this.x=t[i],this.y=t[i+1],this.z=t[i+2],this.order=t[i+3],this}},{key:"toArray",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return t[i]=this.x,t[i+1]=this.y,t[i+2]=this.z,t[i+3]=this.order,t}},{key:"toVector3",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new s;return t.set(this.x,this.y,this.z)}},{key:"setFromRotationMatrix",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.order,e=t.elements,n=e[0],s=e[4],h=e[8],r=e[1],a=e[5],u=e[9],o=e[2],l=e[6],y=e[10],c=1-1e-7;switch(i){case f.XYZ:this.y=Math.asin(k(h,-1,1)),Math.abs(h)1&&void 0!==arguments[1]?arguments[1]:this.order;return this.set(t.x,t.y,t.z,i)}},{key:"reorder",value:function(t){return M.setFromEuler(this),this.setFromQuaternion(M,t)}},{key:"equals",value:function(t){return t.x===this.x&&t.y===this.y&&t.z===this.z&&t.order===this.order}}],[{key:"defaultOrder",get:function(){return f.XYZ}}]),t}(),w=new s,g=new s,S=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new s(1,0,0),n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;i(this,t),this.normal=e,this.constant=n}return n(t,[{key:"set",value:function(t,i){return this.normal.copy(t),this.constant=i,this}},{key:"setComponents",value:function(t,i,e,n){return this.normal.set(t,i,e),this.constant=n,this}},{key:"copy",value:function(t){return this.normal.copy(t.normal),this.constant=t.constant,this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"setFromNormalAndCoplanarPoint",value:function(t,i){return this.normal.copy(t),this.constant=-i.dot(this.normal),this}},{key:"setFromCoplanarPoints",value:function(t,i,e){var n=w.subVectors(e,i).cross(g.subVectors(t,i)).normalize();return this.setFromNormalAndCoplanarPoint(n,w),this}},{key:"normalize",value:function(){var t=1/this.normal.length();return this.normal.multiplyScalar(t),this.constant*=t,this}},{key:"negate",value:function(){return this.normal.negate(),this.constant=-this.constant,this}},{key:"distanceToPoint",value:function(t){return this.normal.dot(t)+this.constant}},{key:"distanceToSphere",value:function(t){return this.distanceToPoint(t.center)-t.radius}},{key:"projectPoint",value:function(t,i){return i.copy(this.normal).multiplyScalar(-this.distanceToPoint(t)).add(t)}},{key:"coplanarPoint",value:function(t){return t.copy(this.normal).multiplyScalar(-this.constant)}},{key:"translate",value:function(t){return this.constant-=t.dot(this.normal),this}},{key:"intersectLine",value:function(t,i){var e=t.delta(w),n=this.normal.dot(e);if(0===n)0===this.distanceToPoint(t.start)&&i.copy(t.start);else{var s=-(t.start.dot(this.normal)+this.constant)/n;s>=0&&s<=1&&i.copy(e).multiplyScalar(s).add(t.start)}return i}},{key:"intersectsLine",value:function(t){var i=this.distanceToPoint(t.start),e=this.distanceToPoint(t.end);return i<0&&e>0||e<0&&i>0}},{key:"intersectsBox",value:function(t){return t.intersectsPlane(this)}},{key:"intersectsSphere",value:function(t){return t.intersectsPlane(this)}},{key:"equals",value:function(t){return t.normal.equals(this.normal)&&t.constant===this.constant}}]),t}(),b=new s,q=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new S,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new S,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new S,h=arguments.length>3&&void 0!==arguments[3]?arguments[3]:new S,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:new S,a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:new S;i(this,t),this.planes=[e,n,s,h,r,a]}return n(t,[{key:"set",value:function(t,i,e,n,s,h){var r=this.planes;return r[0].copy(t),r[1].copy(i),r[2].copy(e),r[3].copy(n),r[4].copy(s),r[5].copy(h),this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"copy",value:function(t){var i,e=this.planes;for(i=0;i<6;++i)e[i].copy(t.planes[i]);return this}},{key:"setFromMatrix",value:function(t){return this.setFromProjectionMatrix(t)}},{key:"setFromProjectionMatrix",value:function(t){var i=this.planes,e=t.elements,n=e[0],s=e[1],h=e[2],r=e[3],a=e[4],u=e[5],o=e[6],l=e[7],y=e[8],c=e[9],v=e[10],m=e[11],x=e[12],f=e[13],d=e[14],k=e[15];return i[0].setComponents(r-n,l-a,m-y,k-x).normalize(),i[1].setComponents(r+n,l+a,m+y,k+x).normalize(),i[2].setComponents(r+s,l+u,m+c,k+f).normalize(),i[3].setComponents(r-s,l-u,m-c,k-f).normalize(),i[4].setComponents(r-h,l-o,m-v,k-d).normalize(),i[5].setComponents(r+h,l+o,m+v,k+d).normalize(),this}},{key:"intersectsSphere",value:function(t){var i,e=this.planes,n=t.center,s=-t.radius,h=!0;for(i=0;i<6;++i)if(e[i].distanceToPoint(n)0?h.x:s.x,b.y=e.normal.y>0?h.y:s.y,b.z=e.normal.z>0?h.z:s.z,e.distanceToPoint(b)<0)return!1;return!0}},{key:"containsPoint",value:function(t){var i,e=this.planes,n=!0;for(i=0;i<6;++i)if(e[i].distanceToPoint(t)<0){n=!1;break}return n}}]),t}(),P=new s,F=new s,T=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new s,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new s;i(this,t),this.start=e,this.end=n}return n(t,[{key:"set",value:function(t,i){return this.start.copy(t),this.end.copy(i),this}},{key:"copy",value:function(t){return this.start.copy(t.start),this.end.copy(t.end),this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"getCenter",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new s;return t.addVectors(this.start,this.end).multiplyScalar(.5)}},{key:"delta",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new s;return t.subVectors(this.end,this.start)}},{key:"lengthSquared",value:function(){return this.start.distanceToSquared(this.end)}},{key:"length",value:function(){return this.start.distanceTo(this.end)}},{key:"at",value:function(t,i){return this.delta(i).multiplyScalar(t).add(this.start)}},{key:"closestPointToPointParameter",value:function(t,i){P.subVectors(t,this.start),F.subVectors(this.end,this.start);var e=F.dot(F),n=F.dot(P);return i?Math.min(Math.max(n/e,0),1):n/e}},{key:"closestPointToPoint",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new s,n=this.closestPointToPointParameter(t,i);return this.delta(e).multiplyScalar(n).add(this.start)}},{key:"equals",value:function(t){return t.start.equals(this.start)&&t.end.equals(this.end)}}]),t}(),V=new s,C=new s,A=new s,X=function(){function t(){i(this,t),this.elements=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])}return n(t,[{key:"set",value:function(t,i,e,n,s,h,r,a,u,o,l,y,c,v,m,x){var f=this.elements;return f[0]=t,f[4]=i,f[8]=e,f[12]=n,f[1]=s,f[5]=h,f[9]=r,f[13]=a,f[2]=u,f[6]=o,f[10]=l,f[14]=y,f[3]=c,f[7]=v,f[11]=m,f[15]=x,this}},{key:"identity",value:function(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}},{key:"copy",value:function(t){var i=t.elements,e=this.elements;return e[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[3],e[4]=i[4],e[5]=i[5],e[6]=i[6],e[7]=i[7],e[8]=i[8],e[9]=i[9],e[10]=i[10],e[11]=i[11],e[12]=i[12],e[13]=i[13],e[14]=i[14],e[15]=i[15],this}},{key:"clone",value:function(){return(new this.constructor).fromArray(this.elements)}},{key:"fromArray",value:function(t){var i,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=this.elements;for(i=0;i<16;++i)n[i]=t[i+e];return this}},{key:"toArray",value:function(){var t,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=this.elements;for(t=0;t<16;++t)i[t+e]=n[t];return i}},{key:"getMaxScaleOnAxis",value:function(){var t=this.elements,i=t[0]*t[0]+t[1]*t[1]+t[2]*t[2],e=t[4]*t[4]+t[5]*t[5]+t[6]*t[6],n=t[8]*t[8]+t[9]*t[9]+t[10]*t[10];return Math.sqrt(Math.max(i,e,n))}},{key:"copyPosition",value:function(t){var i=this.elements,e=t.elements;return i[12]=e[12],i[13]=e[13],i[14]=e[14],this}},{key:"setPosition",value:function(t){var i=this.elements;return i[12]=t.x,i[13]=t.y,i[14]=t.z,this}},{key:"extractBasis",value:function(t,i,e){return t.setFromMatrixColumn(this,0),i.setFromMatrixColumn(this,1),e.setFromMatrixColumn(this,2),this}},{key:"makeBasis",value:function(t,i,e){return this.set(t.x,i.x,e.x,0,t.y,i.y,e.y,0,t.z,i.z,e.z,0,0,0,0,1),this}},{key:"extractRotation",value:function(t){var i=this.elements,e=t.elements,n=1/V.setFromMatrixColumn(t,0).length(),s=1/V.setFromMatrixColumn(t,1).length(),h=1/V.setFromMatrixColumn(t,2).length();return i[0]=e[0]*n,i[1]=e[1]*n,i[2]=e[2]*n,i[3]=0,i[4]=e[4]*s,i[5]=e[5]*s,i[6]=e[6]*s,i[7]=0,i[8]=e[8]*h,i[9]=e[9]*h,i[10]=e[10]*h,i[11]=0,i[12]=0,i[13]=0,i[14]=0,i[15]=1,this}},{key:"makeRotationFromEuler",value:function(t){var i,e,n,s,h,r,a,u,o,l,y,c,v=this.elements,m=t.x,x=t.y,d=t.z,k=Math.cos(m),z=Math.sin(m),M=Math.cos(x),p=Math.sin(x),w=Math.cos(d),g=Math.sin(d);switch(t.order){case f.XYZ:i=k*w,e=k*g,n=z*w,s=z*g,v[0]=M*w,v[4]=-M*g,v[8]=p,v[1]=e+n*p,v[5]=i-s*p,v[9]=-z*M,v[2]=s-i*p,v[6]=n+e*p,v[10]=k*M;break;case f.YXZ:h=M*w,r=M*g,a=p*w,u=p*g,v[0]=h+u*z,v[4]=a*z-r,v[8]=k*p,v[1]=k*g,v[5]=k*w,v[9]=-z,v[2]=r*z-a,v[6]=u+h*z,v[10]=k*M;break;case f.ZXY:h=M*w,r=M*g,a=p*w,u=p*g,v[0]=h-u*z,v[4]=-k*g,v[8]=a+r*z,v[1]=r+a*z,v[5]=k*w,v[9]=u-h*z,v[2]=-k*p,v[6]=z,v[10]=k*M;break;case f.ZYX:i=k*w,e=k*g,n=z*w,s=z*g,v[0]=M*w,v[4]=n*p-e,v[8]=i*p+s,v[1]=M*g,v[5]=s*p+i,v[9]=e*p-n,v[2]=-p,v[6]=z*M,v[10]=k*M;break;case f.YZX:o=k*M,l=k*p,y=z*M,c=z*p,v[0]=M*w,v[4]=c-o*g,v[8]=y*g+l,v[1]=g,v[5]=k*w,v[9]=-z*w,v[2]=-p*w,v[6]=l*g+y,v[10]=o-c*g;break;case f.XZY:o=k*M,l=k*p,y=z*M,c=z*p,v[0]=M*w,v[4]=-g,v[8]=p*w,v[1]=o*g+c,v[5]=k*w,v[9]=l*g-y,v[2]=y*g-l,v[6]=z*w,v[10]=c*g+o}return v[3]=0,v[7]=0,v[11]=0,v[12]=0,v[13]=0,v[14]=0,v[15]=1,this}},{key:"makeRotationFromQuaternion",value:function(t){return this.compose(V.set(0,0,0),t,C.set(1,1,1))}},{key:"lookAt",value:function(t,i,e){var n=this.elements,s=V,h=C,r=A;return r.subVectors(t,i),0===r.lengthSquared()&&(r.z=1),r.normalize(),s.crossVectors(e,r),0===s.lengthSquared()&&(1===Math.abs(e.z)?r.x+=1e-4:r.z+=1e-4,r.normalize(),s.crossVectors(e,r)),s.normalize(),h.crossVectors(r,s),n[0]=s.x,n[4]=h.x,n[8]=r.x,n[1]=s.y,n[5]=h.y,n[9]=r.y,n[2]=s.z,n[6]=h.z,n[10]=r.z,this}},{key:"multiplyMatrices",value:function(t,i){var e=this.elements,n=t.elements,s=i.elements,h=n[0],r=n[4],a=n[8],u=n[12],o=n[1],l=n[5],y=n[9],c=n[13],v=n[2],m=n[6],x=n[10],f=n[14],d=n[3],k=n[7],z=n[11],M=n[15],p=s[0],w=s[4],g=s[8],S=s[12],b=s[1],q=s[5],P=s[9],F=s[13],T=s[2],V=s[6],C=s[10],A=s[14],X=s[3],Y=s[7],Z=s[11],B=s[15];return e[0]=h*p+r*b+a*T+u*X,e[4]=h*w+r*q+a*V+u*Y,e[8]=h*g+r*P+a*C+u*Z,e[12]=h*S+r*F+a*A+u*B,e[1]=o*p+l*b+y*T+c*X,e[5]=o*w+l*q+y*V+c*Y,e[9]=o*g+l*P+y*C+c*Z,e[13]=o*S+l*F+y*A+c*B,e[2]=v*p+m*b+x*T+f*X,e[6]=v*w+m*q+x*V+f*Y,e[10]=v*g+m*P+x*C+f*Z,e[14]=v*S+m*F+x*A+f*B,e[3]=d*p+k*b+z*T+M*X,e[7]=d*w+k*q+z*V+M*Y,e[11]=d*g+k*P+z*C+M*Z,e[15]=d*S+k*F+z*A+M*B,this}},{key:"multiply",value:function(t){return this.multiplyMatrices(this,t)}},{key:"premultiply",value:function(t){return this.multiplyMatrices(t,this)}},{key:"multiplyScalar",value:function(t){var i=this.elements;return i[0]*=t,i[4]*=t,i[8]*=t,i[12]*=t,i[1]*=t,i[5]*=t,i[9]*=t,i[13]*=t,i[2]*=t,i[6]*=t,i[10]*=t,i[14]*=t,i[3]*=t,i[7]*=t,i[11]*=t,i[15]*=t,this}},{key:"determinant",value:function(){var t=this.elements,i=t[0],e=t[4],n=t[8],s=t[12],h=t[1],r=t[5],a=t[9],u=t[13],o=t[2],l=t[6],y=t[10],c=t[14],v=i*r,m=i*a,x=i*u,f=e*h,d=e*a,k=e*u,z=n*h,M=n*r,p=n*u,w=s*h,g=s*r,S=s*a;return t[3]*(S*l-p*l-g*y+k*y+M*c-d*c)+t[7]*(m*c-x*y+w*y-z*c+p*o-S*o)+t[11]*(x*l-v*c-w*l+f*c+g*o-k*o)+t[15]*(-M*o-m*l+v*y+z*l-f*y+d*o)}},{key:"getInverse",value:function(t){var i,e=this.elements,n=t.elements,s=n[0],h=n[1],r=n[2],a=n[3],u=n[4],o=n[5],l=n[6],y=n[7],c=n[8],v=n[9],m=n[10],x=n[11],f=n[12],d=n[13],k=n[14],z=n[15],M=v*k*y-d*m*y+d*l*x-o*k*x-v*l*z+o*m*z,p=f*m*y-c*k*y-f*l*x+u*k*x+c*l*z-u*m*z,w=c*d*y-f*v*y+f*o*x-u*d*x-c*o*z+u*v*z,g=f*v*l-c*d*l-f*o*m+u*d*m+c*o*k-u*v*k,S=s*M+h*p+r*w+a*g;return 0!==S?(i=1/S,e[0]=M*i,e[1]=(d*m*a-v*k*a-d*r*x+h*k*x+v*r*z-h*m*z)*i,e[2]=(o*k*a-d*l*a+d*r*y-h*k*y-o*r*z+h*l*z)*i,e[3]=(v*l*a-o*m*a-v*r*y+h*m*y+o*r*x-h*l*x)*i,e[4]=p*i,e[5]=(c*k*a-f*m*a+f*r*x-s*k*x-c*r*z+s*m*z)*i,e[6]=(f*l*a-u*k*a-f*r*y+s*k*y+u*r*z-s*l*z)*i,e[7]=(u*m*a-c*l*a+c*r*y-s*m*y-u*r*x+s*l*x)*i,e[8]=w*i,e[9]=(f*v*a-c*d*a-f*h*x+s*d*x+c*h*z-s*v*z)*i,e[10]=(u*d*a-f*o*a+f*h*y-s*d*y-u*h*z+s*o*z)*i,e[11]=(c*o*a-u*v*a-c*h*y+s*v*y+u*h*x-s*o*x)*i,e[12]=g*i,e[13]=(c*d*r-f*v*r+f*h*m-s*d*m-c*h*k+s*v*k)*i,e[14]=(f*o*r-u*d*r-f*h*l+s*d*l+u*h*k-s*o*k)*i,e[15]=(u*v*r-c*o*r+c*h*l-s*v*l-u*h*m+s*o*m)*i):this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0),this}},{key:"transpose",value:function(){var t,i=this.elements;return t=i[1],i[1]=i[4],i[4]=t,t=i[2],i[2]=i[8],i[8]=t,t=i[6],i[6]=i[9],i[9]=t,t=i[3],i[3]=i[12],i[12]=t,t=i[7],i[7]=i[13],i[13]=t,t=i[11],i[11]=i[14],i[14]=t,this}},{key:"scale",value:function(t,i,e){var n=this.elements;return n[0]*=t,n[4]*=i,n[8]*=e,n[1]*=t,n[5]*=i,n[9]*=e,n[2]*=t,n[6]*=i,n[10]*=e,n[3]*=t,n[7]*=i,n[11]*=e,this}},{key:"makeScale",value:function(t,i,e){return this.set(t,0,0,0,0,i,0,0,0,0,e,0,0,0,0,1),this}},{key:"makeTranslation",value:function(t,i,e){return this.set(1,0,0,t,0,1,0,i,0,0,1,e,0,0,0,1),this}},{key:"makeRotationX",value:function(t){var i=Math.cos(t),e=Math.sin(t);return this.set(1,0,0,0,0,i,-e,0,0,e,i,0,0,0,0,1),this}},{key:"makeRotationY",value:function(t){var i=Math.cos(t),e=Math.sin(t);return this.set(i,0,e,0,0,1,0,0,-e,0,i,0,0,0,0,1),this}},{key:"makeRotationZ",value:function(t){var i=Math.cos(t),e=Math.sin(t);return this.set(i,-e,0,0,e,i,0,0,0,0,1,0,0,0,0,1),this}},{key:"makeRotationAxis",value:function(t,i){var e=Math.cos(i),n=Math.sin(i),s=1-e,h=t.x,r=t.y,a=t.z,u=s*h,o=s*r;return this.set(u*h+e,u*r-n*a,u*a+n*r,0,u*r+n*a,o*r+e,o*a-n*h,0,u*a-n*r,o*a+n*h,s*a*a+e,0,0,0,0,1),this}},{key:"makeShear",value:function(t,i,e){return this.set(1,i,e,0,t,1,e,0,t,i,1,0,0,0,0,1),this}},{key:"compose",value:function(t,i,e){var n=this.elements,s=i.x,h=i.y,r=i.z,a=i.w,u=s+s,o=h+h,l=r+r,y=s*u,c=s*o,v=s*l,m=h*o,x=h*l,f=r*l,d=a*u,k=a*o,z=a*l,M=e.x,p=e.y,w=e.z;return n[0]=(1-(m+f))*M,n[1]=(c+z)*M,n[2]=(v-k)*M,n[3]=0,n[4]=(c-z)*p,n[5]=(1-(y+f))*p,n[6]=(x+d)*p,n[7]=0,n[8]=(v+k)*w,n[9]=(x-d)*w,n[10]=(1-(y+m))*w,n[11]=0,n[12]=t.x,n[13]=t.y,n[14]=t.z,n[15]=1,this}},{key:"decompose",value:function(t,i,e){var n=this.elements,s=n[0],h=n[1],r=n[2],a=n[4],u=n[5],o=n[6],l=n[8],y=n[9],c=n[10],v=this.determinant(),m=V.set(s,h,r).length()*(v<0?-1:1),x=V.set(a,u,o).length(),f=V.set(l,y,c).length(),d=1/m,k=1/x,z=1/f;return t.x=n[12],t.y=n[13],t.z=n[14],n[0]*=d,n[1]*=d,n[2]*=d,n[4]*=k,n[5]*=k,n[6]*=k,n[8]*=z,n[9]*=z,n[10]*=z,i.setFromRotationMatrix(this),n[0]=s,n[1]=h,n[2]=r,n[4]=a,n[5]=u,n[6]=o,n[8]=l,n[9]=y,n[10]=c,e.x=m,e.y=x,e.z=f,this}},{key:"makePerspective",value:function(t,i,e,n,s,h){var r=this.elements,a=2*s/(i-t),u=2*s/(e-n),o=(i+t)/(i-t),l=(e+n)/(e-n),y=-(h+s)/(h-s),c=-2*h*s/(h-s);return r[0]=a,r[4]=0,r[8]=o,r[12]=0,r[1]=0,r[5]=u,r[9]=l,r[13]=0,r[2]=0,r[6]=0,r[10]=y,r[14]=c,r[3]=0,r[7]=0,r[11]=-1,r[15]=0,this}},{key:"makeOrthographic",value:function(t,i,e,n,s,h){var r=this.elements,a=1/(i-t),u=1/(e-n),o=1/(h-s),l=(i+t)*a,y=(e+n)*u,c=(h+s)*o;return r[0]=2*a,r[4]=0,r[8]=0,r[12]=-l,r[1]=0,r[5]=2*u,r[9]=0,r[13]=-y,r[2]=0,r[6]=0,r[10]=-2*o,r[14]=-c,r[3]=0,r[7]=0,r[11]=0,r[15]=1,this}},{key:"equals",value:function(t){var i,e=this.elements,n=t.elements,s=!0;for(i=0;s&&i<16;++i)e[i]!==n[i]&&(s=!1);return s}}]),t}(),Y=[new s,new s,new s,new s],Z=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new s,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new s(0,0,-1);i(this,t),this.origin=e,this.direction=n}return n(t,[{key:"set",value:function(t,i){return this.origin.copy(t),this.direction.copy(i),this}},{key:"copy",value:function(t){return this.origin.copy(t.origin),this.direction.copy(t.direction),this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"at",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new s;return i.copy(this.direction).multiplyScalar(t).add(this.origin)}},{key:"lookAt",value:function(t){return this.direction.copy(t).sub(this.origin).normalize(),this}},{key:"recast",value:function(t){return this.origin.copy(this.at(t,Y[0])),this}},{key:"closestPointToPoint",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new s,e=i.subVectors(t,this.origin).dot(this.direction);return e>=0?i.copy(this.direction).multiplyScalar(e).add(this.origin):i.copy(this.origin)}},{key:"distanceSquaredToPoint",value:function(t){var i=Y[0].subVectors(t,this.origin).dot(this.direction);return i<0?this.origin.distanceToSquared(t):Y[0].copy(this.direction).multiplyScalar(i).add(this.origin).distanceToSquared(t)}},{key:"distanceToPoint",value:function(t){return Math.sqrt(this.distanceSquaredToPoint(t))}},{key:"distanceToPlane",value:function(t){var i=t.normal.dot(this.direction),e=0!==i?-(this.origin.dot(t.normal)+t.constant)/i:0===t.distanceToPoint(this.origin)?0:-1;return e>=0?e:null}},{key:"distanceSquaredToSegment",value:function(t,i,e,n){var s,h,r,a,u,o=Y[0].copy(t).add(i).multiplyScalar(.5),l=Y[1].copy(i).sub(t).normalize(),y=Y[2].copy(this.origin).sub(o),c=.5*t.distanceTo(i),v=-this.direction.dot(l),m=y.dot(this.direction),x=-y.dot(l),f=y.lengthSq(),d=Math.abs(1-v*v);return d>0?(h=v*m-x,r=c*d,(s=v*x-m)>=0?h>=-r?h<=r?u=(s*=a=1/d)*(s+v*(h*=a)+2*m)+h*(v*s+h+2*x)+f:(h=c,u=-(s=Math.max(0,-(v*h+m)))*s+h*(h+2*x)+f):(h=-c,u=-(s=Math.max(0,-(v*h+m)))*s+h*(h+2*x)+f):h<=-r?u=-(s=Math.max(0,-(-v*c+m)))*s+(h=s>0?-c:Math.min(Math.max(-c,-x),c))*(h+2*x)+f:h<=r?(s=0,u=(h=Math.min(Math.max(-c,-x),c))*(h+2*x)+f):u=-(s=Math.max(0,-(v*c+m)))*s+(h=s>0?c:Math.min(Math.max(-c,-x),c))*(h+2*x)+f):(h=v>0?-c:c,u=-(s=Math.max(0,-(v*h+m)))*s+h*(h+2*x)+f),void 0!==e&&e.copy(this.direction).multiplyScalar(s).add(this.origin),void 0!==n&&n.copy(l).multiplyScalar(h).add(o),u}},{key:"intersectSphere",value:function(t){var i,e,n,h=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new s,r=Y[0].subVectors(t.center,this.origin),a=r.dot(this.direction),u=r.dot(r)-a*a,o=t.radius*t.radius,l=null;return u<=o&&(n=a+(i=Math.sqrt(o-u)),((e=a-i)>=0||n>=0)&&(l=e<0?this.at(n,h):this.at(e,h))),l}},{key:"intersectsSphere",value:function(t){return this.distanceSqToPoint(t.center)<=t.radius*t.radius}},{key:"intersectPlane",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new s,e=this.distanceToPlane(t);return null===e?null:this.at(e,i)}},{key:"intersectsPlane",value:function(t){var i=t.distanceToPoint(this.origin);return 0===i||t.normal.dot(this.direction)*i<0}},{key:"intersectBox",value:function(t){var i,e,n,h,r,a,u=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new s,o=this.origin,l=this.direction,y=t.min,c=t.max,v=1/l.x,m=1/l.y,x=1/l.z,f=null;return v>=0?(i=(y.x-o.x)*v,e=(c.x-o.x)*v):(i=(c.x-o.x)*v,e=(y.x-o.x)*v),m>=0?(n=(y.y-o.y)*m,h=(c.y-o.y)*m):(n=(c.y-o.y)*m,h=(y.y-o.y)*m),i<=h&&n<=e&&((n>i||i!=i)&&(i=n),(h=0?(r=(y.z-o.z)*x,a=(c.z-o.z)*x):(r=(c.z-o.z)*x,a=(y.z-o.z)*x),i<=a&&r<=e&&((r>i||i!=i)&&(i=r),(a=0&&(f=this.at(i>=0?i:e,u)))),f}},{key:"intersectsBox",value:function(t){return null!==this.intersectBox(t,Y[0])}},{key:"intersectTriangle",value:function(t,i,e,n,s){var h,r,a,u,o,l=this.direction,y=Y[0],c=Y[1],v=Y[2],m=Y[3],x=null;return c.subVectors(i,t),v.subVectors(e,t),m.crossVectors(c,v),0===(h=l.dot(m))||n&&h>0||(h>0?r=1:(r=-1,h=-h),y.subVectors(this.origin,t),(a=r*l.dot(v.crossVectors(y,v)))>=0&&(u=r*l.dot(c.cross(y)))>=0&&a+u<=h&&(o=-r*y.dot(m))>=0&&(x=this.at(o/h,s))),x}},{key:"applyMatrix4",value:function(t){return this.origin.applyMatrix4(t),this.direction.transformDirection(t),this}},{key:"equals",value:function(t){return t.origin.equals(this.origin)&&t.direction.equals(this.direction)}}]),t}(),B=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;i(this,t),this.radius=e,this.phi=n,this.theta=s}return n(t,[{key:"set",value:function(t,i,e){return this.radius=t,this.phi=i,this.theta=e,this}},{key:"copy",value:function(t){return this.radius=t.radius,this.phi=t.phi,this.theta=t.theta,this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"makeSafe",value:function(){return this.phi=Math.max(1e-6,Math.min(Math.PI-1e-6,this.phi)),this}},{key:"setFromVector3",value:function(t){return this.setFromCartesianCoords(t.x,t.y,t.z)}},{key:"setFromCartesianCoords",value:function(t,i,e){return this.radius=Math.sqrt(t*t+i*i+e*e),0===this.radius?(this.theta=0,this.phi=0):(this.theta=Math.atan2(t,e),this.phi=Math.acos(Math.min(Math.max(i/this.radius,-1),1))),this}}]),t}(),E=function(){function t(){i(this,t),this.elements=new Float32Array([1,0,0,1,0,1])}return n(t,[{key:"set",value:function(t,i,e,n,s,h){var r=this.elements;return r[0]=t,r[1]=i,r[3]=n,r[2]=e,r[4]=s,r[5]=h,this}},{key:"identity",value:function(){return this.set(1,0,0,1,0,1),this}},{key:"copy",value:function(t){var i=t.elements;return this.set(i[0],i[1],i[2],i[3],i[4],i[5]),this}},{key:"clone",value:function(){return(new this.constructor).copy(this)}},{key:"toMatrix3",value:function(t){var i=t.elements;t.set(i[0],i[1],i[2],i[1],i[3],i[4],i[2],i[4],i[5])}},{key:"add",value:function(t){var i=this.elements,e=t.elements;return i[0]+=e[0],i[1]+=e[1],i[3]+=e[3],i[2]+=e[2],i[4]+=e[4],i[5]+=e[5],this}},{key:"norm",value:function(){var t=this.elements,i=t[1]*t[1],e=t[2]*t[2],n=t[4]*t[4];return Math.sqrt(t[0]*t[0]+i+e+i+t[3]*t[3]+n+e+n+t[5]*t[5])}},{key:"off",value:function(){var t=this.elements;return Math.sqrt(2*(t[1]*t[1]+t[2]*t[2]+t[4]*t[4]))}},{key:"applyToVector3",value:function(t){var i=t.x,e=t.y,n=t.z,s=this.elements;return t.x=s[0]*i+s[1]*e+s[2]*n,t.y=s[1]*i+s[3]*e+s[4]*n,t.z=s[2]*i+s[4]*e+s[5]*n,t}},{key:"equals",value:function(t){var i,e=this.elements,n=t.elements,s=!0;for(i=0;s&&i<6;++i)e[i]!==n[i]&&(s=!1);return s}}],[{key:"calculateIndex",value:function(t,i){return 3-(3-t)*(2-t)/2+i}}]),t}(),R=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,h=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;i(this,t),this.x=e,this.y=n,this.z=s,this.w=h}return n(t,[{key:"set",value:function(t,i,e,n){return this.x=t,this.y=i,this.z=e,this.w=n,this}},{key:"random",value:function(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}},{key:"copy",value:function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w,this}},{key:"clone",value:function(){return new this.constructor(this.x,this.y,this.z,this.w)}},{key:"fromArray",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this.x=t[i],this.y=t[i+1],this.z=t[i+2],this.w=t[i+3],this}},{key:"toArray",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return t[i]=this.x,t[i+1]=this.y,t[i+2]=this.z,t[i+3]=this.w,t}},{key:"setAxisAngleFromQuaternion",value:function(t){this.w=2*Math.acos(t.w);var i=Math.sqrt(1-t.w*t.w);return i<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=t.x/i,this.y=t.y/i,this.z=t.z/i),this}},{key:"setAxisAngleFromRotationMatrix",value:function(t){var i,e,n,s,h,r,a,u,o,l,y,c=.01,v=.1,m=t.elements,x=m[0],f=m[4],d=m[8],k=m[1],z=m[5],M=m[9],p=m[2],w=m[6],g=m[10];return Math.abs(f-k)(r=(z+1)/2)&&h>a?ha?r", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": 7, - "updateContext": null - }, - "value": "<", - "start": 9307, - "end": 9308, - "loc": { - "start": { - "line": 625, - "column": 11 - }, - "end": { - "line": 625, - "column": 12 - } - } - }, - { - "type": { - "label": "num", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": 0, - "start": 9309, - "end": 9310, + "value": "x", + "start": 9286, + "end": 9287, "loc": { "start": { - "line": 625, - "column": 13 + "line": 623, + "column": 35 }, "end": { - "line": 625, - "column": 14 + "line": 623, + "column": 36 } } }, @@ -52013,148 +51648,43 @@ "postfix": false, "binop": null }, - "start": 9310, - "end": 9311, - "loc": { - "start": { - "line": 625, - "column": 14 - }, - "end": { - "line": 625, - "column": 15 - } - } - }, - { - "type": { - "label": "{", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 9312, - "end": 9313, - "loc": { - "start": { - "line": 625, - "column": 16 - }, - "end": { - "line": 625, - "column": 17 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "angle", - "start": 9320, - "end": 9325, + "start": 9287, + "end": 9288, "loc": { "start": { - "line": 627, - "column": 3 + "line": 623, + "column": 36 }, "end": { - "line": 627, - "column": 8 + "line": 623, + "column": 37 } } }, { "type": { - "label": "_=", + "label": "+/-", "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "+=", - "start": 9326, - "end": 9328, - "loc": { - "start": { - "line": 627, - "column": 9 - }, - "end": { - "line": 627, - "column": 11 - } - } - }, - { - "type": { - "label": "num", - "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": 2, - "start": 9329, - "end": 9330, - "loc": { - "start": { - "line": 627, - "column": 12 - }, - "end": { - "line": 627, - "column": 13 - } - } - }, - { - "type": { - "label": "*", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, + "prefix": true, "postfix": false, - "binop": 10, + "binop": 9, "updateContext": null }, - "value": "*", - "start": 9331, - "end": 9332, + "value": "+", + "start": 9289, + "end": 9290, "loc": { "start": { - "line": 627, - "column": 14 + "line": 623, + "column": 38 }, "end": { - "line": 627, - "column": 15 + "line": 623, + "column": 39 } } }, @@ -52171,16 +51701,16 @@ "binop": null }, "value": "Math", - "start": 9333, - "end": 9337, + "start": 9291, + "end": 9295, "loc": { "start": { - "line": 627, - "column": 16 + "line": 623, + "column": 40 }, "end": { - "line": 627, - "column": 20 + "line": 623, + "column": 44 } } }, @@ -52197,16 +51727,16 @@ "binop": null, "updateContext": null }, - "start": 9337, - "end": 9338, + "start": 9295, + "end": 9296, "loc": { "start": { - "line": 627, - "column": 20 + "line": 623, + "column": 44 }, "end": { - "line": 627, - "column": 21 + "line": 623, + "column": 45 } } }, @@ -52223,121 +51753,16 @@ "binop": null }, "value": "PI", - "start": 9338, - "end": 9340, - "loc": { - "start": { - "line": 627, - "column": 21 - }, - "end": { - "line": 627, - "column": 23 - } - } - }, - { - "type": { - "label": ";", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "start": 9340, - "end": 9341, - "loc": { - "start": { - "line": 627, - "column": 23 - }, - "end": { - "line": 627, - "column": 24 - } - } - }, - { - "type": { - "label": "}", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 9347, - "end": 9348, - "loc": { - "start": { - "line": 629, - "column": 2 - }, - "end": { - "line": 629, - "column": 3 - } - } - }, - { - "type": { - "label": "return", - "keyword": "return", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "return", - "start": 9354, - "end": 9360, - "loc": { - "start": { - "line": 631, - "column": 2 - }, - "end": { - "line": 631, - "column": 8 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "angle", - "start": 9361, - "end": 9366, + "start": 9296, + "end": 9298, "loc": { "start": { - "line": 631, - "column": 9 + "line": 623, + "column": 45 }, "end": { - "line": 631, - "column": 14 + "line": 623, + "column": 47 } } }, @@ -52354,16 +51779,16 @@ "binop": null, "updateContext": null }, - "start": 9366, - "end": 9367, + "start": 9298, + "end": 9299, "loc": { "start": { - "line": 631, - "column": 14 + "line": 623, + "column": 47 }, "end": { - "line": 631, - "column": 15 + "line": 623, + "column": 48 } } }, @@ -52379,15 +51804,15 @@ "postfix": false, "binop": null }, - "start": 9372, - "end": 9373, + "start": 9304, + "end": 9305, "loc": { "start": { - "line": 633, + "line": 625, "column": 1 }, "end": { - "line": 633, + "line": 625, "column": 2 } } @@ -52395,15 +51820,15 @@ { "type": "CommentBlock", "value": "*\r\n\t * Lerps towards the given vector.\r\n\t *\r\n\t * @param {Vector2} v - The target vector.\r\n\t * @param {Number} alpha - The lerp factor.\r\n\t * @return {Vector2} This vector.\r\n\t ", - "start": 9378, - "end": 9556, + "start": 9310, + "end": 9488, "loc": { "start": { - "line": 635, + "line": 627, "column": 1 }, "end": { - "line": 641, + "line": 633, "column": 4 } } @@ -52421,15 +51846,15 @@ "binop": null }, "value": "lerp", - "start": 9561, - "end": 9565, + "start": 9493, + "end": 9497, "loc": { "start": { - "line": 643, + "line": 635, "column": 1 }, "end": { - "line": 643, + "line": 635, "column": 5 } } @@ -52446,15 +51871,15 @@ "postfix": false, "binop": null }, - "start": 9565, - "end": 9566, + "start": 9497, + "end": 9498, "loc": { "start": { - "line": 643, + "line": 635, "column": 5 }, "end": { - "line": 643, + "line": 635, "column": 6 } } @@ -52472,15 +51897,15 @@ "binop": null }, "value": "v", - "start": 9566, - "end": 9567, + "start": 9498, + "end": 9499, "loc": { "start": { - "line": 643, + "line": 635, "column": 6 }, "end": { - "line": 643, + "line": 635, "column": 7 } } @@ -52498,15 +51923,15 @@ "binop": null, "updateContext": null }, - "start": 9567, - "end": 9568, + "start": 9499, + "end": 9500, "loc": { "start": { - "line": 643, + "line": 635, "column": 7 }, "end": { - "line": 643, + "line": 635, "column": 8 } } @@ -52524,15 +51949,15 @@ "binop": null }, "value": "alpha", - "start": 9569, - "end": 9574, + "start": 9501, + "end": 9506, "loc": { "start": { - "line": 643, + "line": 635, "column": 9 }, "end": { - "line": 643, + "line": 635, "column": 14 } } @@ -52549,15 +51974,15 @@ "postfix": false, "binop": null }, - "start": 9574, - "end": 9575, + "start": 9506, + "end": 9507, "loc": { "start": { - "line": 643, + "line": 635, "column": 14 }, "end": { - "line": 643, + "line": 635, "column": 15 } } @@ -52574,15 +51999,15 @@ "postfix": false, "binop": null }, - "start": 9576, - "end": 9577, + "start": 9508, + "end": 9509, "loc": { "start": { - "line": 643, + "line": 635, "column": 16 }, "end": { - "line": 643, + "line": 635, "column": 17 } } @@ -52602,15 +52027,15 @@ "updateContext": null }, "value": "this", - "start": 9583, - "end": 9587, + "start": 9515, + "end": 9519, "loc": { "start": { - "line": 645, + "line": 637, "column": 2 }, "end": { - "line": 645, + "line": 637, "column": 6 } } @@ -52628,15 +52053,15 @@ "binop": null, "updateContext": null }, - "start": 9587, - "end": 9588, + "start": 9519, + "end": 9520, "loc": { "start": { - "line": 645, + "line": 637, "column": 6 }, "end": { - "line": 645, + "line": 637, "column": 7 } } @@ -52654,15 +52079,15 @@ "binop": null }, "value": "x", - "start": 9588, - "end": 9589, + "start": 9520, + "end": 9521, "loc": { "start": { - "line": 645, + "line": 637, "column": 7 }, "end": { - "line": 645, + "line": 637, "column": 8 } } @@ -52681,15 +52106,15 @@ "updateContext": null }, "value": "+=", - "start": 9590, - "end": 9592, + "start": 9522, + "end": 9524, "loc": { "start": { - "line": 645, + "line": 637, "column": 9 }, "end": { - "line": 645, + "line": 637, "column": 11 } } @@ -52706,15 +52131,15 @@ "postfix": false, "binop": null }, - "start": 9593, - "end": 9594, + "start": 9525, + "end": 9526, "loc": { "start": { - "line": 645, + "line": 637, "column": 12 }, "end": { - "line": 645, + "line": 637, "column": 13 } } @@ -52732,15 +52157,15 @@ "binop": null }, "value": "v", - "start": 9594, - "end": 9595, + "start": 9526, + "end": 9527, "loc": { "start": { - "line": 645, + "line": 637, "column": 13 }, "end": { - "line": 645, + "line": 637, "column": 14 } } @@ -52758,15 +52183,15 @@ "binop": null, "updateContext": null }, - "start": 9595, - "end": 9596, + "start": 9527, + "end": 9528, "loc": { "start": { - "line": 645, + "line": 637, "column": 14 }, "end": { - "line": 645, + "line": 637, "column": 15 } } @@ -52784,15 +52209,15 @@ "binop": null }, "value": "x", - "start": 9596, - "end": 9597, + "start": 9528, + "end": 9529, "loc": { "start": { - "line": 645, + "line": 637, "column": 15 }, "end": { - "line": 645, + "line": 637, "column": 16 } } @@ -52811,15 +52236,15 @@ "updateContext": null }, "value": "-", - "start": 9598, - "end": 9599, + "start": 9530, + "end": 9531, "loc": { "start": { - "line": 645, + "line": 637, "column": 17 }, "end": { - "line": 645, + "line": 637, "column": 18 } } @@ -52839,15 +52264,15 @@ "updateContext": null }, "value": "this", - "start": 9600, - "end": 9604, + "start": 9532, + "end": 9536, "loc": { "start": { - "line": 645, + "line": 637, "column": 19 }, "end": { - "line": 645, + "line": 637, "column": 23 } } @@ -52865,15 +52290,15 @@ "binop": null, "updateContext": null }, - "start": 9604, - "end": 9605, + "start": 9536, + "end": 9537, "loc": { "start": { - "line": 645, + "line": 637, "column": 23 }, "end": { - "line": 645, + "line": 637, "column": 24 } } @@ -52891,15 +52316,15 @@ "binop": null }, "value": "x", - "start": 9605, - "end": 9606, + "start": 9537, + "end": 9538, "loc": { "start": { - "line": 645, + "line": 637, "column": 24 }, "end": { - "line": 645, + "line": 637, "column": 25 } } @@ -52916,15 +52341,15 @@ "postfix": false, "binop": null }, - "start": 9606, - "end": 9607, + "start": 9538, + "end": 9539, "loc": { "start": { - "line": 645, + "line": 637, "column": 25 }, "end": { - "line": 645, + "line": 637, "column": 26 } } @@ -52943,15 +52368,15 @@ "updateContext": null }, "value": "*", - "start": 9608, - "end": 9609, + "start": 9540, + "end": 9541, "loc": { "start": { - "line": 645, + "line": 637, "column": 27 }, "end": { - "line": 645, + "line": 637, "column": 28 } } @@ -52969,15 +52394,15 @@ "binop": null }, "value": "alpha", - "start": 9610, - "end": 9615, + "start": 9542, + "end": 9547, "loc": { "start": { - "line": 645, + "line": 637, "column": 29 }, "end": { - "line": 645, + "line": 637, "column": 34 } } @@ -52995,15 +52420,15 @@ "binop": null, "updateContext": null }, - "start": 9615, - "end": 9616, + "start": 9547, + "end": 9548, "loc": { "start": { - "line": 645, + "line": 637, "column": 34 }, "end": { - "line": 645, + "line": 637, "column": 35 } } @@ -53023,15 +52448,15 @@ "updateContext": null }, "value": "this", - "start": 9620, - "end": 9624, + "start": 9552, + "end": 9556, "loc": { "start": { - "line": 646, + "line": 638, "column": 2 }, "end": { - "line": 646, + "line": 638, "column": 6 } } @@ -53049,15 +52474,15 @@ "binop": null, "updateContext": null }, - "start": 9624, - "end": 9625, + "start": 9556, + "end": 9557, "loc": { "start": { - "line": 646, + "line": 638, "column": 6 }, "end": { - "line": 646, + "line": 638, "column": 7 } } @@ -53075,15 +52500,15 @@ "binop": null }, "value": "y", - "start": 9625, - "end": 9626, + "start": 9557, + "end": 9558, "loc": { "start": { - "line": 646, + "line": 638, "column": 7 }, "end": { - "line": 646, + "line": 638, "column": 8 } } @@ -53102,15 +52527,15 @@ "updateContext": null }, "value": "+=", - "start": 9627, - "end": 9629, + "start": 9559, + "end": 9561, "loc": { "start": { - "line": 646, + "line": 638, "column": 9 }, "end": { - "line": 646, + "line": 638, "column": 11 } } @@ -53127,15 +52552,15 @@ "postfix": false, "binop": null }, - "start": 9630, - "end": 9631, + "start": 9562, + "end": 9563, "loc": { "start": { - "line": 646, + "line": 638, "column": 12 }, "end": { - "line": 646, + "line": 638, "column": 13 } } @@ -53153,15 +52578,15 @@ "binop": null }, "value": "v", - "start": 9631, - "end": 9632, + "start": 9563, + "end": 9564, "loc": { "start": { - "line": 646, + "line": 638, "column": 13 }, "end": { - "line": 646, + "line": 638, "column": 14 } } @@ -53179,15 +52604,15 @@ "binop": null, "updateContext": null }, - "start": 9632, - "end": 9633, + "start": 9564, + "end": 9565, "loc": { "start": { - "line": 646, + "line": 638, "column": 14 }, "end": { - "line": 646, + "line": 638, "column": 15 } } @@ -53205,15 +52630,15 @@ "binop": null }, "value": "y", - "start": 9633, - "end": 9634, + "start": 9565, + "end": 9566, "loc": { "start": { - "line": 646, + "line": 638, "column": 15 }, "end": { - "line": 646, + "line": 638, "column": 16 } } @@ -53232,15 +52657,15 @@ "updateContext": null }, "value": "-", - "start": 9635, - "end": 9636, + "start": 9567, + "end": 9568, "loc": { "start": { - "line": 646, + "line": 638, "column": 17 }, "end": { - "line": 646, + "line": 638, "column": 18 } } @@ -53260,15 +52685,15 @@ "updateContext": null }, "value": "this", - "start": 9637, - "end": 9641, + "start": 9569, + "end": 9573, "loc": { "start": { - "line": 646, + "line": 638, "column": 19 }, "end": { - "line": 646, + "line": 638, "column": 23 } } @@ -53286,15 +52711,15 @@ "binop": null, "updateContext": null }, - "start": 9641, - "end": 9642, + "start": 9573, + "end": 9574, "loc": { "start": { - "line": 646, + "line": 638, "column": 23 }, "end": { - "line": 646, + "line": 638, "column": 24 } } @@ -53312,15 +52737,15 @@ "binop": null }, "value": "y", - "start": 9642, - "end": 9643, + "start": 9574, + "end": 9575, "loc": { "start": { - "line": 646, + "line": 638, "column": 24 }, "end": { - "line": 646, + "line": 638, "column": 25 } } @@ -53337,15 +52762,15 @@ "postfix": false, "binop": null }, - "start": 9643, - "end": 9644, + "start": 9575, + "end": 9576, "loc": { "start": { - "line": 646, + "line": 638, "column": 25 }, "end": { - "line": 646, + "line": 638, "column": 26 } } @@ -53364,15 +52789,15 @@ "updateContext": null }, "value": "*", - "start": 9645, - "end": 9646, + "start": 9577, + "end": 9578, "loc": { "start": { - "line": 646, + "line": 638, "column": 27 }, "end": { - "line": 646, + "line": 638, "column": 28 } } @@ -53390,15 +52815,15 @@ "binop": null }, "value": "alpha", - "start": 9647, - "end": 9652, + "start": 9579, + "end": 9584, "loc": { "start": { - "line": 646, + "line": 638, "column": 29 }, "end": { - "line": 646, + "line": 638, "column": 34 } } @@ -53416,15 +52841,15 @@ "binop": null, "updateContext": null }, - "start": 9652, - "end": 9653, + "start": 9584, + "end": 9585, "loc": { "start": { - "line": 646, + "line": 638, "column": 34 }, "end": { - "line": 646, + "line": 638, "column": 35 } } @@ -53444,15 +52869,15 @@ "updateContext": null }, "value": "return", - "start": 9659, - "end": 9665, + "start": 9591, + "end": 9597, "loc": { "start": { - "line": 648, + "line": 640, "column": 2 }, "end": { - "line": 648, + "line": 640, "column": 8 } } @@ -53472,15 +52897,15 @@ "updateContext": null }, "value": "this", - "start": 9666, - "end": 9670, + "start": 9598, + "end": 9602, "loc": { "start": { - "line": 648, + "line": 640, "column": 9 }, "end": { - "line": 648, + "line": 640, "column": 13 } } @@ -53498,15 +52923,15 @@ "binop": null, "updateContext": null }, - "start": 9670, - "end": 9671, + "start": 9602, + "end": 9603, "loc": { "start": { - "line": 648, + "line": 640, "column": 13 }, "end": { - "line": 648, + "line": 640, "column": 14 } } @@ -53523,15 +52948,15 @@ "postfix": false, "binop": null }, - "start": 9676, - "end": 9677, + "start": 9608, + "end": 9609, "loc": { "start": { - "line": 650, + "line": 642, "column": 1 }, "end": { - "line": 650, + "line": 642, "column": 2 } } @@ -53539,15 +52964,15 @@ { "type": "CommentBlock", "value": "*\r\n\t * Sets this vector to the lerp result of the given vectors.\r\n\t *\r\n\t * @param {Vector2} v1 - A base vector.\r\n\t * @param {Vector2} v2 - The target vector.\r\n\t * @param {Number} alpha - The lerp factor.\r\n\t * @return {Vector2} This vector.\r\n\t ", - "start": 9682, - "end": 9929, + "start": 9614, + "end": 9861, "loc": { "start": { - "line": 652, + "line": 644, "column": 1 }, "end": { - "line": 659, + "line": 651, "column": 4 } } @@ -53565,15 +52990,15 @@ "binop": null }, "value": "lerpVectors", - "start": 9934, - "end": 9945, + "start": 9866, + "end": 9877, "loc": { "start": { - "line": 661, + "line": 653, "column": 1 }, "end": { - "line": 661, + "line": 653, "column": 12 } } @@ -53590,15 +53015,15 @@ "postfix": false, "binop": null }, - "start": 9945, - "end": 9946, + "start": 9877, + "end": 9878, "loc": { "start": { - "line": 661, + "line": 653, "column": 12 }, "end": { - "line": 661, + "line": 653, "column": 13 } } @@ -53616,15 +53041,15 @@ "binop": null }, "value": "v1", - "start": 9946, - "end": 9948, + "start": 9878, + "end": 9880, "loc": { "start": { - "line": 661, + "line": 653, "column": 13 }, "end": { - "line": 661, + "line": 653, "column": 15 } } @@ -53642,15 +53067,15 @@ "binop": null, "updateContext": null }, - "start": 9948, - "end": 9949, + "start": 9880, + "end": 9881, "loc": { "start": { - "line": 661, + "line": 653, "column": 15 }, "end": { - "line": 661, + "line": 653, "column": 16 } } @@ -53668,15 +53093,15 @@ "binop": null }, "value": "v2", - "start": 9950, - "end": 9952, + "start": 9882, + "end": 9884, "loc": { "start": { - "line": 661, + "line": 653, "column": 17 }, "end": { - "line": 661, + "line": 653, "column": 19 } } @@ -53694,15 +53119,15 @@ "binop": null, "updateContext": null }, - "start": 9952, - "end": 9953, + "start": 9884, + "end": 9885, "loc": { "start": { - "line": 661, + "line": 653, "column": 19 }, "end": { - "line": 661, + "line": 653, "column": 20 } } @@ -53720,15 +53145,15 @@ "binop": null }, "value": "alpha", - "start": 9954, - "end": 9959, + "start": 9886, + "end": 9891, "loc": { "start": { - "line": 661, + "line": 653, "column": 21 }, "end": { - "line": 661, + "line": 653, "column": 26 } } @@ -53745,15 +53170,15 @@ "postfix": false, "binop": null }, - "start": 9959, - "end": 9960, + "start": 9891, + "end": 9892, "loc": { "start": { - "line": 661, + "line": 653, "column": 26 }, "end": { - "line": 661, + "line": 653, "column": 27 } } @@ -53770,15 +53195,15 @@ "postfix": false, "binop": null }, - "start": 9961, - "end": 9962, + "start": 9893, + "end": 9894, "loc": { "start": { - "line": 661, + "line": 653, "column": 28 }, "end": { - "line": 661, + "line": 653, "column": 29 } } @@ -53798,15 +53223,15 @@ "updateContext": null }, "value": "return", - "start": 9968, - "end": 9974, + "start": 9900, + "end": 9906, "loc": { "start": { - "line": 663, + "line": 655, "column": 2 }, "end": { - "line": 663, + "line": 655, "column": 8 } } @@ -53826,15 +53251,15 @@ "updateContext": null }, "value": "this", - "start": 9975, - "end": 9979, + "start": 9907, + "end": 9911, "loc": { "start": { - "line": 663, + "line": 655, "column": 9 }, "end": { - "line": 663, + "line": 655, "column": 13 } } @@ -53852,15 +53277,15 @@ "binop": null, "updateContext": null }, - "start": 9979, - "end": 9980, + "start": 9911, + "end": 9912, "loc": { "start": { - "line": 663, + "line": 655, "column": 13 }, "end": { - "line": 663, + "line": 655, "column": 14 } } @@ -53878,15 +53303,15 @@ "binop": null }, "value": "subVectors", - "start": 9980, - "end": 9990, + "start": 9912, + "end": 9922, "loc": { "start": { - "line": 663, + "line": 655, "column": 14 }, "end": { - "line": 663, + "line": 655, "column": 24 } } @@ -53903,15 +53328,15 @@ "postfix": false, "binop": null }, - "start": 9990, - "end": 9991, + "start": 9922, + "end": 9923, "loc": { "start": { - "line": 663, + "line": 655, "column": 24 }, "end": { - "line": 663, + "line": 655, "column": 25 } } @@ -53929,15 +53354,15 @@ "binop": null }, "value": "v2", - "start": 9991, - "end": 9993, + "start": 9923, + "end": 9925, "loc": { "start": { - "line": 663, + "line": 655, "column": 25 }, "end": { - "line": 663, + "line": 655, "column": 27 } } @@ -53955,15 +53380,15 @@ "binop": null, "updateContext": null }, - "start": 9993, - "end": 9994, + "start": 9925, + "end": 9926, "loc": { "start": { - "line": 663, + "line": 655, "column": 27 }, "end": { - "line": 663, + "line": 655, "column": 28 } } @@ -53981,15 +53406,15 @@ "binop": null }, "value": "v1", - "start": 9995, - "end": 9997, + "start": 9927, + "end": 9929, "loc": { "start": { - "line": 663, + "line": 655, "column": 29 }, "end": { - "line": 663, + "line": 655, "column": 31 } } @@ -54006,15 +53431,15 @@ "postfix": false, "binop": null }, - "start": 9997, - "end": 9998, + "start": 9929, + "end": 9930, "loc": { "start": { - "line": 663, + "line": 655, "column": 31 }, "end": { - "line": 663, + "line": 655, "column": 32 } } @@ -54032,15 +53457,15 @@ "binop": null, "updateContext": null }, - "start": 9998, - "end": 9999, + "start": 9930, + "end": 9931, "loc": { "start": { - "line": 663, + "line": 655, "column": 32 }, "end": { - "line": 663, + "line": 655, "column": 33 } } @@ -54058,15 +53483,15 @@ "binop": null }, "value": "multiplyScalar", - "start": 9999, - "end": 10013, + "start": 9931, + "end": 9945, "loc": { "start": { - "line": 663, + "line": 655, "column": 33 }, "end": { - "line": 663, + "line": 655, "column": 47 } } @@ -54083,15 +53508,15 @@ "postfix": false, "binop": null }, - "start": 10013, - "end": 10014, + "start": 9945, + "end": 9946, "loc": { "start": { - "line": 663, + "line": 655, "column": 47 }, "end": { - "line": 663, + "line": 655, "column": 48 } } @@ -54109,15 +53534,15 @@ "binop": null }, "value": "alpha", - "start": 10014, - "end": 10019, + "start": 9946, + "end": 9951, "loc": { "start": { - "line": 663, + "line": 655, "column": 48 }, "end": { - "line": 663, + "line": 655, "column": 53 } } @@ -54134,15 +53559,15 @@ "postfix": false, "binop": null }, - "start": 10019, - "end": 10020, + "start": 9951, + "end": 9952, "loc": { "start": { - "line": 663, + "line": 655, "column": 53 }, "end": { - "line": 663, + "line": 655, "column": 54 } } @@ -54160,15 +53585,15 @@ "binop": null, "updateContext": null }, - "start": 10020, - "end": 10021, + "start": 9952, + "end": 9953, "loc": { "start": { - "line": 663, + "line": 655, "column": 54 }, "end": { - "line": 663, + "line": 655, "column": 55 } } @@ -54186,15 +53611,15 @@ "binop": null }, "value": "add", - "start": 10021, - "end": 10024, + "start": 9953, + "end": 9956, "loc": { "start": { - "line": 663, + "line": 655, "column": 55 }, "end": { - "line": 663, + "line": 655, "column": 58 } } @@ -54211,15 +53636,15 @@ "postfix": false, "binop": null }, - "start": 10024, - "end": 10025, + "start": 9956, + "end": 9957, "loc": { "start": { - "line": 663, + "line": 655, "column": 58 }, "end": { - "line": 663, + "line": 655, "column": 59 } } @@ -54237,15 +53662,15 @@ "binop": null }, "value": "v1", - "start": 10025, - "end": 10027, + "start": 9957, + "end": 9959, "loc": { "start": { - "line": 663, + "line": 655, "column": 59 }, "end": { - "line": 663, + "line": 655, "column": 61 } } @@ -54262,15 +53687,15 @@ "postfix": false, "binop": null }, - "start": 10027, - "end": 10028, + "start": 9959, + "end": 9960, "loc": { "start": { - "line": 663, + "line": 655, "column": 61 }, "end": { - "line": 663, + "line": 655, "column": 62 } } @@ -54288,15 +53713,15 @@ "binop": null, "updateContext": null }, - "start": 10028, - "end": 10029, + "start": 9960, + "end": 9961, "loc": { "start": { - "line": 663, + "line": 655, "column": 62 }, "end": { - "line": 663, + "line": 655, "column": 63 } } @@ -54313,15 +53738,15 @@ "postfix": false, "binop": null }, - "start": 10034, - "end": 10035, + "start": 9966, + "end": 9967, "loc": { "start": { - "line": 665, + "line": 657, "column": 1 }, "end": { - "line": 665, + "line": 657, "column": 2 } } @@ -54329,15 +53754,15 @@ { "type": "CommentBlock", "value": "*\r\n\t * Rotates this vector around a given center.\r\n\t *\r\n\t * @param {Vector2} center - The center.\r\n\t * @param {Number} angle - The rotation in radians.\r\n\t * @return {Vector2} This vector.\r\n\t ", - "start": 10040, - "end": 10235, + "start": 9972, + "end": 10167, "loc": { "start": { - "line": 667, + "line": 659, "column": 1 }, "end": { - "line": 673, + "line": 665, "column": 4 } } @@ -54355,15 +53780,15 @@ "binop": null }, "value": "rotateAround", - "start": 10240, - "end": 10252, + "start": 10172, + "end": 10184, "loc": { "start": { - "line": 675, + "line": 667, "column": 1 }, "end": { - "line": 675, + "line": 667, "column": 13 } } @@ -54380,15 +53805,15 @@ "postfix": false, "binop": null }, - "start": 10252, - "end": 10253, + "start": 10184, + "end": 10185, "loc": { "start": { - "line": 675, + "line": 667, "column": 13 }, "end": { - "line": 675, + "line": 667, "column": 14 } } @@ -54406,15 +53831,15 @@ "binop": null }, "value": "center", - "start": 10253, - "end": 10259, + "start": 10185, + "end": 10191, "loc": { "start": { - "line": 675, + "line": 667, "column": 14 }, "end": { - "line": 675, + "line": 667, "column": 20 } } @@ -54432,15 +53857,15 @@ "binop": null, "updateContext": null }, - "start": 10259, - "end": 10260, + "start": 10191, + "end": 10192, "loc": { "start": { - "line": 675, + "line": 667, "column": 20 }, "end": { - "line": 675, + "line": 667, "column": 21 } } @@ -54458,15 +53883,15 @@ "binop": null }, "value": "angle", - "start": 10261, - "end": 10266, + "start": 10193, + "end": 10198, "loc": { "start": { - "line": 675, + "line": 667, "column": 22 }, "end": { - "line": 675, + "line": 667, "column": 27 } } @@ -54483,15 +53908,15 @@ "postfix": false, "binop": null }, - "start": 10266, - "end": 10267, + "start": 10198, + "end": 10199, "loc": { "start": { - "line": 675, + "line": 667, "column": 27 }, "end": { - "line": 675, + "line": 667, "column": 28 } } @@ -54508,15 +53933,15 @@ "postfix": false, "binop": null }, - "start": 10268, - "end": 10269, + "start": 10200, + "end": 10201, "loc": { "start": { - "line": 675, + "line": 667, "column": 29 }, "end": { - "line": 675, + "line": 667, "column": 30 } } @@ -54536,15 +53961,15 @@ "updateContext": null }, "value": "const", - "start": 10275, - "end": 10280, + "start": 10207, + "end": 10212, "loc": { "start": { - "line": 677, + "line": 669, "column": 2 }, "end": { - "line": 677, + "line": 669, "column": 7 } } @@ -54562,15 +53987,15 @@ "binop": null }, "value": "c", - "start": 10281, - "end": 10282, + "start": 10213, + "end": 10214, "loc": { "start": { - "line": 677, + "line": 669, "column": 8 }, "end": { - "line": 677, + "line": 669, "column": 9 } } @@ -54589,15 +54014,15 @@ "updateContext": null }, "value": "=", - "start": 10283, - "end": 10284, + "start": 10215, + "end": 10216, "loc": { "start": { - "line": 677, + "line": 669, "column": 10 }, "end": { - "line": 677, + "line": 669, "column": 11 } } @@ -54615,15 +54040,15 @@ "binop": null }, "value": "Math", - "start": 10285, - "end": 10289, + "start": 10217, + "end": 10221, "loc": { "start": { - "line": 677, + "line": 669, "column": 12 }, "end": { - "line": 677, + "line": 669, "column": 16 } } @@ -54641,15 +54066,15 @@ "binop": null, "updateContext": null }, - "start": 10289, - "end": 10290, + "start": 10221, + "end": 10222, "loc": { "start": { - "line": 677, + "line": 669, "column": 16 }, "end": { - "line": 677, + "line": 669, "column": 17 } } @@ -54667,15 +54092,15 @@ "binop": null }, "value": "cos", - "start": 10290, - "end": 10293, + "start": 10222, + "end": 10225, "loc": { "start": { - "line": 677, + "line": 669, "column": 17 }, "end": { - "line": 677, + "line": 669, "column": 20 } } @@ -54692,15 +54117,15 @@ "postfix": false, "binop": null }, - "start": 10293, - "end": 10294, + "start": 10225, + "end": 10226, "loc": { "start": { - "line": 677, + "line": 669, "column": 20 }, "end": { - "line": 677, + "line": 669, "column": 21 } } @@ -54718,15 +54143,15 @@ "binop": null }, "value": "angle", - "start": 10294, - "end": 10299, + "start": 10226, + "end": 10231, "loc": { "start": { - "line": 677, + "line": 669, "column": 21 }, "end": { - "line": 677, + "line": 669, "column": 26 } } @@ -54743,15 +54168,15 @@ "postfix": false, "binop": null }, - "start": 10299, - "end": 10300, + "start": 10231, + "end": 10232, "loc": { "start": { - "line": 677, + "line": 669, "column": 26 }, "end": { - "line": 677, + "line": 669, "column": 27 } } @@ -54769,15 +54194,15 @@ "binop": null, "updateContext": null }, - "start": 10300, - "end": 10301, + "start": 10232, + "end": 10233, "loc": { "start": { - "line": 677, + "line": 669, "column": 27 }, "end": { - "line": 677, + "line": 669, "column": 28 } } @@ -54795,15 +54220,15 @@ "binop": null }, "value": "s", - "start": 10302, - "end": 10303, + "start": 10234, + "end": 10235, "loc": { "start": { - "line": 677, + "line": 669, "column": 29 }, "end": { - "line": 677, + "line": 669, "column": 30 } } @@ -54822,15 +54247,15 @@ "updateContext": null }, "value": "=", - "start": 10304, - "end": 10305, + "start": 10236, + "end": 10237, "loc": { "start": { - "line": 677, + "line": 669, "column": 31 }, "end": { - "line": 677, + "line": 669, "column": 32 } } @@ -54848,15 +54273,15 @@ "binop": null }, "value": "Math", - "start": 10306, - "end": 10310, + "start": 10238, + "end": 10242, "loc": { "start": { - "line": 677, + "line": 669, "column": 33 }, "end": { - "line": 677, + "line": 669, "column": 37 } } @@ -54874,15 +54299,15 @@ "binop": null, "updateContext": null }, - "start": 10310, - "end": 10311, + "start": 10242, + "end": 10243, "loc": { "start": { - "line": 677, + "line": 669, "column": 37 }, "end": { - "line": 677, + "line": 669, "column": 38 } } @@ -54900,15 +54325,15 @@ "binop": null }, "value": "sin", - "start": 10311, - "end": 10314, + "start": 10243, + "end": 10246, "loc": { "start": { - "line": 677, + "line": 669, "column": 38 }, "end": { - "line": 677, + "line": 669, "column": 41 } } @@ -54925,15 +54350,15 @@ "postfix": false, "binop": null }, - "start": 10314, - "end": 10315, + "start": 10246, + "end": 10247, "loc": { "start": { - "line": 677, + "line": 669, "column": 41 }, "end": { - "line": 677, + "line": 669, "column": 42 } } @@ -54951,15 +54376,15 @@ "binop": null }, "value": "angle", - "start": 10315, - "end": 10320, + "start": 10247, + "end": 10252, "loc": { "start": { - "line": 677, + "line": 669, "column": 42 }, "end": { - "line": 677, + "line": 669, "column": 47 } } @@ -54976,15 +54401,15 @@ "postfix": false, "binop": null }, - "start": 10320, - "end": 10321, + "start": 10252, + "end": 10253, "loc": { "start": { - "line": 677, + "line": 669, "column": 47 }, "end": { - "line": 677, + "line": 669, "column": 48 } } @@ -55002,15 +54427,15 @@ "binop": null, "updateContext": null }, - "start": 10321, - "end": 10322, + "start": 10253, + "end": 10254, "loc": { "start": { - "line": 677, + "line": 669, "column": 48 }, "end": { - "line": 677, + "line": 669, "column": 49 } } @@ -55030,15 +54455,15 @@ "updateContext": null }, "value": "const", - "start": 10328, - "end": 10333, + "start": 10260, + "end": 10265, "loc": { "start": { - "line": 679, + "line": 671, "column": 2 }, "end": { - "line": 679, + "line": 671, "column": 7 } } @@ -55056,15 +54481,15 @@ "binop": null }, "value": "x", - "start": 10334, - "end": 10335, + "start": 10266, + "end": 10267, "loc": { "start": { - "line": 679, + "line": 671, "column": 8 }, "end": { - "line": 679, + "line": 671, "column": 9 } } @@ -55083,15 +54508,15 @@ "updateContext": null }, "value": "=", - "start": 10336, - "end": 10337, + "start": 10268, + "end": 10269, "loc": { "start": { - "line": 679, + "line": 671, "column": 10 }, "end": { - "line": 679, + "line": 671, "column": 11 } } @@ -55111,15 +54536,15 @@ "updateContext": null }, "value": "this", - "start": 10338, - "end": 10342, + "start": 10270, + "end": 10274, "loc": { "start": { - "line": 679, + "line": 671, "column": 12 }, "end": { - "line": 679, + "line": 671, "column": 16 } } @@ -55137,15 +54562,15 @@ "binop": null, "updateContext": null }, - "start": 10342, - "end": 10343, + "start": 10274, + "end": 10275, "loc": { "start": { - "line": 679, + "line": 671, "column": 16 }, "end": { - "line": 679, + "line": 671, "column": 17 } } @@ -55163,15 +54588,15 @@ "binop": null }, "value": "x", - "start": 10343, - "end": 10344, + "start": 10275, + "end": 10276, "loc": { "start": { - "line": 679, + "line": 671, "column": 17 }, "end": { - "line": 679, + "line": 671, "column": 18 } } @@ -55190,15 +54615,15 @@ "updateContext": null }, "value": "-", - "start": 10345, - "end": 10346, + "start": 10277, + "end": 10278, "loc": { "start": { - "line": 679, + "line": 671, "column": 19 }, "end": { - "line": 679, + "line": 671, "column": 20 } } @@ -55216,15 +54641,15 @@ "binop": null }, "value": "center", - "start": 10347, - "end": 10353, + "start": 10279, + "end": 10285, "loc": { "start": { - "line": 679, + "line": 671, "column": 21 }, "end": { - "line": 679, + "line": 671, "column": 27 } } @@ -55242,15 +54667,15 @@ "binop": null, "updateContext": null }, - "start": 10353, - "end": 10354, + "start": 10285, + "end": 10286, "loc": { "start": { - "line": 679, + "line": 671, "column": 27 }, "end": { - "line": 679, + "line": 671, "column": 28 } } @@ -55268,15 +54693,15 @@ "binop": null }, "value": "x", - "start": 10354, - "end": 10355, + "start": 10286, + "end": 10287, "loc": { "start": { - "line": 679, + "line": 671, "column": 28 }, "end": { - "line": 679, + "line": 671, "column": 29 } } @@ -55294,15 +54719,15 @@ "binop": null, "updateContext": null }, - "start": 10355, - "end": 10356, + "start": 10287, + "end": 10288, "loc": { "start": { - "line": 679, + "line": 671, "column": 29 }, "end": { - "line": 679, + "line": 671, "column": 30 } } @@ -55322,15 +54747,15 @@ "updateContext": null }, "value": "const", - "start": 10360, - "end": 10365, + "start": 10292, + "end": 10297, "loc": { "start": { - "line": 680, + "line": 672, "column": 2 }, "end": { - "line": 680, + "line": 672, "column": 7 } } @@ -55348,15 +54773,15 @@ "binop": null }, "value": "y", - "start": 10366, - "end": 10367, + "start": 10298, + "end": 10299, "loc": { "start": { - "line": 680, + "line": 672, "column": 8 }, "end": { - "line": 680, + "line": 672, "column": 9 } } @@ -55375,15 +54800,15 @@ "updateContext": null }, "value": "=", - "start": 10368, - "end": 10369, + "start": 10300, + "end": 10301, "loc": { "start": { - "line": 680, + "line": 672, "column": 10 }, "end": { - "line": 680, + "line": 672, "column": 11 } } @@ -55403,15 +54828,15 @@ "updateContext": null }, "value": "this", - "start": 10370, - "end": 10374, + "start": 10302, + "end": 10306, "loc": { "start": { - "line": 680, + "line": 672, "column": 12 }, "end": { - "line": 680, + "line": 672, "column": 16 } } @@ -55429,15 +54854,15 @@ "binop": null, "updateContext": null }, - "start": 10374, - "end": 10375, + "start": 10306, + "end": 10307, "loc": { "start": { - "line": 680, + "line": 672, "column": 16 }, "end": { - "line": 680, + "line": 672, "column": 17 } } @@ -55455,15 +54880,15 @@ "binop": null }, "value": "y", - "start": 10375, - "end": 10376, + "start": 10307, + "end": 10308, "loc": { "start": { - "line": 680, + "line": 672, "column": 17 }, "end": { - "line": 680, + "line": 672, "column": 18 } } @@ -55482,15 +54907,15 @@ "updateContext": null }, "value": "-", - "start": 10377, - "end": 10378, + "start": 10309, + "end": 10310, "loc": { "start": { - "line": 680, + "line": 672, "column": 19 }, "end": { - "line": 680, + "line": 672, "column": 20 } } @@ -55508,15 +54933,15 @@ "binop": null }, "value": "center", - "start": 10379, - "end": 10385, + "start": 10311, + "end": 10317, "loc": { "start": { - "line": 680, + "line": 672, "column": 21 }, "end": { - "line": 680, + "line": 672, "column": 27 } } @@ -55534,15 +54959,15 @@ "binop": null, "updateContext": null }, - "start": 10385, - "end": 10386, + "start": 10317, + "end": 10318, "loc": { "start": { - "line": 680, + "line": 672, "column": 27 }, "end": { - "line": 680, + "line": 672, "column": 28 } } @@ -55560,15 +54985,15 @@ "binop": null }, "value": "y", - "start": 10386, - "end": 10387, + "start": 10318, + "end": 10319, "loc": { "start": { - "line": 680, + "line": 672, "column": 28 }, "end": { - "line": 680, + "line": 672, "column": 29 } } @@ -55586,15 +55011,15 @@ "binop": null, "updateContext": null }, - "start": 10387, - "end": 10388, + "start": 10319, + "end": 10320, "loc": { "start": { - "line": 680, + "line": 672, "column": 29 }, "end": { - "line": 680, + "line": 672, "column": 30 } } @@ -55614,15 +55039,15 @@ "updateContext": null }, "value": "this", - "start": 10394, - "end": 10398, + "start": 10326, + "end": 10330, "loc": { "start": { - "line": 682, + "line": 674, "column": 2 }, "end": { - "line": 682, + "line": 674, "column": 6 } } @@ -55640,15 +55065,15 @@ "binop": null, "updateContext": null }, - "start": 10398, - "end": 10399, + "start": 10330, + "end": 10331, "loc": { "start": { - "line": 682, + "line": 674, "column": 6 }, "end": { - "line": 682, + "line": 674, "column": 7 } } @@ -55666,15 +55091,15 @@ "binop": null }, "value": "x", - "start": 10399, - "end": 10400, + "start": 10331, + "end": 10332, "loc": { "start": { - "line": 682, + "line": 674, "column": 7 }, "end": { - "line": 682, + "line": 674, "column": 8 } } @@ -55693,15 +55118,15 @@ "updateContext": null }, "value": "=", - "start": 10401, - "end": 10402, + "start": 10333, + "end": 10334, "loc": { "start": { - "line": 682, + "line": 674, "column": 9 }, "end": { - "line": 682, + "line": 674, "column": 10 } } @@ -55719,15 +55144,15 @@ "binop": null }, "value": "x", - "start": 10403, - "end": 10404, + "start": 10335, + "end": 10336, "loc": { "start": { - "line": 682, + "line": 674, "column": 11 }, "end": { - "line": 682, + "line": 674, "column": 12 } } @@ -55746,15 +55171,15 @@ "updateContext": null }, "value": "*", - "start": 10405, - "end": 10406, + "start": 10337, + "end": 10338, "loc": { "start": { - "line": 682, + "line": 674, "column": 13 }, "end": { - "line": 682, + "line": 674, "column": 14 } } @@ -55772,15 +55197,15 @@ "binop": null }, "value": "c", - "start": 10407, - "end": 10408, + "start": 10339, + "end": 10340, "loc": { "start": { - "line": 682, + "line": 674, "column": 15 }, "end": { - "line": 682, + "line": 674, "column": 16 } } @@ -55799,15 +55224,15 @@ "updateContext": null }, "value": "-", - "start": 10409, - "end": 10410, + "start": 10341, + "end": 10342, "loc": { "start": { - "line": 682, + "line": 674, "column": 17 }, "end": { - "line": 682, + "line": 674, "column": 18 } } @@ -55825,15 +55250,15 @@ "binop": null }, "value": "y", - "start": 10411, - "end": 10412, + "start": 10343, + "end": 10344, "loc": { "start": { - "line": 682, + "line": 674, "column": 19 }, "end": { - "line": 682, + "line": 674, "column": 20 } } @@ -55852,15 +55277,15 @@ "updateContext": null }, "value": "*", - "start": 10413, - "end": 10414, + "start": 10345, + "end": 10346, "loc": { "start": { - "line": 682, + "line": 674, "column": 21 }, "end": { - "line": 682, + "line": 674, "column": 22 } } @@ -55878,15 +55303,15 @@ "binop": null }, "value": "s", - "start": 10415, - "end": 10416, + "start": 10347, + "end": 10348, "loc": { "start": { - "line": 682, + "line": 674, "column": 23 }, "end": { - "line": 682, + "line": 674, "column": 24 } } @@ -55905,15 +55330,15 @@ "updateContext": null }, "value": "+", - "start": 10417, - "end": 10418, + "start": 10349, + "end": 10350, "loc": { "start": { - "line": 682, + "line": 674, "column": 25 }, "end": { - "line": 682, + "line": 674, "column": 26 } } @@ -55931,15 +55356,15 @@ "binop": null }, "value": "center", - "start": 10419, - "end": 10425, + "start": 10351, + "end": 10357, "loc": { "start": { - "line": 682, + "line": 674, "column": 27 }, "end": { - "line": 682, + "line": 674, "column": 33 } } @@ -55957,15 +55382,15 @@ "binop": null, "updateContext": null }, - "start": 10425, - "end": 10426, + "start": 10357, + "end": 10358, "loc": { "start": { - "line": 682, + "line": 674, "column": 33 }, "end": { - "line": 682, + "line": 674, "column": 34 } } @@ -55983,15 +55408,15 @@ "binop": null }, "value": "x", - "start": 10426, - "end": 10427, + "start": 10358, + "end": 10359, "loc": { "start": { - "line": 682, + "line": 674, "column": 34 }, "end": { - "line": 682, + "line": 674, "column": 35 } } @@ -56009,15 +55434,15 @@ "binop": null, "updateContext": null }, - "start": 10427, - "end": 10428, + "start": 10359, + "end": 10360, "loc": { "start": { - "line": 682, + "line": 674, "column": 35 }, "end": { - "line": 682, + "line": 674, "column": 36 } } @@ -56037,15 +55462,15 @@ "updateContext": null }, "value": "this", - "start": 10432, - "end": 10436, + "start": 10364, + "end": 10368, "loc": { "start": { - "line": 683, + "line": 675, "column": 2 }, "end": { - "line": 683, + "line": 675, "column": 6 } } @@ -56063,15 +55488,15 @@ "binop": null, "updateContext": null }, - "start": 10436, - "end": 10437, + "start": 10368, + "end": 10369, "loc": { "start": { - "line": 683, + "line": 675, "column": 6 }, "end": { - "line": 683, + "line": 675, "column": 7 } } @@ -56089,15 +55514,15 @@ "binop": null }, "value": "y", - "start": 10437, - "end": 10438, + "start": 10369, + "end": 10370, "loc": { "start": { - "line": 683, + "line": 675, "column": 7 }, "end": { - "line": 683, + "line": 675, "column": 8 } } @@ -56116,15 +55541,15 @@ "updateContext": null }, "value": "=", - "start": 10439, - "end": 10440, + "start": 10371, + "end": 10372, "loc": { "start": { - "line": 683, + "line": 675, "column": 9 }, "end": { - "line": 683, + "line": 675, "column": 10 } } @@ -56142,15 +55567,15 @@ "binop": null }, "value": "x", - "start": 10441, - "end": 10442, + "start": 10373, + "end": 10374, "loc": { "start": { - "line": 683, + "line": 675, "column": 11 }, "end": { - "line": 683, + "line": 675, "column": 12 } } @@ -56169,15 +55594,15 @@ "updateContext": null }, "value": "*", - "start": 10443, - "end": 10444, + "start": 10375, + "end": 10376, "loc": { "start": { - "line": 683, + "line": 675, "column": 13 }, "end": { - "line": 683, + "line": 675, "column": 14 } } @@ -56195,15 +55620,15 @@ "binop": null }, "value": "s", - "start": 10445, - "end": 10446, + "start": 10377, + "end": 10378, "loc": { "start": { - "line": 683, + "line": 675, "column": 15 }, "end": { - "line": 683, + "line": 675, "column": 16 } } @@ -56222,15 +55647,15 @@ "updateContext": null }, "value": "+", - "start": 10447, - "end": 10448, + "start": 10379, + "end": 10380, "loc": { "start": { - "line": 683, + "line": 675, "column": 17 }, "end": { - "line": 683, + "line": 675, "column": 18 } } @@ -56248,15 +55673,15 @@ "binop": null }, "value": "y", - "start": 10449, - "end": 10450, + "start": 10381, + "end": 10382, "loc": { "start": { - "line": 683, + "line": 675, "column": 19 }, "end": { - "line": 683, + "line": 675, "column": 20 } } @@ -56275,15 +55700,15 @@ "updateContext": null }, "value": "*", - "start": 10451, - "end": 10452, + "start": 10383, + "end": 10384, "loc": { "start": { - "line": 683, + "line": 675, "column": 21 }, "end": { - "line": 683, + "line": 675, "column": 22 } } @@ -56301,15 +55726,15 @@ "binop": null }, "value": "c", - "start": 10453, - "end": 10454, + "start": 10385, + "end": 10386, "loc": { "start": { - "line": 683, + "line": 675, "column": 23 }, "end": { - "line": 683, + "line": 675, "column": 24 } } @@ -56328,15 +55753,15 @@ "updateContext": null }, "value": "+", - "start": 10455, - "end": 10456, + "start": 10387, + "end": 10388, "loc": { "start": { - "line": 683, + "line": 675, "column": 25 }, "end": { - "line": 683, + "line": 675, "column": 26 } } @@ -56354,15 +55779,15 @@ "binop": null }, "value": "center", - "start": 10457, - "end": 10463, + "start": 10389, + "end": 10395, "loc": { "start": { - "line": 683, + "line": 675, "column": 27 }, "end": { - "line": 683, + "line": 675, "column": 33 } } @@ -56380,15 +55805,15 @@ "binop": null, "updateContext": null }, - "start": 10463, - "end": 10464, + "start": 10395, + "end": 10396, "loc": { "start": { - "line": 683, + "line": 675, "column": 33 }, "end": { - "line": 683, + "line": 675, "column": 34 } } @@ -56406,15 +55831,15 @@ "binop": null }, "value": "y", - "start": 10464, - "end": 10465, + "start": 10396, + "end": 10397, "loc": { "start": { - "line": 683, + "line": 675, "column": 34 }, "end": { - "line": 683, + "line": 675, "column": 35 } } @@ -56432,15 +55857,15 @@ "binop": null, "updateContext": null }, - "start": 10465, - "end": 10466, + "start": 10397, + "end": 10398, "loc": { "start": { - "line": 683, + "line": 675, "column": 35 }, "end": { - "line": 683, + "line": 675, "column": 36 } } @@ -56460,15 +55885,15 @@ "updateContext": null }, "value": "return", - "start": 10472, - "end": 10478, + "start": 10404, + "end": 10410, "loc": { "start": { - "line": 685, + "line": 677, "column": 2 }, "end": { - "line": 685, + "line": 677, "column": 8 } } @@ -56488,15 +55913,15 @@ "updateContext": null }, "value": "this", - "start": 10479, - "end": 10483, + "start": 10411, + "end": 10415, "loc": { "start": { - "line": 685, + "line": 677, "column": 9 }, "end": { - "line": 685, + "line": 677, "column": 13 } } @@ -56514,15 +55939,15 @@ "binop": null, "updateContext": null }, - "start": 10483, - "end": 10484, + "start": 10415, + "end": 10416, "loc": { "start": { - "line": 685, + "line": 677, "column": 13 }, "end": { - "line": 685, + "line": 677, "column": 14 } } @@ -56539,15 +55964,15 @@ "postfix": false, "binop": null }, - "start": 10489, - "end": 10490, + "start": 10421, + "end": 10422, "loc": { "start": { - "line": 687, + "line": 679, "column": 1 }, "end": { - "line": 687, + "line": 679, "column": 2 } } @@ -56555,15 +55980,15 @@ { "type": "CommentBlock", "value": "*\r\n\t * Checks if this vector equals the given one.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Boolean} Whether this vector equals the given one.\r\n\t ", - "start": 10495, - "end": 10659, + "start": 10427, + "end": 10591, "loc": { "start": { - "line": 689, + "line": 681, "column": 1 }, "end": { - "line": 694, + "line": 686, "column": 4 } } @@ -56581,15 +56006,15 @@ "binop": null }, "value": "equals", - "start": 10664, - "end": 10670, + "start": 10596, + "end": 10602, "loc": { "start": { - "line": 696, + "line": 688, "column": 1 }, "end": { - "line": 696, + "line": 688, "column": 7 } } @@ -56606,15 +56031,15 @@ "postfix": false, "binop": null }, - "start": 10670, - "end": 10671, + "start": 10602, + "end": 10603, "loc": { "start": { - "line": 696, + "line": 688, "column": 7 }, "end": { - "line": 696, + "line": 688, "column": 8 } } @@ -56632,15 +56057,15 @@ "binop": null }, "value": "v", - "start": 10671, - "end": 10672, + "start": 10603, + "end": 10604, "loc": { "start": { - "line": 696, + "line": 688, "column": 8 }, "end": { - "line": 696, + "line": 688, "column": 9 } } @@ -56657,15 +56082,15 @@ "postfix": false, "binop": null }, - "start": 10672, - "end": 10673, + "start": 10604, + "end": 10605, "loc": { "start": { - "line": 696, + "line": 688, "column": 9 }, "end": { - "line": 696, + "line": 688, "column": 10 } } @@ -56682,15 +56107,15 @@ "postfix": false, "binop": null }, - "start": 10674, - "end": 10675, + "start": 10606, + "end": 10607, "loc": { "start": { - "line": 696, + "line": 688, "column": 11 }, "end": { - "line": 696, + "line": 688, "column": 12 } } @@ -56710,15 +56135,15 @@ "updateContext": null }, "value": "return", - "start": 10681, - "end": 10687, + "start": 10613, + "end": 10619, "loc": { "start": { - "line": 698, + "line": 690, "column": 2 }, "end": { - "line": 698, + "line": 690, "column": 8 } } @@ -56735,15 +56160,15 @@ "postfix": false, "binop": null }, - "start": 10688, - "end": 10689, + "start": 10620, + "end": 10621, "loc": { "start": { - "line": 698, + "line": 690, "column": 9 }, "end": { - "line": 698, + "line": 690, "column": 10 } } @@ -56761,15 +56186,15 @@ "binop": null }, "value": "v", - "start": 10689, - "end": 10690, + "start": 10621, + "end": 10622, "loc": { "start": { - "line": 698, + "line": 690, "column": 10 }, "end": { - "line": 698, + "line": 690, "column": 11 } } @@ -56787,15 +56212,15 @@ "binop": null, "updateContext": null }, - "start": 10690, - "end": 10691, + "start": 10622, + "end": 10623, "loc": { "start": { - "line": 698, + "line": 690, "column": 11 }, "end": { - "line": 698, + "line": 690, "column": 12 } } @@ -56813,15 +56238,15 @@ "binop": null }, "value": "x", - "start": 10691, - "end": 10692, + "start": 10623, + "end": 10624, "loc": { "start": { - "line": 698, + "line": 690, "column": 12 }, "end": { - "line": 698, + "line": 690, "column": 13 } } @@ -56840,15 +56265,15 @@ "updateContext": null }, "value": "===", - "start": 10693, - "end": 10696, + "start": 10625, + "end": 10628, "loc": { "start": { - "line": 698, + "line": 690, "column": 14 }, "end": { - "line": 698, + "line": 690, "column": 17 } } @@ -56868,15 +56293,15 @@ "updateContext": null }, "value": "this", - "start": 10697, - "end": 10701, + "start": 10629, + "end": 10633, "loc": { "start": { - "line": 698, + "line": 690, "column": 18 }, "end": { - "line": 698, + "line": 690, "column": 22 } } @@ -56894,15 +56319,15 @@ "binop": null, "updateContext": null }, - "start": 10701, - "end": 10702, + "start": 10633, + "end": 10634, "loc": { "start": { - "line": 698, + "line": 690, "column": 22 }, "end": { - "line": 698, + "line": 690, "column": 23 } } @@ -56920,15 +56345,15 @@ "binop": null }, "value": "x", - "start": 10702, - "end": 10703, + "start": 10634, + "end": 10635, "loc": { "start": { - "line": 698, + "line": 690, "column": 23 }, "end": { - "line": 698, + "line": 690, "column": 24 } } @@ -56947,15 +56372,15 @@ "updateContext": null }, "value": "&&", - "start": 10704, - "end": 10706, + "start": 10636, + "end": 10638, "loc": { "start": { - "line": 698, + "line": 690, "column": 25 }, "end": { - "line": 698, + "line": 690, "column": 27 } } @@ -56973,15 +56398,15 @@ "binop": null }, "value": "v", - "start": 10707, - "end": 10708, + "start": 10639, + "end": 10640, "loc": { "start": { - "line": 698, + "line": 690, "column": 28 }, "end": { - "line": 698, + "line": 690, "column": 29 } } @@ -56999,15 +56424,15 @@ "binop": null, "updateContext": null }, - "start": 10708, - "end": 10709, + "start": 10640, + "end": 10641, "loc": { "start": { - "line": 698, + "line": 690, "column": 29 }, "end": { - "line": 698, + "line": 690, "column": 30 } } @@ -57025,15 +56450,15 @@ "binop": null }, "value": "y", - "start": 10709, - "end": 10710, + "start": 10641, + "end": 10642, "loc": { "start": { - "line": 698, + "line": 690, "column": 30 }, "end": { - "line": 698, + "line": 690, "column": 31 } } @@ -57052,15 +56477,15 @@ "updateContext": null }, "value": "===", - "start": 10711, - "end": 10714, + "start": 10643, + "end": 10646, "loc": { "start": { - "line": 698, + "line": 690, "column": 32 }, "end": { - "line": 698, + "line": 690, "column": 35 } } @@ -57080,15 +56505,15 @@ "updateContext": null }, "value": "this", - "start": 10715, - "end": 10719, + "start": 10647, + "end": 10651, "loc": { "start": { - "line": 698, + "line": 690, "column": 36 }, "end": { - "line": 698, + "line": 690, "column": 40 } } @@ -57106,15 +56531,15 @@ "binop": null, "updateContext": null }, - "start": 10719, - "end": 10720, + "start": 10651, + "end": 10652, "loc": { "start": { - "line": 698, + "line": 690, "column": 40 }, "end": { - "line": 698, + "line": 690, "column": 41 } } @@ -57132,15 +56557,15 @@ "binop": null }, "value": "y", - "start": 10720, - "end": 10721, + "start": 10652, + "end": 10653, "loc": { "start": { - "line": 698, + "line": 690, "column": 41 }, "end": { - "line": 698, + "line": 690, "column": 42 } } @@ -57157,15 +56582,15 @@ "postfix": false, "binop": null }, - "start": 10721, - "end": 10722, + "start": 10653, + "end": 10654, "loc": { "start": { - "line": 698, + "line": 690, "column": 42 }, "end": { - "line": 698, + "line": 690, "column": 43 } } @@ -57183,15 +56608,15 @@ "binop": null, "updateContext": null }, - "start": 10722, - "end": 10723, + "start": 10654, + "end": 10655, "loc": { "start": { - "line": 698, + "line": 690, "column": 43 }, "end": { - "line": 698, + "line": 690, "column": 44 } } @@ -57208,15 +56633,15 @@ "postfix": false, "binop": null }, - "start": 10728, - "end": 10729, + "start": 10660, + "end": 10661, "loc": { "start": { - "line": 700, + "line": 692, "column": 1 }, "end": { - "line": 700, + "line": 692, "column": 2 } } @@ -57233,15 +56658,15 @@ "postfix": false, "binop": null }, - "start": 10733, - "end": 10734, + "start": 10665, + "end": 10666, "loc": { "start": { - "line": 702, + "line": 694, "column": 0 }, "end": { - "line": 702, + "line": 694, "column": 1 } } @@ -57259,15 +56684,15 @@ "binop": null, "updateContext": null }, - "start": 10736, - "end": 10736, + "start": 10668, + "end": 10668, "loc": { "start": { - "line": 703, + "line": 695, "column": 0 }, "end": { - "line": 703, + "line": 695, "column": 0 } } diff --git a/docs/ast/source/Vector3.js.json b/docs/ast/source/Vector3.js.json index df1db53..8c55c9e 100644 --- a/docs/ast/source/Vector3.js.json +++ b/docs/ast/source/Vector3.js.json @@ -1,7 +1,7 @@ { "type": "File", "start": 0, - "end": 16373, + "end": 16388, "loc": { "start": { "line": 1, @@ -15,7 +15,7 @@ "program": { "type": "Program", "start": 0, - "end": 16373, + "end": 16388, "loc": { "start": { "line": 1, @@ -31,7 +31,7 @@ { "type": "ExportNamedDeclaration", "start": 48, - "end": 16371, + "end": 16386, "loc": { "start": { "line": 5, @@ -47,7 +47,7 @@ "declaration": { "type": "ClassDeclaration", "start": 55, - "end": 16371, + "end": 16386, "loc": { "start": { "line": 5, @@ -80,7 +80,7 @@ "body": { "type": "ClassBody", "start": 69, - "end": 16371, + "end": 16386, "loc": { "start": { "line": 5, @@ -27011,7 +27011,7 @@ { "type": "ClassMethod", "start": 11712, - "end": 11916, + "end": 11931, "loc": { "start": { "line": 677, @@ -27069,7 +27069,7 @@ "body": { "type": "BlockStatement", "start": 11723, - "end": 11916, + "end": 11931, "loc": { "start": { "line": 677, @@ -27084,7 +27084,7 @@ { "type": "VariableDeclaration", "start": 11730, - "end": 11812, + "end": 11802, "loc": { "start": { "line": 679, @@ -27092,14 +27092,14 @@ }, "end": { "line": 679, - "column": 84 + "column": 74 } }, "declarations": [ { "type": "VariableDeclarator", "start": 11736, - "end": 11811, + "end": 11801, "loc": { "start": { "line": 679, @@ -27107,13 +27107,13 @@ }, "end": { "line": 679, - "column": 83 + "column": 73 } }, "id": { "type": "Identifier", "start": 11736, - "end": 11741, + "end": 11747, "loc": { "start": { "line": 679, @@ -27121,662 +27121,781 @@ }, "end": { "line": 679, - "column": 13 + "column": 19 }, - "identifierName": "theta" + "identifierName": "denominator" }, - "name": "theta" + "name": "denominator" }, "init": { - "type": "BinaryExpression", - "start": 11744, - "end": 11811, + "type": "CallExpression", + "start": 11750, + "end": 11801, "loc": { "start": { "line": 679, - "column": 16 + "column": 22 }, "end": { "line": 679, - "column": 83 + "column": 73 } }, - "left": { - "type": "CallExpression", - "start": 11744, - "end": 11755, + "callee": { + "type": "MemberExpression", + "start": 11750, + "end": 11759, "loc": { "start": { "line": 679, - "column": 16 + "column": 22 }, "end": { "line": 679, - "column": 27 + "column": 31 } }, - "callee": { - "type": "MemberExpression", - "start": 11744, - "end": 11752, + "object": { + "type": "Identifier", + "start": 11750, + "end": 11754, "loc": { "start": { "line": 679, - "column": 16 + "column": 22 }, "end": { "line": 679, - "column": 24 - } - }, - "object": { - "type": "ThisExpression", - "start": 11744, - "end": 11748, - "loc": { - "start": { - "line": 679, - "column": 16 - }, - "end": { - "line": 679, - "column": 20 - } - } - }, - "property": { - "type": "Identifier", - "start": 11749, - "end": 11752, - "loc": { - "start": { - "line": 679, - "column": 21 - }, - "end": { - "line": 679, - "column": 24 - }, - "identifierName": "dot" + "column": 26 }, - "name": "dot" + "identifierName": "Math" }, - "computed": false + "name": "Math" }, - "arguments": [ - { - "type": "Identifier", - "start": 11753, - "end": 11754, - "loc": { - "start": { - "line": 679, - "column": 25 - }, - "end": { - "line": 679, - "column": 26 - }, - "identifierName": "v" + "property": { + "type": "Identifier", + "start": 11755, + "end": 11759, + "loc": { + "start": { + "line": 679, + "column": 27 }, - "name": "v" - } - ] - }, - "operator": "/", - "right": { - "type": "CallExpression", - "start": 11759, - "end": 11810, - "loc": { - "start": { - "line": 679, - "column": 31 + "end": { + "line": 679, + "column": 31 + }, + "identifierName": "sqrt" }, - "end": { - "line": 679, - "column": 82 - } + "name": "sqrt" }, - "callee": { - "type": "MemberExpression", - "start": 11759, - "end": 11768, + "computed": false + }, + "arguments": [ + { + "type": "BinaryExpression", + "start": 11760, + "end": 11800, "loc": { "start": { "line": 679, - "column": 31 + "column": 32 }, "end": { "line": 679, - "column": 40 + "column": 72 } }, - "object": { - "type": "Identifier", - "start": 11759, - "end": 11763, - "loc": { - "start": { - "line": 679, - "column": 31 - }, - "end": { - "line": 679, - "column": 35 - }, - "identifierName": "Math" - }, - "name": "Math" - }, - "property": { - "type": "Identifier", - "start": 11764, - "end": 11768, - "loc": { - "start": { - "line": 679, - "column": 36 - }, - "end": { - "line": 679, - "column": 40 - }, - "identifierName": "sqrt" - }, - "name": "sqrt" - }, - "computed": false - }, - "arguments": [ - { - "type": "BinaryExpression", - "start": 11769, - "end": 11809, + "left": { + "type": "CallExpression", + "start": 11760, + "end": 11780, "loc": { "start": { "line": 679, - "column": 41 + "column": 32 }, "end": { "line": 679, - "column": 81 + "column": 52 } }, - "left": { - "type": "CallExpression", - "start": 11769, - "end": 11789, + "callee": { + "type": "MemberExpression", + "start": 11760, + "end": 11778, "loc": { "start": { "line": 679, - "column": 41 + "column": 32 }, "end": { "line": 679, - "column": 61 + "column": 50 } }, - "callee": { - "type": "MemberExpression", - "start": 11769, - "end": 11787, + "object": { + "type": "ThisExpression", + "start": 11760, + "end": 11764, "loc": { "start": { "line": 679, - "column": 41 + "column": 32 }, "end": { "line": 679, - "column": 59 - } - }, - "object": { - "type": "ThisExpression", - "start": 11769, - "end": 11773, - "loc": { - "start": { - "line": 679, - "column": 41 - }, - "end": { - "line": 679, - "column": 45 - } + "column": 36 } - }, - "property": { - "type": "Identifier", - "start": 11774, - "end": 11787, - "loc": { - "start": { - "line": 679, - "column": 46 - }, - "end": { - "line": 679, - "column": 59 - }, - "identifierName": "lengthSquared" + } + }, + "property": { + "type": "Identifier", + "start": 11765, + "end": 11778, + "loc": { + "start": { + "line": 679, + "column": 37 + }, + "end": { + "line": 679, + "column": 50 }, - "name": "lengthSquared" + "identifierName": "lengthSquared" }, - "computed": false + "name": "lengthSquared" + }, + "computed": false + }, + "arguments": [] + }, + "operator": "*", + "right": { + "type": "CallExpression", + "start": 11783, + "end": 11800, + "loc": { + "start": { + "line": 679, + "column": 55 }, - "arguments": [] + "end": { + "line": 679, + "column": 72 + } }, - "operator": "*", - "right": { - "type": "CallExpression", - "start": 11792, - "end": 11809, + "callee": { + "type": "MemberExpression", + "start": 11783, + "end": 11798, "loc": { "start": { "line": 679, - "column": 64 + "column": 55 }, "end": { "line": 679, - "column": 81 + "column": 70 } }, - "callee": { - "type": "MemberExpression", - "start": 11792, - "end": 11807, + "object": { + "type": "Identifier", + "start": 11783, + "end": 11784, "loc": { "start": { "line": 679, - "column": 64 + "column": 55 }, "end": { "line": 679, - "column": 79 - } - }, - "object": { - "type": "Identifier", - "start": 11792, - "end": 11793, - "loc": { - "start": { - "line": 679, - "column": 64 - }, - "end": { - "line": 679, - "column": 65 - }, - "identifierName": "v" + "column": 56 }, - "name": "v" + "identifierName": "v" }, - "property": { - "type": "Identifier", - "start": 11794, - "end": 11807, - "loc": { - "start": { - "line": 679, - "column": 66 - }, - "end": { - "line": 679, - "column": 79 - }, - "identifierName": "lengthSquared" + "name": "v" + }, + "property": { + "type": "Identifier", + "start": 11785, + "end": 11798, + "loc": { + "start": { + "line": 679, + "column": 57 }, - "name": "lengthSquared" + "end": { + "line": 679, + "column": 70 + }, + "identifierName": "lengthSquared" }, - "computed": false + "name": "lengthSquared" }, - "arguments": [] - } + "computed": false + }, + "arguments": [] } - ], - "extra": { - "parenthesized": true, - "parenStart": 11758 } - } + ] } } ], - "kind": "const", - "trailingComments": [ - { - "type": "CommentLine", - "value": " Clamp to avoid numerical problems.", - "start": 11818, - "end": 11855, - "loc": { - "start": { - "line": 681, - "column": 2 - }, - "end": { - "line": 681, - "column": 39 - } - } - } - ] + "kind": "const" }, { "type": "ReturnStatement", - "start": 11859, - "end": 11910, + "start": 11808, + "end": 11925, "loc": { "start": { - "line": 682, + "line": 681, "column": 2 }, "end": { "line": 682, - "column": 53 + "column": 67 } }, "argument": { - "type": "CallExpression", - "start": 11866, - "end": 11909, + "type": "ConditionalExpression", + "start": 11815, + "end": 11924, "loc": { "start": { - "line": 682, + "line": 681, "column": 9 }, "end": { "line": 682, - "column": 52 + "column": 66 } }, - "callee": { - "type": "MemberExpression", - "start": 11866, - "end": 11875, + "test": { + "type": "BinaryExpression", + "start": 11816, + "end": 11835, "loc": { "start": { - "line": 682, - "column": 9 + "line": 681, + "column": 10 }, "end": { - "line": 682, - "column": 18 + "line": 681, + "column": 29 } }, - "object": { + "left": { "type": "Identifier", - "start": 11866, - "end": 11870, + "start": 11816, + "end": 11827, "loc": { "start": { - "line": 682, - "column": 9 + "line": 681, + "column": 10 }, "end": { - "line": 682, - "column": 13 + "line": 681, + "column": 21 }, - "identifierName": "Math" + "identifierName": "denominator" }, - "name": "Math", - "leadingComments": null + "name": "denominator" }, - "property": { - "type": "Identifier", - "start": 11871, - "end": 11875, + "operator": "===", + "right": { + "type": "NumericLiteral", + "start": 11832, + "end": 11835, "loc": { "start": { - "line": 682, - "column": 14 + "line": 681, + "column": 26 }, "end": { - "line": 682, - "column": 18 + "line": 681, + "column": 29 + } + }, + "extra": { + "rawValue": 0, + "raw": "0.0" + }, + "value": 0 + }, + "extra": { + "parenthesized": true, + "parenStart": 11815 + } + }, + "consequent": { + "type": "BinaryExpression", + "start": 11840, + "end": 11853, + "loc": { + "start": { + "line": 681, + "column": 34 + }, + "end": { + "line": 681, + "column": 47 + } + }, + "left": { + "type": "MemberExpression", + "start": 11840, + "end": 11847, + "loc": { + "start": { + "line": 681, + "column": 34 + }, + "end": { + "line": 681, + "column": 41 + } + }, + "object": { + "type": "Identifier", + "start": 11840, + "end": 11844, + "loc": { + "start": { + "line": 681, + "column": 34 + }, + "end": { + "line": 681, + "column": 38 + }, + "identifierName": "Math" + }, + "name": "Math" + }, + "property": { + "type": "Identifier", + "start": 11845, + "end": 11847, + "loc": { + "start": { + "line": 681, + "column": 39 + }, + "end": { + "line": 681, + "column": 41 + }, + "identifierName": "PI" }, - "identifierName": "acos" + "name": "PI" }, - "name": "acos" + "computed": false }, - "computed": false, - "leadingComments": null + "operator": "*", + "right": { + "type": "NumericLiteral", + "start": 11850, + "end": 11853, + "loc": { + "start": { + "line": 681, + "column": 44 + }, + "end": { + "line": 681, + "column": 47 + } + }, + "extra": { + "rawValue": 0.5, + "raw": "0.5" + }, + "value": 0.5 + }, + "extra": { + "parenthesized": true, + "parenStart": 11839 + } }, - "arguments": [ - { - "type": "CallExpression", - "start": 11876, - "end": 11908, + "alternate": { + "type": "CallExpression", + "start": 11861, + "end": 11924, + "loc": { + "start": { + "line": 682, + "column": 3 + }, + "end": { + "line": 682, + "column": 66 + } + }, + "callee": { + "type": "MemberExpression", + "start": 11861, + "end": 11870, "loc": { "start": { "line": 682, - "column": 19 + "column": 3 }, "end": { "line": 682, - "column": 51 + "column": 12 } }, - "callee": { - "type": "MemberExpression", - "start": 11876, - "end": 11884, + "object": { + "type": "Identifier", + "start": 11861, + "end": 11865, "loc": { "start": { "line": 682, - "column": 19 + "column": 3 }, "end": { "line": 682, - "column": 27 - } - }, - "object": { - "type": "Identifier", - "start": 11876, - "end": 11880, - "loc": { - "start": { - "line": 682, - "column": 19 - }, - "end": { - "line": 682, - "column": 23 - }, - "identifierName": "Math" + "column": 7 }, - "name": "Math" + "identifierName": "Math" }, - "property": { - "type": "Identifier", - "start": 11881, - "end": 11884, - "loc": { - "start": { - "line": 682, - "column": 24 - }, - "end": { - "line": 682, - "column": 27 - }, - "identifierName": "min" + "name": "Math" + }, + "property": { + "type": "Identifier", + "start": 11866, + "end": 11870, + "loc": { + "start": { + "line": 682, + "column": 8 }, - "name": "min" + "end": { + "line": 682, + "column": 12 + }, + "identifierName": "acos" }, - "computed": false + "name": "acos" }, - "arguments": [ - { - "type": "CallExpression", - "start": 11885, - "end": 11904, + "computed": false + }, + "arguments": [ + { + "type": "CallExpression", + "start": 11871, + "end": 11923, + "loc": { + "start": { + "line": 682, + "column": 13 + }, + "end": { + "line": 682, + "column": 65 + } + }, + "callee": { + "type": "MemberExpression", + "start": 11871, + "end": 11879, "loc": { "start": { "line": 682, - "column": 28 + "column": 13 }, "end": { "line": 682, - "column": 47 + "column": 21 } }, - "callee": { - "type": "MemberExpression", - "start": 11885, - "end": 11893, + "object": { + "type": "Identifier", + "start": 11871, + "end": 11875, "loc": { "start": { "line": 682, - "column": 28 + "column": 13 }, "end": { "line": 682, - "column": 36 - } - }, - "object": { - "type": "Identifier", - "start": 11885, - "end": 11889, - "loc": { - "start": { - "line": 682, - "column": 28 - }, - "end": { - "line": 682, - "column": 32 - }, - "identifierName": "Math" + "column": 17 }, - "name": "Math" + "identifierName": "Math" }, - "property": { - "type": "Identifier", - "start": 11890, - "end": 11893, - "loc": { - "start": { - "line": 682, - "column": 33 - }, - "end": { - "line": 682, - "column": 36 - }, - "identifierName": "max" + "name": "Math" + }, + "property": { + "type": "Identifier", + "start": 11876, + "end": 11879, + "loc": { + "start": { + "line": 682, + "column": 18 }, - "name": "max" + "end": { + "line": 682, + "column": 21 + }, + "identifierName": "min" }, - "computed": false + "name": "min" }, - "arguments": [ - { - "type": "Identifier", - "start": 11894, - "end": 11899, + "computed": false + }, + "arguments": [ + { + "type": "CallExpression", + "start": 11880, + "end": 11919, + "loc": { + "start": { + "line": 682, + "column": 22 + }, + "end": { + "line": 682, + "column": 61 + } + }, + "callee": { + "type": "MemberExpression", + "start": 11880, + "end": 11888, "loc": { "start": { "line": 682, - "column": 37 + "column": 22 }, "end": { "line": 682, - "column": 42 + "column": 30 + } + }, + "object": { + "type": "Identifier", + "start": 11880, + "end": 11884, + "loc": { + "start": { + "line": 682, + "column": 22 + }, + "end": { + "line": 682, + "column": 26 + }, + "identifierName": "Math" + }, + "name": "Math" + }, + "property": { + "type": "Identifier", + "start": 11885, + "end": 11888, + "loc": { + "start": { + "line": 682, + "column": 27 + }, + "end": { + "line": 682, + "column": 30 + }, + "identifierName": "max" }, - "identifierName": "theta" + "name": "max" }, - "name": "theta" + "computed": false }, - { - "type": "UnaryExpression", - "start": 11901, - "end": 11903, - "loc": { - "start": { - "line": 682, - "column": 44 + "arguments": [ + { + "type": "BinaryExpression", + "start": 11889, + "end": 11914, + "loc": { + "start": { + "line": 682, + "column": 31 + }, + "end": { + "line": 682, + "column": 56 + } }, - "end": { - "line": 682, - "column": 46 + "left": { + "type": "CallExpression", + "start": 11889, + "end": 11900, + "loc": { + "start": { + "line": 682, + "column": 31 + }, + "end": { + "line": 682, + "column": 42 + } + }, + "callee": { + "type": "MemberExpression", + "start": 11889, + "end": 11897, + "loc": { + "start": { + "line": 682, + "column": 31 + }, + "end": { + "line": 682, + "column": 39 + } + }, + "object": { + "type": "ThisExpression", + "start": 11889, + "end": 11893, + "loc": { + "start": { + "line": 682, + "column": 31 + }, + "end": { + "line": 682, + "column": 35 + } + } + }, + "property": { + "type": "Identifier", + "start": 11894, + "end": 11897, + "loc": { + "start": { + "line": 682, + "column": 36 + }, + "end": { + "line": 682, + "column": 39 + }, + "identifierName": "dot" + }, + "name": "dot" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 11898, + "end": 11899, + "loc": { + "start": { + "line": 682, + "column": 40 + }, + "end": { + "line": 682, + "column": 41 + }, + "identifierName": "v" + }, + "name": "v" + } + ] + }, + "operator": "/", + "right": { + "type": "Identifier", + "start": 11903, + "end": 11914, + "loc": { + "start": { + "line": 682, + "column": 45 + }, + "end": { + "line": 682, + "column": 56 + }, + "identifierName": "denominator" + }, + "name": "denominator" } }, - "operator": "-", - "prefix": true, - "argument": { - "type": "NumericLiteral", - "start": 11902, - "end": 11903, + { + "type": "UnaryExpression", + "start": 11916, + "end": 11918, "loc": { "start": { "line": 682, - "column": 45 + "column": 58 }, "end": { "line": 682, - "column": 46 + "column": 60 } }, - "extra": { - "rawValue": 1, - "raw": "1" + "operator": "-", + "prefix": true, + "argument": { + "type": "NumericLiteral", + "start": 11917, + "end": 11918, + "loc": { + "start": { + "line": 682, + "column": 59 + }, + "end": { + "line": 682, + "column": 60 + } + }, + "extra": { + "rawValue": 1, + "raw": "1" + }, + "value": 1 }, - "value": 1 + "extra": { + "parenthesizedArgument": false + } + } + ] + }, + { + "type": "NumericLiteral", + "start": 11921, + "end": 11922, + "loc": { + "start": { + "line": 682, + "column": 63 }, - "extra": { - "parenthesizedArgument": false + "end": { + "line": 682, + "column": 64 } - } - ] - }, - { - "type": "NumericLiteral", - "start": 11906, - "end": 11907, - "loc": { - "start": { - "line": 682, - "column": 49 }, - "end": { - "line": 682, - "column": 50 - } - }, - "extra": { - "rawValue": 1, - "raw": "1" - }, - "value": 1 - } - ] - } - ], - "leadingComments": null - }, - "leadingComments": [ - { - "type": "CommentLine", - "value": " Clamp to avoid numerical problems.", - "start": 11818, - "end": 11855, - "loc": { - "start": { - "line": 681, - "column": 2 - }, - "end": { - "line": 681, - "column": 39 + "extra": { + "rawValue": 1, + "raw": "1" + }, + "value": 1 + } + ] } - } + ] } - ] + } } ], "directives": [], @@ -27804,8 +27923,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the Manhattan length of this vector.\r\n\t *\r\n\t * @return {Number} The length.\r\n\t ", - "start": 11921, - "end": 12022, + "start": 11936, + "end": 12037, "loc": { "start": { "line": 686, @@ -27821,8 +27940,8 @@ }, { "type": "ClassMethod", - "start": 12027, - "end": 12120, + "start": 12042, + "end": 12135, "loc": { "start": { "line": 692, @@ -27837,8 +27956,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 12027, - "end": 12042, + "start": 12042, + "end": 12057, "loc": { "start": { "line": 692, @@ -27861,8 +27980,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 12045, - "end": 12120, + "start": 12060, + "end": 12135, "loc": { "start": { "line": 692, @@ -27876,8 +27995,8 @@ "body": [ { "type": "ReturnStatement", - "start": 12052, - "end": 12114, + "start": 12067, + "end": 12129, "loc": { "start": { "line": 694, @@ -27890,8 +28009,8 @@ }, "argument": { "type": "BinaryExpression", - "start": 12059, - "end": 12113, + "start": 12074, + "end": 12128, "loc": { "start": { "line": 694, @@ -27904,8 +28023,8 @@ }, "left": { "type": "BinaryExpression", - "start": 12059, - "end": 12094, + "start": 12074, + "end": 12109, "loc": { "start": { "line": 694, @@ -27918,8 +28037,8 @@ }, "left": { "type": "CallExpression", - "start": 12059, - "end": 12075, + "start": 12074, + "end": 12090, "loc": { "start": { "line": 694, @@ -27932,8 +28051,8 @@ }, "callee": { "type": "MemberExpression", - "start": 12059, - "end": 12067, + "start": 12074, + "end": 12082, "loc": { "start": { "line": 694, @@ -27946,8 +28065,8 @@ }, "object": { "type": "Identifier", - "start": 12059, - "end": 12063, + "start": 12074, + "end": 12078, "loc": { "start": { "line": 694, @@ -27963,8 +28082,8 @@ }, "property": { "type": "Identifier", - "start": 12064, - "end": 12067, + "start": 12079, + "end": 12082, "loc": { "start": { "line": 694, @@ -27983,8 +28102,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 12068, - "end": 12074, + "start": 12083, + "end": 12089, "loc": { "start": { "line": 694, @@ -27997,8 +28116,8 @@ }, "object": { "type": "ThisExpression", - "start": 12068, - "end": 12072, + "start": 12083, + "end": 12087, "loc": { "start": { "line": 694, @@ -28012,8 +28131,8 @@ }, "property": { "type": "Identifier", - "start": 12073, - "end": 12074, + "start": 12088, + "end": 12089, "loc": { "start": { "line": 694, @@ -28034,8 +28153,8 @@ "operator": "+", "right": { "type": "CallExpression", - "start": 12078, - "end": 12094, + "start": 12093, + "end": 12109, "loc": { "start": { "line": 694, @@ -28048,8 +28167,8 @@ }, "callee": { "type": "MemberExpression", - "start": 12078, - "end": 12086, + "start": 12093, + "end": 12101, "loc": { "start": { "line": 694, @@ -28062,8 +28181,8 @@ }, "object": { "type": "Identifier", - "start": 12078, - "end": 12082, + "start": 12093, + "end": 12097, "loc": { "start": { "line": 694, @@ -28079,8 +28198,8 @@ }, "property": { "type": "Identifier", - "start": 12083, - "end": 12086, + "start": 12098, + "end": 12101, "loc": { "start": { "line": 694, @@ -28099,8 +28218,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 12087, - "end": 12093, + "start": 12102, + "end": 12108, "loc": { "start": { "line": 694, @@ -28113,8 +28232,8 @@ }, "object": { "type": "ThisExpression", - "start": 12087, - "end": 12091, + "start": 12102, + "end": 12106, "loc": { "start": { "line": 694, @@ -28128,8 +28247,8 @@ }, "property": { "type": "Identifier", - "start": 12092, - "end": 12093, + "start": 12107, + "end": 12108, "loc": { "start": { "line": 694, @@ -28151,8 +28270,8 @@ "operator": "+", "right": { "type": "CallExpression", - "start": 12097, - "end": 12113, + "start": 12112, + "end": 12128, "loc": { "start": { "line": 694, @@ -28165,8 +28284,8 @@ }, "callee": { "type": "MemberExpression", - "start": 12097, - "end": 12105, + "start": 12112, + "end": 12120, "loc": { "start": { "line": 694, @@ -28179,8 +28298,8 @@ }, "object": { "type": "Identifier", - "start": 12097, - "end": 12101, + "start": 12112, + "end": 12116, "loc": { "start": { "line": 694, @@ -28196,8 +28315,8 @@ }, "property": { "type": "Identifier", - "start": 12102, - "end": 12105, + "start": 12117, + "end": 12120, "loc": { "start": { "line": 694, @@ -28216,8 +28335,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 12106, - "end": 12112, + "start": 12121, + "end": 12127, "loc": { "start": { "line": 694, @@ -28230,8 +28349,8 @@ }, "object": { "type": "ThisExpression", - "start": 12106, - "end": 12110, + "start": 12121, + "end": 12125, "loc": { "start": { "line": 694, @@ -28245,8 +28364,8 @@ }, "property": { "type": "Identifier", - "start": 12111, - "end": 12112, + "start": 12126, + "end": 12127, "loc": { "start": { "line": 694, @@ -28274,8 +28393,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the Manhattan length of this vector.\r\n\t *\r\n\t * @return {Number} The length.\r\n\t ", - "start": 11921, - "end": 12022, + "start": 11936, + "end": 12037, "loc": { "start": { "line": 686, @@ -28292,8 +28411,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the squared length of this vector.\r\n\t *\r\n\t * @return {Number} The squared length.\r\n\t ", - "start": 12125, - "end": 12232, + "start": 12140, + "end": 12247, "loc": { "start": { "line": 698, @@ -28309,8 +28428,8 @@ }, { "type": "ClassMethod", - "start": 12237, - "end": 12325, + "start": 12252, + "end": 12340, "loc": { "start": { "line": 704, @@ -28325,8 +28444,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 12237, - "end": 12250, + "start": 12252, + "end": 12265, "loc": { "start": { "line": 704, @@ -28349,8 +28468,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 12253, - "end": 12325, + "start": 12268, + "end": 12340, "loc": { "start": { "line": 704, @@ -28364,8 +28483,8 @@ "body": [ { "type": "ReturnStatement", - "start": 12260, - "end": 12319, + "start": 12275, + "end": 12334, "loc": { "start": { "line": 706, @@ -28378,8 +28497,8 @@ }, "argument": { "type": "BinaryExpression", - "start": 12267, - "end": 12318, + "start": 12282, + "end": 12333, "loc": { "start": { "line": 706, @@ -28392,8 +28511,8 @@ }, "left": { "type": "BinaryExpression", - "start": 12267, - "end": 12300, + "start": 12282, + "end": 12315, "loc": { "start": { "line": 706, @@ -28406,8 +28525,8 @@ }, "left": { "type": "BinaryExpression", - "start": 12267, - "end": 12282, + "start": 12282, + "end": 12297, "loc": { "start": { "line": 706, @@ -28420,8 +28539,8 @@ }, "left": { "type": "MemberExpression", - "start": 12267, - "end": 12273, + "start": 12282, + "end": 12288, "loc": { "start": { "line": 706, @@ -28434,8 +28553,8 @@ }, "object": { "type": "ThisExpression", - "start": 12267, - "end": 12271, + "start": 12282, + "end": 12286, "loc": { "start": { "line": 706, @@ -28449,8 +28568,8 @@ }, "property": { "type": "Identifier", - "start": 12272, - "end": 12273, + "start": 12287, + "end": 12288, "loc": { "start": { "line": 706, @@ -28469,8 +28588,8 @@ "operator": "*", "right": { "type": "MemberExpression", - "start": 12276, - "end": 12282, + "start": 12291, + "end": 12297, "loc": { "start": { "line": 706, @@ -28483,8 +28602,8 @@ }, "object": { "type": "ThisExpression", - "start": 12276, - "end": 12280, + "start": 12291, + "end": 12295, "loc": { "start": { "line": 706, @@ -28498,8 +28617,8 @@ }, "property": { "type": "Identifier", - "start": 12281, - "end": 12282, + "start": 12296, + "end": 12297, "loc": { "start": { "line": 706, @@ -28519,8 +28638,8 @@ "operator": "+", "right": { "type": "BinaryExpression", - "start": 12285, - "end": 12300, + "start": 12300, + "end": 12315, "loc": { "start": { "line": 706, @@ -28533,8 +28652,8 @@ }, "left": { "type": "MemberExpression", - "start": 12285, - "end": 12291, + "start": 12300, + "end": 12306, "loc": { "start": { "line": 706, @@ -28547,8 +28666,8 @@ }, "object": { "type": "ThisExpression", - "start": 12285, - "end": 12289, + "start": 12300, + "end": 12304, "loc": { "start": { "line": 706, @@ -28562,8 +28681,8 @@ }, "property": { "type": "Identifier", - "start": 12290, - "end": 12291, + "start": 12305, + "end": 12306, "loc": { "start": { "line": 706, @@ -28582,8 +28701,8 @@ "operator": "*", "right": { "type": "MemberExpression", - "start": 12294, - "end": 12300, + "start": 12309, + "end": 12315, "loc": { "start": { "line": 706, @@ -28596,8 +28715,8 @@ }, "object": { "type": "ThisExpression", - "start": 12294, - "end": 12298, + "start": 12309, + "end": 12313, "loc": { "start": { "line": 706, @@ -28611,8 +28730,8 @@ }, "property": { "type": "Identifier", - "start": 12299, - "end": 12300, + "start": 12314, + "end": 12315, "loc": { "start": { "line": 706, @@ -28633,8 +28752,8 @@ "operator": "+", "right": { "type": "BinaryExpression", - "start": 12303, - "end": 12318, + "start": 12318, + "end": 12333, "loc": { "start": { "line": 706, @@ -28647,8 +28766,8 @@ }, "left": { "type": "MemberExpression", - "start": 12303, - "end": 12309, + "start": 12318, + "end": 12324, "loc": { "start": { "line": 706, @@ -28661,8 +28780,8 @@ }, "object": { "type": "ThisExpression", - "start": 12303, - "end": 12307, + "start": 12318, + "end": 12322, "loc": { "start": { "line": 706, @@ -28676,8 +28795,8 @@ }, "property": { "type": "Identifier", - "start": 12308, - "end": 12309, + "start": 12323, + "end": 12324, "loc": { "start": { "line": 706, @@ -28696,8 +28815,8 @@ "operator": "*", "right": { "type": "MemberExpression", - "start": 12312, - "end": 12318, + "start": 12327, + "end": 12333, "loc": { "start": { "line": 706, @@ -28710,8 +28829,8 @@ }, "object": { "type": "ThisExpression", - "start": 12312, - "end": 12316, + "start": 12327, + "end": 12331, "loc": { "start": { "line": 706, @@ -28725,8 +28844,8 @@ }, "property": { "type": "Identifier", - "start": 12317, - "end": 12318, + "start": 12332, + "end": 12333, "loc": { "start": { "line": 706, @@ -28753,8 +28872,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the squared length of this vector.\r\n\t *\r\n\t * @return {Number} The squared length.\r\n\t ", - "start": 12125, - "end": 12232, + "start": 12140, + "end": 12247, "loc": { "start": { "line": 698, @@ -28771,8 +28890,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the length of this vector.\r\n\t *\r\n\t * @return {Number} The length.\r\n\t ", - "start": 12330, - "end": 12421, + "start": 12345, + "end": 12436, "loc": { "start": { "line": 710, @@ -28788,8 +28907,8 @@ }, { "type": "ClassMethod", - "start": 12426, - "end": 12518, + "start": 12441, + "end": 12533, "loc": { "start": { "line": 716, @@ -28804,8 +28923,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 12426, - "end": 12432, + "start": 12441, + "end": 12447, "loc": { "start": { "line": 716, @@ -28828,8 +28947,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 12435, - "end": 12518, + "start": 12450, + "end": 12533, "loc": { "start": { "line": 716, @@ -28843,8 +28962,8 @@ "body": [ { "type": "ReturnStatement", - "start": 12442, - "end": 12512, + "start": 12457, + "end": 12527, "loc": { "start": { "line": 718, @@ -28857,8 +28976,8 @@ }, "argument": { "type": "CallExpression", - "start": 12449, - "end": 12511, + "start": 12464, + "end": 12526, "loc": { "start": { "line": 718, @@ -28871,8 +28990,8 @@ }, "callee": { "type": "MemberExpression", - "start": 12449, - "end": 12458, + "start": 12464, + "end": 12473, "loc": { "start": { "line": 718, @@ -28885,8 +29004,8 @@ }, "object": { "type": "Identifier", - "start": 12449, - "end": 12453, + "start": 12464, + "end": 12468, "loc": { "start": { "line": 718, @@ -28902,8 +29021,8 @@ }, "property": { "type": "Identifier", - "start": 12454, - "end": 12458, + "start": 12469, + "end": 12473, "loc": { "start": { "line": 718, @@ -28922,8 +29041,8 @@ "arguments": [ { "type": "BinaryExpression", - "start": 12459, - "end": 12510, + "start": 12474, + "end": 12525, "loc": { "start": { "line": 718, @@ -28936,8 +29055,8 @@ }, "left": { "type": "BinaryExpression", - "start": 12459, - "end": 12492, + "start": 12474, + "end": 12507, "loc": { "start": { "line": 718, @@ -28950,8 +29069,8 @@ }, "left": { "type": "BinaryExpression", - "start": 12459, - "end": 12474, + "start": 12474, + "end": 12489, "loc": { "start": { "line": 718, @@ -28964,8 +29083,8 @@ }, "left": { "type": "MemberExpression", - "start": 12459, - "end": 12465, + "start": 12474, + "end": 12480, "loc": { "start": { "line": 718, @@ -28978,8 +29097,8 @@ }, "object": { "type": "ThisExpression", - "start": 12459, - "end": 12463, + "start": 12474, + "end": 12478, "loc": { "start": { "line": 718, @@ -28993,8 +29112,8 @@ }, "property": { "type": "Identifier", - "start": 12464, - "end": 12465, + "start": 12479, + "end": 12480, "loc": { "start": { "line": 718, @@ -29013,8 +29132,8 @@ "operator": "*", "right": { "type": "MemberExpression", - "start": 12468, - "end": 12474, + "start": 12483, + "end": 12489, "loc": { "start": { "line": 718, @@ -29027,8 +29146,8 @@ }, "object": { "type": "ThisExpression", - "start": 12468, - "end": 12472, + "start": 12483, + "end": 12487, "loc": { "start": { "line": 718, @@ -29042,8 +29161,8 @@ }, "property": { "type": "Identifier", - "start": 12473, - "end": 12474, + "start": 12488, + "end": 12489, "loc": { "start": { "line": 718, @@ -29063,8 +29182,8 @@ "operator": "+", "right": { "type": "BinaryExpression", - "start": 12477, - "end": 12492, + "start": 12492, + "end": 12507, "loc": { "start": { "line": 718, @@ -29077,8 +29196,8 @@ }, "left": { "type": "MemberExpression", - "start": 12477, - "end": 12483, + "start": 12492, + "end": 12498, "loc": { "start": { "line": 718, @@ -29091,8 +29210,8 @@ }, "object": { "type": "ThisExpression", - "start": 12477, - "end": 12481, + "start": 12492, + "end": 12496, "loc": { "start": { "line": 718, @@ -29106,8 +29225,8 @@ }, "property": { "type": "Identifier", - "start": 12482, - "end": 12483, + "start": 12497, + "end": 12498, "loc": { "start": { "line": 718, @@ -29126,8 +29245,8 @@ "operator": "*", "right": { "type": "MemberExpression", - "start": 12486, - "end": 12492, + "start": 12501, + "end": 12507, "loc": { "start": { "line": 718, @@ -29140,8 +29259,8 @@ }, "object": { "type": "ThisExpression", - "start": 12486, - "end": 12490, + "start": 12501, + "end": 12505, "loc": { "start": { "line": 718, @@ -29155,8 +29274,8 @@ }, "property": { "type": "Identifier", - "start": 12491, - "end": 12492, + "start": 12506, + "end": 12507, "loc": { "start": { "line": 718, @@ -29177,8 +29296,8 @@ "operator": "+", "right": { "type": "BinaryExpression", - "start": 12495, - "end": 12510, + "start": 12510, + "end": 12525, "loc": { "start": { "line": 718, @@ -29191,8 +29310,8 @@ }, "left": { "type": "MemberExpression", - "start": 12495, - "end": 12501, + "start": 12510, + "end": 12516, "loc": { "start": { "line": 718, @@ -29205,8 +29324,8 @@ }, "object": { "type": "ThisExpression", - "start": 12495, - "end": 12499, + "start": 12510, + "end": 12514, "loc": { "start": { "line": 718, @@ -29220,8 +29339,8 @@ }, "property": { "type": "Identifier", - "start": 12500, - "end": 12501, + "start": 12515, + "end": 12516, "loc": { "start": { "line": 718, @@ -29240,8 +29359,8 @@ "operator": "*", "right": { "type": "MemberExpression", - "start": 12504, - "end": 12510, + "start": 12519, + "end": 12525, "loc": { "start": { "line": 718, @@ -29254,8 +29373,8 @@ }, "object": { "type": "ThisExpression", - "start": 12504, - "end": 12508, + "start": 12519, + "end": 12523, "loc": { "start": { "line": 718, @@ -29269,8 +29388,8 @@ }, "property": { "type": "Identifier", - "start": 12509, - "end": 12510, + "start": 12524, + "end": 12525, "loc": { "start": { "line": 718, @@ -29299,8 +29418,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the length of this vector.\r\n\t *\r\n\t * @return {Number} The length.\r\n\t ", - "start": 12330, - "end": 12421, + "start": 12345, + "end": 12436, "loc": { "start": { "line": 710, @@ -29317,8 +29436,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the Manhattan distance to a given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The distance.\r\n\t ", - "start": 12523, - "end": 12667, + "start": 12538, + "end": 12682, "loc": { "start": { "line": 722, @@ -29334,8 +29453,8 @@ }, { "type": "ClassMethod", - "start": 12672, - "end": 12788, + "start": 12687, + "end": 12803, "loc": { "start": { "line": 729, @@ -29350,8 +29469,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 12672, - "end": 12691, + "start": 12687, + "end": 12706, "loc": { "start": { "line": 729, @@ -29374,8 +29493,8 @@ "params": [ { "type": "Identifier", - "start": 12692, - "end": 12693, + "start": 12707, + "end": 12708, "loc": { "start": { "line": 729, @@ -29392,8 +29511,8 @@ ], "body": { "type": "BlockStatement", - "start": 12695, - "end": 12788, + "start": 12710, + "end": 12803, "loc": { "start": { "line": 729, @@ -29407,8 +29526,8 @@ "body": [ { "type": "ReturnStatement", - "start": 12702, - "end": 12782, + "start": 12717, + "end": 12797, "loc": { "start": { "line": 731, @@ -29421,8 +29540,8 @@ }, "argument": { "type": "BinaryExpression", - "start": 12709, - "end": 12781, + "start": 12724, + "end": 12796, "loc": { "start": { "line": 731, @@ -29435,8 +29554,8 @@ }, "left": { "type": "BinaryExpression", - "start": 12709, - "end": 12756, + "start": 12724, + "end": 12771, "loc": { "start": { "line": 731, @@ -29449,8 +29568,8 @@ }, "left": { "type": "CallExpression", - "start": 12709, - "end": 12731, + "start": 12724, + "end": 12746, "loc": { "start": { "line": 731, @@ -29463,8 +29582,8 @@ }, "callee": { "type": "MemberExpression", - "start": 12709, - "end": 12717, + "start": 12724, + "end": 12732, "loc": { "start": { "line": 731, @@ -29477,8 +29596,8 @@ }, "object": { "type": "Identifier", - "start": 12709, - "end": 12713, + "start": 12724, + "end": 12728, "loc": { "start": { "line": 731, @@ -29494,8 +29613,8 @@ }, "property": { "type": "Identifier", - "start": 12714, - "end": 12717, + "start": 12729, + "end": 12732, "loc": { "start": { "line": 731, @@ -29514,8 +29633,8 @@ "arguments": [ { "type": "BinaryExpression", - "start": 12718, - "end": 12730, + "start": 12733, + "end": 12745, "loc": { "start": { "line": 731, @@ -29528,8 +29647,8 @@ }, "left": { "type": "MemberExpression", - "start": 12718, - "end": 12724, + "start": 12733, + "end": 12739, "loc": { "start": { "line": 731, @@ -29542,8 +29661,8 @@ }, "object": { "type": "ThisExpression", - "start": 12718, - "end": 12722, + "start": 12733, + "end": 12737, "loc": { "start": { "line": 731, @@ -29557,8 +29676,8 @@ }, "property": { "type": "Identifier", - "start": 12723, - "end": 12724, + "start": 12738, + "end": 12739, "loc": { "start": { "line": 731, @@ -29577,8 +29696,8 @@ "operator": "-", "right": { "type": "MemberExpression", - "start": 12727, - "end": 12730, + "start": 12742, + "end": 12745, "loc": { "start": { "line": 731, @@ -29591,8 +29710,8 @@ }, "object": { "type": "Identifier", - "start": 12727, - "end": 12728, + "start": 12742, + "end": 12743, "loc": { "start": { "line": 731, @@ -29608,8 +29727,8 @@ }, "property": { "type": "Identifier", - "start": 12729, - "end": 12730, + "start": 12744, + "end": 12745, "loc": { "start": { "line": 731, @@ -29631,8 +29750,8 @@ "operator": "+", "right": { "type": "CallExpression", - "start": 12734, - "end": 12756, + "start": 12749, + "end": 12771, "loc": { "start": { "line": 731, @@ -29645,8 +29764,8 @@ }, "callee": { "type": "MemberExpression", - "start": 12734, - "end": 12742, + "start": 12749, + "end": 12757, "loc": { "start": { "line": 731, @@ -29659,8 +29778,8 @@ }, "object": { "type": "Identifier", - "start": 12734, - "end": 12738, + "start": 12749, + "end": 12753, "loc": { "start": { "line": 731, @@ -29676,8 +29795,8 @@ }, "property": { "type": "Identifier", - "start": 12739, - "end": 12742, + "start": 12754, + "end": 12757, "loc": { "start": { "line": 731, @@ -29696,8 +29815,8 @@ "arguments": [ { "type": "BinaryExpression", - "start": 12743, - "end": 12755, + "start": 12758, + "end": 12770, "loc": { "start": { "line": 731, @@ -29710,8 +29829,8 @@ }, "left": { "type": "MemberExpression", - "start": 12743, - "end": 12749, + "start": 12758, + "end": 12764, "loc": { "start": { "line": 731, @@ -29724,8 +29843,8 @@ }, "object": { "type": "ThisExpression", - "start": 12743, - "end": 12747, + "start": 12758, + "end": 12762, "loc": { "start": { "line": 731, @@ -29739,8 +29858,8 @@ }, "property": { "type": "Identifier", - "start": 12748, - "end": 12749, + "start": 12763, + "end": 12764, "loc": { "start": { "line": 731, @@ -29759,8 +29878,8 @@ "operator": "-", "right": { "type": "MemberExpression", - "start": 12752, - "end": 12755, + "start": 12767, + "end": 12770, "loc": { "start": { "line": 731, @@ -29773,8 +29892,8 @@ }, "object": { "type": "Identifier", - "start": 12752, - "end": 12753, + "start": 12767, + "end": 12768, "loc": { "start": { "line": 731, @@ -29790,8 +29909,8 @@ }, "property": { "type": "Identifier", - "start": 12754, - "end": 12755, + "start": 12769, + "end": 12770, "loc": { "start": { "line": 731, @@ -29814,8 +29933,8 @@ "operator": "+", "right": { "type": "CallExpression", - "start": 12759, - "end": 12781, + "start": 12774, + "end": 12796, "loc": { "start": { "line": 731, @@ -29828,8 +29947,8 @@ }, "callee": { "type": "MemberExpression", - "start": 12759, - "end": 12767, + "start": 12774, + "end": 12782, "loc": { "start": { "line": 731, @@ -29842,8 +29961,8 @@ }, "object": { "type": "Identifier", - "start": 12759, - "end": 12763, + "start": 12774, + "end": 12778, "loc": { "start": { "line": 731, @@ -29859,8 +29978,8 @@ }, "property": { "type": "Identifier", - "start": 12764, - "end": 12767, + "start": 12779, + "end": 12782, "loc": { "start": { "line": 731, @@ -29879,8 +29998,8 @@ "arguments": [ { "type": "BinaryExpression", - "start": 12768, - "end": 12780, + "start": 12783, + "end": 12795, "loc": { "start": { "line": 731, @@ -29893,8 +30012,8 @@ }, "left": { "type": "MemberExpression", - "start": 12768, - "end": 12774, + "start": 12783, + "end": 12789, "loc": { "start": { "line": 731, @@ -29907,8 +30026,8 @@ }, "object": { "type": "ThisExpression", - "start": 12768, - "end": 12772, + "start": 12783, + "end": 12787, "loc": { "start": { "line": 731, @@ -29922,8 +30041,8 @@ }, "property": { "type": "Identifier", - "start": 12773, - "end": 12774, + "start": 12788, + "end": 12789, "loc": { "start": { "line": 731, @@ -29942,8 +30061,8 @@ "operator": "-", "right": { "type": "MemberExpression", - "start": 12777, - "end": 12780, + "start": 12792, + "end": 12795, "loc": { "start": { "line": 731, @@ -29956,8 +30075,8 @@ }, "object": { "type": "Identifier", - "start": 12777, - "end": 12778, + "start": 12792, + "end": 12793, "loc": { "start": { "line": 731, @@ -29973,8 +30092,8 @@ }, "property": { "type": "Identifier", - "start": 12779, - "end": 12780, + "start": 12794, + "end": 12795, "loc": { "start": { "line": 731, @@ -30003,8 +30122,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the Manhattan distance to a given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The distance.\r\n\t ", - "start": 12523, - "end": 12667, + "start": 12538, + "end": 12682, "loc": { "start": { "line": 722, @@ -30021,8 +30140,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the squared distance to a given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The squared distance.\r\n\t ", - "start": 12793, - "end": 12943, + "start": 12808, + "end": 12958, "loc": { "start": { "line": 735, @@ -30038,8 +30157,8 @@ }, { "type": "ClassMethod", - "start": 12948, - "end": 13103, + "start": 12963, + "end": 13118, "loc": { "start": { "line": 742, @@ -30054,8 +30173,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 12948, - "end": 12965, + "start": 12963, + "end": 12980, "loc": { "start": { "line": 742, @@ -30078,8 +30197,8 @@ "params": [ { "type": "Identifier", - "start": 12966, - "end": 12967, + "start": 12981, + "end": 12982, "loc": { "start": { "line": 742, @@ -30096,8 +30215,8 @@ ], "body": { "type": "BlockStatement", - "start": 12969, - "end": 13103, + "start": 12984, + "end": 13118, "loc": { "start": { "line": 742, @@ -30111,8 +30230,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 12976, - "end": 13000, + "start": 12991, + "end": 13015, "loc": { "start": { "line": 744, @@ -30126,8 +30245,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 12982, - "end": 12999, + "start": 12997, + "end": 13014, "loc": { "start": { "line": 744, @@ -30140,8 +30259,8 @@ }, "id": { "type": "Identifier", - "start": 12982, - "end": 12984, + "start": 12997, + "end": 12999, "loc": { "start": { "line": 744, @@ -30157,8 +30276,8 @@ }, "init": { "type": "BinaryExpression", - "start": 12987, - "end": 12999, + "start": 13002, + "end": 13014, "loc": { "start": { "line": 744, @@ -30171,8 +30290,8 @@ }, "left": { "type": "MemberExpression", - "start": 12987, - "end": 12993, + "start": 13002, + "end": 13008, "loc": { "start": { "line": 744, @@ -30185,8 +30304,8 @@ }, "object": { "type": "ThisExpression", - "start": 12987, - "end": 12991, + "start": 13002, + "end": 13006, "loc": { "start": { "line": 744, @@ -30200,8 +30319,8 @@ }, "property": { "type": "Identifier", - "start": 12992, - "end": 12993, + "start": 13007, + "end": 13008, "loc": { "start": { "line": 744, @@ -30220,8 +30339,8 @@ "operator": "-", "right": { "type": "MemberExpression", - "start": 12996, - "end": 12999, + "start": 13011, + "end": 13014, "loc": { "start": { "line": 744, @@ -30234,8 +30353,8 @@ }, "object": { "type": "Identifier", - "start": 12996, - "end": 12997, + "start": 13011, + "end": 13012, "loc": { "start": { "line": 744, @@ -30251,8 +30370,8 @@ }, "property": { "type": "Identifier", - "start": 12998, - "end": 12999, + "start": 13013, + "end": 13014, "loc": { "start": { "line": 744, @@ -30275,8 +30394,8 @@ }, { "type": "VariableDeclaration", - "start": 13004, - "end": 13028, + "start": 13019, + "end": 13043, "loc": { "start": { "line": 745, @@ -30290,8 +30409,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 13010, - "end": 13027, + "start": 13025, + "end": 13042, "loc": { "start": { "line": 745, @@ -30304,8 +30423,8 @@ }, "id": { "type": "Identifier", - "start": 13010, - "end": 13012, + "start": 13025, + "end": 13027, "loc": { "start": { "line": 745, @@ -30321,8 +30440,8 @@ }, "init": { "type": "BinaryExpression", - "start": 13015, - "end": 13027, + "start": 13030, + "end": 13042, "loc": { "start": { "line": 745, @@ -30335,8 +30454,8 @@ }, "left": { "type": "MemberExpression", - "start": 13015, - "end": 13021, + "start": 13030, + "end": 13036, "loc": { "start": { "line": 745, @@ -30349,8 +30468,8 @@ }, "object": { "type": "ThisExpression", - "start": 13015, - "end": 13019, + "start": 13030, + "end": 13034, "loc": { "start": { "line": 745, @@ -30364,8 +30483,8 @@ }, "property": { "type": "Identifier", - "start": 13020, - "end": 13021, + "start": 13035, + "end": 13036, "loc": { "start": { "line": 745, @@ -30384,8 +30503,8 @@ "operator": "-", "right": { "type": "MemberExpression", - "start": 13024, - "end": 13027, + "start": 13039, + "end": 13042, "loc": { "start": { "line": 745, @@ -30398,8 +30517,8 @@ }, "object": { "type": "Identifier", - "start": 13024, - "end": 13025, + "start": 13039, + "end": 13040, "loc": { "start": { "line": 745, @@ -30415,8 +30534,8 @@ }, "property": { "type": "Identifier", - "start": 13026, - "end": 13027, + "start": 13041, + "end": 13042, "loc": { "start": { "line": 745, @@ -30439,8 +30558,8 @@ }, { "type": "VariableDeclaration", - "start": 13032, - "end": 13056, + "start": 13047, + "end": 13071, "loc": { "start": { "line": 746, @@ -30454,8 +30573,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 13038, - "end": 13055, + "start": 13053, + "end": 13070, "loc": { "start": { "line": 746, @@ -30468,8 +30587,8 @@ }, "id": { "type": "Identifier", - "start": 13038, - "end": 13040, + "start": 13053, + "end": 13055, "loc": { "start": { "line": 746, @@ -30485,8 +30604,8 @@ }, "init": { "type": "BinaryExpression", - "start": 13043, - "end": 13055, + "start": 13058, + "end": 13070, "loc": { "start": { "line": 746, @@ -30499,8 +30618,8 @@ }, "left": { "type": "MemberExpression", - "start": 13043, - "end": 13049, + "start": 13058, + "end": 13064, "loc": { "start": { "line": 746, @@ -30513,8 +30632,8 @@ }, "object": { "type": "ThisExpression", - "start": 13043, - "end": 13047, + "start": 13058, + "end": 13062, "loc": { "start": { "line": 746, @@ -30528,8 +30647,8 @@ }, "property": { "type": "Identifier", - "start": 13048, - "end": 13049, + "start": 13063, + "end": 13064, "loc": { "start": { "line": 746, @@ -30548,8 +30667,8 @@ "operator": "-", "right": { "type": "MemberExpression", - "start": 13052, - "end": 13055, + "start": 13067, + "end": 13070, "loc": { "start": { "line": 746, @@ -30562,8 +30681,8 @@ }, "object": { "type": "Identifier", - "start": 13052, - "end": 13053, + "start": 13067, + "end": 13068, "loc": { "start": { "line": 746, @@ -30579,8 +30698,8 @@ }, "property": { "type": "Identifier", - "start": 13054, - "end": 13055, + "start": 13069, + "end": 13070, "loc": { "start": { "line": 746, @@ -30603,8 +30722,8 @@ }, { "type": "ReturnStatement", - "start": 13062, - "end": 13097, + "start": 13077, + "end": 13112, "loc": { "start": { "line": 748, @@ -30617,8 +30736,8 @@ }, "argument": { "type": "BinaryExpression", - "start": 13069, - "end": 13096, + "start": 13084, + "end": 13111, "loc": { "start": { "line": 748, @@ -30631,8 +30750,8 @@ }, "left": { "type": "BinaryExpression", - "start": 13069, - "end": 13086, + "start": 13084, + "end": 13101, "loc": { "start": { "line": 748, @@ -30645,8 +30764,8 @@ }, "left": { "type": "BinaryExpression", - "start": 13069, - "end": 13076, + "start": 13084, + "end": 13091, "loc": { "start": { "line": 748, @@ -30659,8 +30778,8 @@ }, "left": { "type": "Identifier", - "start": 13069, - "end": 13071, + "start": 13084, + "end": 13086, "loc": { "start": { "line": 748, @@ -30677,8 +30796,8 @@ "operator": "*", "right": { "type": "Identifier", - "start": 13074, - "end": 13076, + "start": 13089, + "end": 13091, "loc": { "start": { "line": 748, @@ -30696,8 +30815,8 @@ "operator": "+", "right": { "type": "BinaryExpression", - "start": 13079, - "end": 13086, + "start": 13094, + "end": 13101, "loc": { "start": { "line": 748, @@ -30710,8 +30829,8 @@ }, "left": { "type": "Identifier", - "start": 13079, - "end": 13081, + "start": 13094, + "end": 13096, "loc": { "start": { "line": 748, @@ -30728,8 +30847,8 @@ "operator": "*", "right": { "type": "Identifier", - "start": 13084, - "end": 13086, + "start": 13099, + "end": 13101, "loc": { "start": { "line": 748, @@ -30748,8 +30867,8 @@ "operator": "+", "right": { "type": "BinaryExpression", - "start": 13089, - "end": 13096, + "start": 13104, + "end": 13111, "loc": { "start": { "line": 748, @@ -30762,8 +30881,8 @@ }, "left": { "type": "Identifier", - "start": 13089, - "end": 13091, + "start": 13104, + "end": 13106, "loc": { "start": { "line": 748, @@ -30780,8 +30899,8 @@ "operator": "*", "right": { "type": "Identifier", - "start": 13094, - "end": 13096, + "start": 13109, + "end": 13111, "loc": { "start": { "line": 748, @@ -30806,8 +30925,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the squared distance to a given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The squared distance.\r\n\t ", - "start": 12793, - "end": 12943, + "start": 12808, + "end": 12958, "loc": { "start": { "line": 735, @@ -30824,8 +30943,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the distance to a given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The distance.\r\n\t ", - "start": 13108, - "end": 13242, + "start": 13123, + "end": 13257, "loc": { "start": { "line": 752, @@ -30841,8 +30960,8 @@ }, { "type": "ClassMethod", - "start": 13247, - "end": 13318, + "start": 13262, + "end": 13333, "loc": { "start": { "line": 759, @@ -30857,8 +30976,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 13247, - "end": 13257, + "start": 13262, + "end": 13272, "loc": { "start": { "line": 759, @@ -30881,8 +31000,8 @@ "params": [ { "type": "Identifier", - "start": 13258, - "end": 13259, + "start": 13273, + "end": 13274, "loc": { "start": { "line": 759, @@ -30899,8 +31018,8 @@ ], "body": { "type": "BlockStatement", - "start": 13261, - "end": 13318, + "start": 13276, + "end": 13333, "loc": { "start": { "line": 759, @@ -30914,8 +31033,8 @@ "body": [ { "type": "ReturnStatement", - "start": 13268, - "end": 13312, + "start": 13283, + "end": 13327, "loc": { "start": { "line": 761, @@ -30928,8 +31047,8 @@ }, "argument": { "type": "CallExpression", - "start": 13275, - "end": 13311, + "start": 13290, + "end": 13326, "loc": { "start": { "line": 761, @@ -30942,8 +31061,8 @@ }, "callee": { "type": "MemberExpression", - "start": 13275, - "end": 13284, + "start": 13290, + "end": 13299, "loc": { "start": { "line": 761, @@ -30956,8 +31075,8 @@ }, "object": { "type": "Identifier", - "start": 13275, - "end": 13279, + "start": 13290, + "end": 13294, "loc": { "start": { "line": 761, @@ -30973,8 +31092,8 @@ }, "property": { "type": "Identifier", - "start": 13280, - "end": 13284, + "start": 13295, + "end": 13299, "loc": { "start": { "line": 761, @@ -30993,8 +31112,8 @@ "arguments": [ { "type": "CallExpression", - "start": 13285, - "end": 13310, + "start": 13300, + "end": 13325, "loc": { "start": { "line": 761, @@ -31007,8 +31126,8 @@ }, "callee": { "type": "MemberExpression", - "start": 13285, - "end": 13307, + "start": 13300, + "end": 13322, "loc": { "start": { "line": 761, @@ -31021,8 +31140,8 @@ }, "object": { "type": "ThisExpression", - "start": 13285, - "end": 13289, + "start": 13300, + "end": 13304, "loc": { "start": { "line": 761, @@ -31036,8 +31155,8 @@ }, "property": { "type": "Identifier", - "start": 13290, - "end": 13307, + "start": 13305, + "end": 13322, "loc": { "start": { "line": 761, @@ -31056,8 +31175,8 @@ "arguments": [ { "type": "Identifier", - "start": 13308, - "end": 13309, + "start": 13323, + "end": 13324, "loc": { "start": { "line": 761, @@ -31084,8 +31203,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the distance to a given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The distance.\r\n\t ", - "start": 13108, - "end": 13242, + "start": 13123, + "end": 13257, "loc": { "start": { "line": 752, @@ -31102,8 +31221,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Normalizes this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 13323, - "end": 13402, + "start": 13338, + "end": 13417, "loc": { "start": { "line": 765, @@ -31119,8 +31238,8 @@ }, { "type": "ClassMethod", - "start": 13407, - "end": 13472, + "start": 13422, + "end": 13487, "loc": { "start": { "line": 771, @@ -31135,8 +31254,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 13407, - "end": 13416, + "start": 13422, + "end": 13431, "loc": { "start": { "line": 771, @@ -31159,8 +31278,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 13419, - "end": 13472, + "start": 13434, + "end": 13487, "loc": { "start": { "line": 771, @@ -31174,8 +31293,8 @@ "body": [ { "type": "ReturnStatement", - "start": 13426, - "end": 13466, + "start": 13441, + "end": 13481, "loc": { "start": { "line": 773, @@ -31188,8 +31307,8 @@ }, "argument": { "type": "CallExpression", - "start": 13433, - "end": 13465, + "start": 13448, + "end": 13480, "loc": { "start": { "line": 773, @@ -31202,8 +31321,8 @@ }, "callee": { "type": "MemberExpression", - "start": 13433, - "end": 13450, + "start": 13448, + "end": 13465, "loc": { "start": { "line": 773, @@ -31216,8 +31335,8 @@ }, "object": { "type": "ThisExpression", - "start": 13433, - "end": 13437, + "start": 13448, + "end": 13452, "loc": { "start": { "line": 773, @@ -31231,8 +31350,8 @@ }, "property": { "type": "Identifier", - "start": 13438, - "end": 13450, + "start": 13453, + "end": 13465, "loc": { "start": { "line": 773, @@ -31251,8 +31370,8 @@ "arguments": [ { "type": "CallExpression", - "start": 13451, - "end": 13464, + "start": 13466, + "end": 13479, "loc": { "start": { "line": 773, @@ -31265,8 +31384,8 @@ }, "callee": { "type": "MemberExpression", - "start": 13451, - "end": 13462, + "start": 13466, + "end": 13477, "loc": { "start": { "line": 773, @@ -31279,8 +31398,8 @@ }, "object": { "type": "ThisExpression", - "start": 13451, - "end": 13455, + "start": 13466, + "end": 13470, "loc": { "start": { "line": 773, @@ -31294,8 +31413,8 @@ }, "property": { "type": "Identifier", - "start": 13456, - "end": 13462, + "start": 13471, + "end": 13477, "loc": { "start": { "line": 773, @@ -31324,8 +31443,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Normalizes this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 13323, - "end": 13402, + "start": 13338, + "end": 13417, "loc": { "start": { "line": 765, @@ -31342,8 +31461,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Sets the length of this vector.\r\n\t *\r\n\t * @param {Number} length - The new length.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 13477, - "end": 13610, + "start": 13492, + "end": 13625, "loc": { "start": { "line": 777, @@ -31359,8 +31478,8 @@ }, { "type": "ClassMethod", - "start": 13615, - "end": 13693, + "start": 13630, + "end": 13708, "loc": { "start": { "line": 784, @@ -31375,8 +31494,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 13615, - "end": 13624, + "start": 13630, + "end": 13639, "loc": { "start": { "line": 784, @@ -31399,8 +31518,8 @@ "params": [ { "type": "Identifier", - "start": 13625, - "end": 13631, + "start": 13640, + "end": 13646, "loc": { "start": { "line": 784, @@ -31417,8 +31536,8 @@ ], "body": { "type": "BlockStatement", - "start": 13633, - "end": 13693, + "start": 13648, + "end": 13708, "loc": { "start": { "line": 784, @@ -31432,8 +31551,8 @@ "body": [ { "type": "ReturnStatement", - "start": 13640, - "end": 13687, + "start": 13655, + "end": 13702, "loc": { "start": { "line": 786, @@ -31446,8 +31565,8 @@ }, "argument": { "type": "CallExpression", - "start": 13647, - "end": 13686, + "start": 13662, + "end": 13701, "loc": { "start": { "line": 786, @@ -31460,8 +31579,8 @@ }, "callee": { "type": "MemberExpression", - "start": 13647, - "end": 13678, + "start": 13662, + "end": 13693, "loc": { "start": { "line": 786, @@ -31474,8 +31593,8 @@ }, "object": { "type": "CallExpression", - "start": 13647, - "end": 13663, + "start": 13662, + "end": 13678, "loc": { "start": { "line": 786, @@ -31488,8 +31607,8 @@ }, "callee": { "type": "MemberExpression", - "start": 13647, - "end": 13661, + "start": 13662, + "end": 13676, "loc": { "start": { "line": 786, @@ -31502,8 +31621,8 @@ }, "object": { "type": "ThisExpression", - "start": 13647, - "end": 13651, + "start": 13662, + "end": 13666, "loc": { "start": { "line": 786, @@ -31517,8 +31636,8 @@ }, "property": { "type": "Identifier", - "start": 13652, - "end": 13661, + "start": 13667, + "end": 13676, "loc": { "start": { "line": 786, @@ -31538,8 +31657,8 @@ }, "property": { "type": "Identifier", - "start": 13664, - "end": 13678, + "start": 13679, + "end": 13693, "loc": { "start": { "line": 786, @@ -31558,8 +31677,8 @@ "arguments": [ { "type": "Identifier", - "start": 13679, - "end": 13685, + "start": 13694, + "end": 13700, "loc": { "start": { "line": 786, @@ -31584,8 +31703,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Sets the length of this vector.\r\n\t *\r\n\t * @param {Number} length - The new length.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 13477, - "end": 13610, + "start": 13492, + "end": 13625, "loc": { "start": { "line": 777, @@ -31602,8 +31721,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Adopts the min value for each component of this vector and the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 13698, - "end": 13863, + "start": 13713, + "end": 13878, "loc": { "start": { "line": 790, @@ -31619,8 +31738,8 @@ }, { "type": "ClassMethod", - "start": 13868, - "end": 14007, + "start": 13883, + "end": 14022, "loc": { "start": { "line": 797, @@ -31635,8 +31754,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 13868, - "end": 13871, + "start": 13883, + "end": 13886, "loc": { "start": { "line": 797, @@ -31659,8 +31778,8 @@ "params": [ { "type": "Identifier", - "start": 13872, - "end": 13873, + "start": 13887, + "end": 13888, "loc": { "start": { "line": 797, @@ -31677,8 +31796,8 @@ ], "body": { "type": "BlockStatement", - "start": 13875, - "end": 14007, + "start": 13890, + "end": 14022, "loc": { "start": { "line": 797, @@ -31692,8 +31811,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 13882, - "end": 13913, + "start": 13897, + "end": 13928, "loc": { "start": { "line": 799, @@ -31706,8 +31825,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 13882, - "end": 13912, + "start": 13897, + "end": 13927, "loc": { "start": { "line": 799, @@ -31721,8 +31840,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 13882, - "end": 13888, + "start": 13897, + "end": 13903, "loc": { "start": { "line": 799, @@ -31735,8 +31854,8 @@ }, "object": { "type": "ThisExpression", - "start": 13882, - "end": 13886, + "start": 13897, + "end": 13901, "loc": { "start": { "line": 799, @@ -31750,8 +31869,8 @@ }, "property": { "type": "Identifier", - "start": 13887, - "end": 13888, + "start": 13902, + "end": 13903, "loc": { "start": { "line": 799, @@ -31769,8 +31888,8 @@ }, "right": { "type": "CallExpression", - "start": 13891, - "end": 13912, + "start": 13906, + "end": 13927, "loc": { "start": { "line": 799, @@ -31783,8 +31902,8 @@ }, "callee": { "type": "MemberExpression", - "start": 13891, - "end": 13899, + "start": 13906, + "end": 13914, "loc": { "start": { "line": 799, @@ -31797,8 +31916,8 @@ }, "object": { "type": "Identifier", - "start": 13891, - "end": 13895, + "start": 13906, + "end": 13910, "loc": { "start": { "line": 799, @@ -31814,8 +31933,8 @@ }, "property": { "type": "Identifier", - "start": 13896, - "end": 13899, + "start": 13911, + "end": 13914, "loc": { "start": { "line": 799, @@ -31834,8 +31953,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 13900, - "end": 13906, + "start": 13915, + "end": 13921, "loc": { "start": { "line": 799, @@ -31848,8 +31967,8 @@ }, "object": { "type": "ThisExpression", - "start": 13900, - "end": 13904, + "start": 13915, + "end": 13919, "loc": { "start": { "line": 799, @@ -31863,8 +31982,8 @@ }, "property": { "type": "Identifier", - "start": 13905, - "end": 13906, + "start": 13920, + "end": 13921, "loc": { "start": { "line": 799, @@ -31882,8 +32001,8 @@ }, { "type": "MemberExpression", - "start": 13908, - "end": 13911, + "start": 13923, + "end": 13926, "loc": { "start": { "line": 799, @@ -31896,8 +32015,8 @@ }, "object": { "type": "Identifier", - "start": 13908, - "end": 13909, + "start": 13923, + "end": 13924, "loc": { "start": { "line": 799, @@ -31913,8 +32032,8 @@ }, "property": { "type": "Identifier", - "start": 13910, - "end": 13911, + "start": 13925, + "end": 13926, "loc": { "start": { "line": 799, @@ -31936,8 +32055,8 @@ }, { "type": "ExpressionStatement", - "start": 13917, - "end": 13948, + "start": 13932, + "end": 13963, "loc": { "start": { "line": 800, @@ -31950,8 +32069,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 13917, - "end": 13947, + "start": 13932, + "end": 13962, "loc": { "start": { "line": 800, @@ -31965,8 +32084,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 13917, - "end": 13923, + "start": 13932, + "end": 13938, "loc": { "start": { "line": 800, @@ -31979,8 +32098,8 @@ }, "object": { "type": "ThisExpression", - "start": 13917, - "end": 13921, + "start": 13932, + "end": 13936, "loc": { "start": { "line": 800, @@ -31994,8 +32113,8 @@ }, "property": { "type": "Identifier", - "start": 13922, - "end": 13923, + "start": 13937, + "end": 13938, "loc": { "start": { "line": 800, @@ -32013,8 +32132,8 @@ }, "right": { "type": "CallExpression", - "start": 13926, - "end": 13947, + "start": 13941, + "end": 13962, "loc": { "start": { "line": 800, @@ -32027,8 +32146,8 @@ }, "callee": { "type": "MemberExpression", - "start": 13926, - "end": 13934, + "start": 13941, + "end": 13949, "loc": { "start": { "line": 800, @@ -32041,8 +32160,8 @@ }, "object": { "type": "Identifier", - "start": 13926, - "end": 13930, + "start": 13941, + "end": 13945, "loc": { "start": { "line": 800, @@ -32058,8 +32177,8 @@ }, "property": { "type": "Identifier", - "start": 13931, - "end": 13934, + "start": 13946, + "end": 13949, "loc": { "start": { "line": 800, @@ -32078,8 +32197,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 13935, - "end": 13941, + "start": 13950, + "end": 13956, "loc": { "start": { "line": 800, @@ -32092,8 +32211,8 @@ }, "object": { "type": "ThisExpression", - "start": 13935, - "end": 13939, + "start": 13950, + "end": 13954, "loc": { "start": { "line": 800, @@ -32107,8 +32226,8 @@ }, "property": { "type": "Identifier", - "start": 13940, - "end": 13941, + "start": 13955, + "end": 13956, "loc": { "start": { "line": 800, @@ -32126,8 +32245,8 @@ }, { "type": "MemberExpression", - "start": 13943, - "end": 13946, + "start": 13958, + "end": 13961, "loc": { "start": { "line": 800, @@ -32140,8 +32259,8 @@ }, "object": { "type": "Identifier", - "start": 13943, - "end": 13944, + "start": 13958, + "end": 13959, "loc": { "start": { "line": 800, @@ -32157,8 +32276,8 @@ }, "property": { "type": "Identifier", - "start": 13945, - "end": 13946, + "start": 13960, + "end": 13961, "loc": { "start": { "line": 800, @@ -32180,8 +32299,8 @@ }, { "type": "ExpressionStatement", - "start": 13952, - "end": 13983, + "start": 13967, + "end": 13998, "loc": { "start": { "line": 801, @@ -32194,8 +32313,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 13952, - "end": 13982, + "start": 13967, + "end": 13997, "loc": { "start": { "line": 801, @@ -32209,8 +32328,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 13952, - "end": 13958, + "start": 13967, + "end": 13973, "loc": { "start": { "line": 801, @@ -32223,8 +32342,8 @@ }, "object": { "type": "ThisExpression", - "start": 13952, - "end": 13956, + "start": 13967, + "end": 13971, "loc": { "start": { "line": 801, @@ -32238,8 +32357,8 @@ }, "property": { "type": "Identifier", - "start": 13957, - "end": 13958, + "start": 13972, + "end": 13973, "loc": { "start": { "line": 801, @@ -32257,8 +32376,8 @@ }, "right": { "type": "CallExpression", - "start": 13961, - "end": 13982, + "start": 13976, + "end": 13997, "loc": { "start": { "line": 801, @@ -32271,8 +32390,8 @@ }, "callee": { "type": "MemberExpression", - "start": 13961, - "end": 13969, + "start": 13976, + "end": 13984, "loc": { "start": { "line": 801, @@ -32285,8 +32404,8 @@ }, "object": { "type": "Identifier", - "start": 13961, - "end": 13965, + "start": 13976, + "end": 13980, "loc": { "start": { "line": 801, @@ -32302,8 +32421,8 @@ }, "property": { "type": "Identifier", - "start": 13966, - "end": 13969, + "start": 13981, + "end": 13984, "loc": { "start": { "line": 801, @@ -32322,8 +32441,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 13970, - "end": 13976, + "start": 13985, + "end": 13991, "loc": { "start": { "line": 801, @@ -32336,8 +32455,8 @@ }, "object": { "type": "ThisExpression", - "start": 13970, - "end": 13974, + "start": 13985, + "end": 13989, "loc": { "start": { "line": 801, @@ -32351,8 +32470,8 @@ }, "property": { "type": "Identifier", - "start": 13975, - "end": 13976, + "start": 13990, + "end": 13991, "loc": { "start": { "line": 801, @@ -32370,8 +32489,8 @@ }, { "type": "MemberExpression", - "start": 13978, - "end": 13981, + "start": 13993, + "end": 13996, "loc": { "start": { "line": 801, @@ -32384,8 +32503,8 @@ }, "object": { "type": "Identifier", - "start": 13978, - "end": 13979, + "start": 13993, + "end": 13994, "loc": { "start": { "line": 801, @@ -32401,8 +32520,8 @@ }, "property": { "type": "Identifier", - "start": 13980, - "end": 13981, + "start": 13995, + "end": 13996, "loc": { "start": { "line": 801, @@ -32424,8 +32543,8 @@ }, { "type": "ReturnStatement", - "start": 13989, - "end": 14001, + "start": 14004, + "end": 14016, "loc": { "start": { "line": 803, @@ -32438,8 +32557,8 @@ }, "argument": { "type": "ThisExpression", - "start": 13996, - "end": 14000, + "start": 14011, + "end": 14015, "loc": { "start": { "line": 803, @@ -32460,8 +32579,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Adopts the min value for each component of this vector and the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 13698, - "end": 13863, + "start": 13713, + "end": 13878, "loc": { "start": { "line": 790, @@ -32478,8 +32597,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Adopts the max value for each component of this vector and the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 14012, - "end": 14177, + "start": 14027, + "end": 14192, "loc": { "start": { "line": 807, @@ -32495,8 +32614,8 @@ }, { "type": "ClassMethod", - "start": 14182, - "end": 14321, + "start": 14197, + "end": 14336, "loc": { "start": { "line": 814, @@ -32511,8 +32630,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 14182, - "end": 14185, + "start": 14197, + "end": 14200, "loc": { "start": { "line": 814, @@ -32535,8 +32654,8 @@ "params": [ { "type": "Identifier", - "start": 14186, - "end": 14187, + "start": 14201, + "end": 14202, "loc": { "start": { "line": 814, @@ -32553,8 +32672,8 @@ ], "body": { "type": "BlockStatement", - "start": 14189, - "end": 14321, + "start": 14204, + "end": 14336, "loc": { "start": { "line": 814, @@ -32568,8 +32687,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 14196, - "end": 14227, + "start": 14211, + "end": 14242, "loc": { "start": { "line": 816, @@ -32582,8 +32701,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 14196, - "end": 14226, + "start": 14211, + "end": 14241, "loc": { "start": { "line": 816, @@ -32597,8 +32716,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 14196, - "end": 14202, + "start": 14211, + "end": 14217, "loc": { "start": { "line": 816, @@ -32611,8 +32730,8 @@ }, "object": { "type": "ThisExpression", - "start": 14196, - "end": 14200, + "start": 14211, + "end": 14215, "loc": { "start": { "line": 816, @@ -32626,8 +32745,8 @@ }, "property": { "type": "Identifier", - "start": 14201, - "end": 14202, + "start": 14216, + "end": 14217, "loc": { "start": { "line": 816, @@ -32645,8 +32764,8 @@ }, "right": { "type": "CallExpression", - "start": 14205, - "end": 14226, + "start": 14220, + "end": 14241, "loc": { "start": { "line": 816, @@ -32659,8 +32778,8 @@ }, "callee": { "type": "MemberExpression", - "start": 14205, - "end": 14213, + "start": 14220, + "end": 14228, "loc": { "start": { "line": 816, @@ -32673,8 +32792,8 @@ }, "object": { "type": "Identifier", - "start": 14205, - "end": 14209, + "start": 14220, + "end": 14224, "loc": { "start": { "line": 816, @@ -32690,8 +32809,8 @@ }, "property": { "type": "Identifier", - "start": 14210, - "end": 14213, + "start": 14225, + "end": 14228, "loc": { "start": { "line": 816, @@ -32710,8 +32829,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 14214, - "end": 14220, + "start": 14229, + "end": 14235, "loc": { "start": { "line": 816, @@ -32724,8 +32843,8 @@ }, "object": { "type": "ThisExpression", - "start": 14214, - "end": 14218, + "start": 14229, + "end": 14233, "loc": { "start": { "line": 816, @@ -32739,8 +32858,8 @@ }, "property": { "type": "Identifier", - "start": 14219, - "end": 14220, + "start": 14234, + "end": 14235, "loc": { "start": { "line": 816, @@ -32758,8 +32877,8 @@ }, { "type": "MemberExpression", - "start": 14222, - "end": 14225, + "start": 14237, + "end": 14240, "loc": { "start": { "line": 816, @@ -32772,8 +32891,8 @@ }, "object": { "type": "Identifier", - "start": 14222, - "end": 14223, + "start": 14237, + "end": 14238, "loc": { "start": { "line": 816, @@ -32789,8 +32908,8 @@ }, "property": { "type": "Identifier", - "start": 14224, - "end": 14225, + "start": 14239, + "end": 14240, "loc": { "start": { "line": 816, @@ -32812,8 +32931,8 @@ }, { "type": "ExpressionStatement", - "start": 14231, - "end": 14262, + "start": 14246, + "end": 14277, "loc": { "start": { "line": 817, @@ -32826,8 +32945,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 14231, - "end": 14261, + "start": 14246, + "end": 14276, "loc": { "start": { "line": 817, @@ -32841,8 +32960,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 14231, - "end": 14237, + "start": 14246, + "end": 14252, "loc": { "start": { "line": 817, @@ -32855,8 +32974,8 @@ }, "object": { "type": "ThisExpression", - "start": 14231, - "end": 14235, + "start": 14246, + "end": 14250, "loc": { "start": { "line": 817, @@ -32870,8 +32989,8 @@ }, "property": { "type": "Identifier", - "start": 14236, - "end": 14237, + "start": 14251, + "end": 14252, "loc": { "start": { "line": 817, @@ -32889,8 +33008,8 @@ }, "right": { "type": "CallExpression", - "start": 14240, - "end": 14261, + "start": 14255, + "end": 14276, "loc": { "start": { "line": 817, @@ -32903,8 +33022,8 @@ }, "callee": { "type": "MemberExpression", - "start": 14240, - "end": 14248, + "start": 14255, + "end": 14263, "loc": { "start": { "line": 817, @@ -32917,8 +33036,8 @@ }, "object": { "type": "Identifier", - "start": 14240, - "end": 14244, + "start": 14255, + "end": 14259, "loc": { "start": { "line": 817, @@ -32934,8 +33053,8 @@ }, "property": { "type": "Identifier", - "start": 14245, - "end": 14248, + "start": 14260, + "end": 14263, "loc": { "start": { "line": 817, @@ -32954,8 +33073,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 14249, - "end": 14255, + "start": 14264, + "end": 14270, "loc": { "start": { "line": 817, @@ -32968,8 +33087,8 @@ }, "object": { "type": "ThisExpression", - "start": 14249, - "end": 14253, + "start": 14264, + "end": 14268, "loc": { "start": { "line": 817, @@ -32983,8 +33102,8 @@ }, "property": { "type": "Identifier", - "start": 14254, - "end": 14255, + "start": 14269, + "end": 14270, "loc": { "start": { "line": 817, @@ -33002,8 +33121,8 @@ }, { "type": "MemberExpression", - "start": 14257, - "end": 14260, + "start": 14272, + "end": 14275, "loc": { "start": { "line": 817, @@ -33016,8 +33135,8 @@ }, "object": { "type": "Identifier", - "start": 14257, - "end": 14258, + "start": 14272, + "end": 14273, "loc": { "start": { "line": 817, @@ -33033,8 +33152,8 @@ }, "property": { "type": "Identifier", - "start": 14259, - "end": 14260, + "start": 14274, + "end": 14275, "loc": { "start": { "line": 817, @@ -33056,8 +33175,8 @@ }, { "type": "ExpressionStatement", - "start": 14266, - "end": 14297, + "start": 14281, + "end": 14312, "loc": { "start": { "line": 818, @@ -33070,8 +33189,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 14266, - "end": 14296, + "start": 14281, + "end": 14311, "loc": { "start": { "line": 818, @@ -33085,8 +33204,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 14266, - "end": 14272, + "start": 14281, + "end": 14287, "loc": { "start": { "line": 818, @@ -33099,8 +33218,8 @@ }, "object": { "type": "ThisExpression", - "start": 14266, - "end": 14270, + "start": 14281, + "end": 14285, "loc": { "start": { "line": 818, @@ -33114,8 +33233,8 @@ }, "property": { "type": "Identifier", - "start": 14271, - "end": 14272, + "start": 14286, + "end": 14287, "loc": { "start": { "line": 818, @@ -33133,8 +33252,8 @@ }, "right": { "type": "CallExpression", - "start": 14275, - "end": 14296, + "start": 14290, + "end": 14311, "loc": { "start": { "line": 818, @@ -33147,8 +33266,8 @@ }, "callee": { "type": "MemberExpression", - "start": 14275, - "end": 14283, + "start": 14290, + "end": 14298, "loc": { "start": { "line": 818, @@ -33161,8 +33280,8 @@ }, "object": { "type": "Identifier", - "start": 14275, - "end": 14279, + "start": 14290, + "end": 14294, "loc": { "start": { "line": 818, @@ -33178,8 +33297,8 @@ }, "property": { "type": "Identifier", - "start": 14280, - "end": 14283, + "start": 14295, + "end": 14298, "loc": { "start": { "line": 818, @@ -33198,8 +33317,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 14284, - "end": 14290, + "start": 14299, + "end": 14305, "loc": { "start": { "line": 818, @@ -33212,8 +33331,8 @@ }, "object": { "type": "ThisExpression", - "start": 14284, - "end": 14288, + "start": 14299, + "end": 14303, "loc": { "start": { "line": 818, @@ -33227,8 +33346,8 @@ }, "property": { "type": "Identifier", - "start": 14289, - "end": 14290, + "start": 14304, + "end": 14305, "loc": { "start": { "line": 818, @@ -33246,8 +33365,8 @@ }, { "type": "MemberExpression", - "start": 14292, - "end": 14295, + "start": 14307, + "end": 14310, "loc": { "start": { "line": 818, @@ -33260,8 +33379,8 @@ }, "object": { "type": "Identifier", - "start": 14292, - "end": 14293, + "start": 14307, + "end": 14308, "loc": { "start": { "line": 818, @@ -33277,8 +33396,8 @@ }, "property": { "type": "Identifier", - "start": 14294, - "end": 14295, + "start": 14309, + "end": 14310, "loc": { "start": { "line": 818, @@ -33300,8 +33419,8 @@ }, { "type": "ReturnStatement", - "start": 14303, - "end": 14315, + "start": 14318, + "end": 14330, "loc": { "start": { "line": 820, @@ -33314,8 +33433,8 @@ }, "argument": { "type": "ThisExpression", - "start": 14310, - "end": 14314, + "start": 14325, + "end": 14329, "loc": { "start": { "line": 820, @@ -33336,8 +33455,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Adopts the max value for each component of this vector and the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 14012, - "end": 14177, + "start": 14027, + "end": 14192, "loc": { "start": { "line": 807, @@ -33354,8 +33473,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Clamps this vector.\r\n\t *\r\n\t * @param {Vector3} min - The lower bounds. Assumed to be smaller than max.\r\n\t * @param {Vector3} max - The upper bounds. Assumed to be greater than min.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 14326, - "end": 14557, + "start": 14341, + "end": 14572, "loc": { "start": { "line": 824, @@ -33371,8 +33490,8 @@ }, { "type": "ClassMethod", - "start": 14562, - "end": 14767, + "start": 14577, + "end": 14782, "loc": { "start": { "line": 832, @@ -33387,8 +33506,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 14562, - "end": 14567, + "start": 14577, + "end": 14582, "loc": { "start": { "line": 832, @@ -33411,8 +33530,8 @@ "params": [ { "type": "Identifier", - "start": 14568, - "end": 14571, + "start": 14583, + "end": 14586, "loc": { "start": { "line": 832, @@ -33428,8 +33547,8 @@ }, { "type": "Identifier", - "start": 14573, - "end": 14576, + "start": 14588, + "end": 14591, "loc": { "start": { "line": 832, @@ -33446,8 +33565,8 @@ ], "body": { "type": "BlockStatement", - "start": 14578, - "end": 14767, + "start": 14593, + "end": 14782, "loc": { "start": { "line": 832, @@ -33461,8 +33580,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 14585, - "end": 14635, + "start": 14600, + "end": 14650, "loc": { "start": { "line": 834, @@ -33475,8 +33594,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 14585, - "end": 14634, + "start": 14600, + "end": 14649, "loc": { "start": { "line": 834, @@ -33490,8 +33609,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 14585, - "end": 14591, + "start": 14600, + "end": 14606, "loc": { "start": { "line": 834, @@ -33504,8 +33623,8 @@ }, "object": { "type": "ThisExpression", - "start": 14585, - "end": 14589, + "start": 14600, + "end": 14604, "loc": { "start": { "line": 834, @@ -33519,8 +33638,8 @@ }, "property": { "type": "Identifier", - "start": 14590, - "end": 14591, + "start": 14605, + "end": 14606, "loc": { "start": { "line": 834, @@ -33538,8 +33657,8 @@ }, "right": { "type": "CallExpression", - "start": 14594, - "end": 14634, + "start": 14609, + "end": 14649, "loc": { "start": { "line": 834, @@ -33552,8 +33671,8 @@ }, "callee": { "type": "MemberExpression", - "start": 14594, - "end": 14602, + "start": 14609, + "end": 14617, "loc": { "start": { "line": 834, @@ -33566,8 +33685,8 @@ }, "object": { "type": "Identifier", - "start": 14594, - "end": 14598, + "start": 14609, + "end": 14613, "loc": { "start": { "line": 834, @@ -33583,8 +33702,8 @@ }, "property": { "type": "Identifier", - "start": 14599, - "end": 14602, + "start": 14614, + "end": 14617, "loc": { "start": { "line": 834, @@ -33603,8 +33722,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 14603, - "end": 14608, + "start": 14618, + "end": 14623, "loc": { "start": { "line": 834, @@ -33617,8 +33736,8 @@ }, "object": { "type": "Identifier", - "start": 14603, - "end": 14606, + "start": 14618, + "end": 14621, "loc": { "start": { "line": 834, @@ -33634,8 +33753,8 @@ }, "property": { "type": "Identifier", - "start": 14607, - "end": 14608, + "start": 14622, + "end": 14623, "loc": { "start": { "line": 834, @@ -33653,8 +33772,8 @@ }, { "type": "CallExpression", - "start": 14610, - "end": 14633, + "start": 14625, + "end": 14648, "loc": { "start": { "line": 834, @@ -33667,8 +33786,8 @@ }, "callee": { "type": "MemberExpression", - "start": 14610, - "end": 14618, + "start": 14625, + "end": 14633, "loc": { "start": { "line": 834, @@ -33681,8 +33800,8 @@ }, "object": { "type": "Identifier", - "start": 14610, - "end": 14614, + "start": 14625, + "end": 14629, "loc": { "start": { "line": 834, @@ -33698,8 +33817,8 @@ }, "property": { "type": "Identifier", - "start": 14615, - "end": 14618, + "start": 14630, + "end": 14633, "loc": { "start": { "line": 834, @@ -33718,8 +33837,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 14619, - "end": 14624, + "start": 14634, + "end": 14639, "loc": { "start": { "line": 834, @@ -33732,8 +33851,8 @@ }, "object": { "type": "Identifier", - "start": 14619, - "end": 14622, + "start": 14634, + "end": 14637, "loc": { "start": { "line": 834, @@ -33749,8 +33868,8 @@ }, "property": { "type": "Identifier", - "start": 14623, - "end": 14624, + "start": 14638, + "end": 14639, "loc": { "start": { "line": 834, @@ -33768,8 +33887,8 @@ }, { "type": "MemberExpression", - "start": 14626, - "end": 14632, + "start": 14641, + "end": 14647, "loc": { "start": { "line": 834, @@ -33782,8 +33901,8 @@ }, "object": { "type": "ThisExpression", - "start": 14626, - "end": 14630, + "start": 14641, + "end": 14645, "loc": { "start": { "line": 834, @@ -33797,8 +33916,8 @@ }, "property": { "type": "Identifier", - "start": 14631, - "end": 14632, + "start": 14646, + "end": 14647, "loc": { "start": { "line": 834, @@ -33822,8 +33941,8 @@ }, { "type": "ExpressionStatement", - "start": 14639, - "end": 14689, + "start": 14654, + "end": 14704, "loc": { "start": { "line": 835, @@ -33836,8 +33955,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 14639, - "end": 14688, + "start": 14654, + "end": 14703, "loc": { "start": { "line": 835, @@ -33851,8 +33970,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 14639, - "end": 14645, + "start": 14654, + "end": 14660, "loc": { "start": { "line": 835, @@ -33865,8 +33984,8 @@ }, "object": { "type": "ThisExpression", - "start": 14639, - "end": 14643, + "start": 14654, + "end": 14658, "loc": { "start": { "line": 835, @@ -33880,8 +33999,8 @@ }, "property": { "type": "Identifier", - "start": 14644, - "end": 14645, + "start": 14659, + "end": 14660, "loc": { "start": { "line": 835, @@ -33899,8 +34018,8 @@ }, "right": { "type": "CallExpression", - "start": 14648, - "end": 14688, + "start": 14663, + "end": 14703, "loc": { "start": { "line": 835, @@ -33913,8 +34032,8 @@ }, "callee": { "type": "MemberExpression", - "start": 14648, - "end": 14656, + "start": 14663, + "end": 14671, "loc": { "start": { "line": 835, @@ -33927,8 +34046,8 @@ }, "object": { "type": "Identifier", - "start": 14648, - "end": 14652, + "start": 14663, + "end": 14667, "loc": { "start": { "line": 835, @@ -33944,8 +34063,8 @@ }, "property": { "type": "Identifier", - "start": 14653, - "end": 14656, + "start": 14668, + "end": 14671, "loc": { "start": { "line": 835, @@ -33964,8 +34083,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 14657, - "end": 14662, + "start": 14672, + "end": 14677, "loc": { "start": { "line": 835, @@ -33978,8 +34097,8 @@ }, "object": { "type": "Identifier", - "start": 14657, - "end": 14660, + "start": 14672, + "end": 14675, "loc": { "start": { "line": 835, @@ -33995,8 +34114,8 @@ }, "property": { "type": "Identifier", - "start": 14661, - "end": 14662, + "start": 14676, + "end": 14677, "loc": { "start": { "line": 835, @@ -34014,8 +34133,8 @@ }, { "type": "CallExpression", - "start": 14664, - "end": 14687, + "start": 14679, + "end": 14702, "loc": { "start": { "line": 835, @@ -34028,8 +34147,8 @@ }, "callee": { "type": "MemberExpression", - "start": 14664, - "end": 14672, + "start": 14679, + "end": 14687, "loc": { "start": { "line": 835, @@ -34042,8 +34161,8 @@ }, "object": { "type": "Identifier", - "start": 14664, - "end": 14668, + "start": 14679, + "end": 14683, "loc": { "start": { "line": 835, @@ -34059,8 +34178,8 @@ }, "property": { "type": "Identifier", - "start": 14669, - "end": 14672, + "start": 14684, + "end": 14687, "loc": { "start": { "line": 835, @@ -34079,8 +34198,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 14673, - "end": 14678, + "start": 14688, + "end": 14693, "loc": { "start": { "line": 835, @@ -34093,8 +34212,8 @@ }, "object": { "type": "Identifier", - "start": 14673, - "end": 14676, + "start": 14688, + "end": 14691, "loc": { "start": { "line": 835, @@ -34110,8 +34229,8 @@ }, "property": { "type": "Identifier", - "start": 14677, - "end": 14678, + "start": 14692, + "end": 14693, "loc": { "start": { "line": 835, @@ -34129,8 +34248,8 @@ }, { "type": "MemberExpression", - "start": 14680, - "end": 14686, + "start": 14695, + "end": 14701, "loc": { "start": { "line": 835, @@ -34143,8 +34262,8 @@ }, "object": { "type": "ThisExpression", - "start": 14680, - "end": 14684, + "start": 14695, + "end": 14699, "loc": { "start": { "line": 835, @@ -34158,8 +34277,8 @@ }, "property": { "type": "Identifier", - "start": 14685, - "end": 14686, + "start": 14700, + "end": 14701, "loc": { "start": { "line": 835, @@ -34183,8 +34302,8 @@ }, { "type": "ExpressionStatement", - "start": 14693, - "end": 14743, + "start": 14708, + "end": 14758, "loc": { "start": { "line": 836, @@ -34197,8 +34316,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 14693, - "end": 14742, + "start": 14708, + "end": 14757, "loc": { "start": { "line": 836, @@ -34212,8 +34331,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 14693, - "end": 14699, + "start": 14708, + "end": 14714, "loc": { "start": { "line": 836, @@ -34226,8 +34345,8 @@ }, "object": { "type": "ThisExpression", - "start": 14693, - "end": 14697, + "start": 14708, + "end": 14712, "loc": { "start": { "line": 836, @@ -34241,8 +34360,8 @@ }, "property": { "type": "Identifier", - "start": 14698, - "end": 14699, + "start": 14713, + "end": 14714, "loc": { "start": { "line": 836, @@ -34260,8 +34379,8 @@ }, "right": { "type": "CallExpression", - "start": 14702, - "end": 14742, + "start": 14717, + "end": 14757, "loc": { "start": { "line": 836, @@ -34274,8 +34393,8 @@ }, "callee": { "type": "MemberExpression", - "start": 14702, - "end": 14710, + "start": 14717, + "end": 14725, "loc": { "start": { "line": 836, @@ -34288,8 +34407,8 @@ }, "object": { "type": "Identifier", - "start": 14702, - "end": 14706, + "start": 14717, + "end": 14721, "loc": { "start": { "line": 836, @@ -34305,8 +34424,8 @@ }, "property": { "type": "Identifier", - "start": 14707, - "end": 14710, + "start": 14722, + "end": 14725, "loc": { "start": { "line": 836, @@ -34325,8 +34444,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 14711, - "end": 14716, + "start": 14726, + "end": 14731, "loc": { "start": { "line": 836, @@ -34339,8 +34458,8 @@ }, "object": { "type": "Identifier", - "start": 14711, - "end": 14714, + "start": 14726, + "end": 14729, "loc": { "start": { "line": 836, @@ -34356,8 +34475,8 @@ }, "property": { "type": "Identifier", - "start": 14715, - "end": 14716, + "start": 14730, + "end": 14731, "loc": { "start": { "line": 836, @@ -34375,8 +34494,8 @@ }, { "type": "CallExpression", - "start": 14718, - "end": 14741, + "start": 14733, + "end": 14756, "loc": { "start": { "line": 836, @@ -34389,8 +34508,8 @@ }, "callee": { "type": "MemberExpression", - "start": 14718, - "end": 14726, + "start": 14733, + "end": 14741, "loc": { "start": { "line": 836, @@ -34403,8 +34522,8 @@ }, "object": { "type": "Identifier", - "start": 14718, - "end": 14722, + "start": 14733, + "end": 14737, "loc": { "start": { "line": 836, @@ -34420,8 +34539,8 @@ }, "property": { "type": "Identifier", - "start": 14723, - "end": 14726, + "start": 14738, + "end": 14741, "loc": { "start": { "line": 836, @@ -34440,8 +34559,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 14727, - "end": 14732, + "start": 14742, + "end": 14747, "loc": { "start": { "line": 836, @@ -34454,8 +34573,8 @@ }, "object": { "type": "Identifier", - "start": 14727, - "end": 14730, + "start": 14742, + "end": 14745, "loc": { "start": { "line": 836, @@ -34471,8 +34590,8 @@ }, "property": { "type": "Identifier", - "start": 14731, - "end": 14732, + "start": 14746, + "end": 14747, "loc": { "start": { "line": 836, @@ -34490,8 +34609,8 @@ }, { "type": "MemberExpression", - "start": 14734, - "end": 14740, + "start": 14749, + "end": 14755, "loc": { "start": { "line": 836, @@ -34504,8 +34623,8 @@ }, "object": { "type": "ThisExpression", - "start": 14734, - "end": 14738, + "start": 14749, + "end": 14753, "loc": { "start": { "line": 836, @@ -34519,8 +34638,8 @@ }, "property": { "type": "Identifier", - "start": 14739, - "end": 14740, + "start": 14754, + "end": 14755, "loc": { "start": { "line": 836, @@ -34544,8 +34663,8 @@ }, { "type": "ReturnStatement", - "start": 14749, - "end": 14761, + "start": 14764, + "end": 14776, "loc": { "start": { "line": 838, @@ -34558,8 +34677,8 @@ }, "argument": { "type": "ThisExpression", - "start": 14756, - "end": 14760, + "start": 14771, + "end": 14775, "loc": { "start": { "line": 838, @@ -34580,8 +34699,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Clamps this vector.\r\n\t *\r\n\t * @param {Vector3} min - The lower bounds. Assumed to be smaller than max.\r\n\t * @param {Vector3} max - The upper bounds. Assumed to be greater than min.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 14326, - "end": 14557, + "start": 14341, + "end": 14572, "loc": { "start": { "line": 824, @@ -34598,8 +34717,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Floors this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 14772, - "end": 14847, + "start": 14787, + "end": 14862, "loc": { "start": { "line": 842, @@ -34615,8 +34734,8 @@ }, { "type": "ClassMethod", - "start": 14852, - "end": 14983, + "start": 14867, + "end": 14998, "loc": { "start": { "line": 848, @@ -34631,8 +34750,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 14852, - "end": 14857, + "start": 14867, + "end": 14872, "loc": { "start": { "line": 848, @@ -34655,8 +34774,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 14860, - "end": 14983, + "start": 14875, + "end": 14998, "loc": { "start": { "line": 848, @@ -34670,8 +34789,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 14867, - "end": 14895, + "start": 14882, + "end": 14910, "loc": { "start": { "line": 850, @@ -34684,8 +34803,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 14867, - "end": 14894, + "start": 14882, + "end": 14909, "loc": { "start": { "line": 850, @@ -34699,8 +34818,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 14867, - "end": 14873, + "start": 14882, + "end": 14888, "loc": { "start": { "line": 850, @@ -34713,8 +34832,8 @@ }, "object": { "type": "ThisExpression", - "start": 14867, - "end": 14871, + "start": 14882, + "end": 14886, "loc": { "start": { "line": 850, @@ -34728,8 +34847,8 @@ }, "property": { "type": "Identifier", - "start": 14872, - "end": 14873, + "start": 14887, + "end": 14888, "loc": { "start": { "line": 850, @@ -34747,8 +34866,8 @@ }, "right": { "type": "CallExpression", - "start": 14876, - "end": 14894, + "start": 14891, + "end": 14909, "loc": { "start": { "line": 850, @@ -34761,8 +34880,8 @@ }, "callee": { "type": "MemberExpression", - "start": 14876, - "end": 14886, + "start": 14891, + "end": 14901, "loc": { "start": { "line": 850, @@ -34775,8 +34894,8 @@ }, "object": { "type": "Identifier", - "start": 14876, - "end": 14880, + "start": 14891, + "end": 14895, "loc": { "start": { "line": 850, @@ -34792,8 +34911,8 @@ }, "property": { "type": "Identifier", - "start": 14881, - "end": 14886, + "start": 14896, + "end": 14901, "loc": { "start": { "line": 850, @@ -34812,8 +34931,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 14887, - "end": 14893, + "start": 14902, + "end": 14908, "loc": { "start": { "line": 850, @@ -34826,8 +34945,8 @@ }, "object": { "type": "ThisExpression", - "start": 14887, - "end": 14891, + "start": 14902, + "end": 14906, "loc": { "start": { "line": 850, @@ -34841,8 +34960,8 @@ }, "property": { "type": "Identifier", - "start": 14892, - "end": 14893, + "start": 14907, + "end": 14908, "loc": { "start": { "line": 850, @@ -34864,8 +34983,8 @@ }, { "type": "ExpressionStatement", - "start": 14899, - "end": 14927, + "start": 14914, + "end": 14942, "loc": { "start": { "line": 851, @@ -34878,8 +34997,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 14899, - "end": 14926, + "start": 14914, + "end": 14941, "loc": { "start": { "line": 851, @@ -34893,8 +35012,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 14899, - "end": 14905, + "start": 14914, + "end": 14920, "loc": { "start": { "line": 851, @@ -34907,8 +35026,8 @@ }, "object": { "type": "ThisExpression", - "start": 14899, - "end": 14903, + "start": 14914, + "end": 14918, "loc": { "start": { "line": 851, @@ -34922,8 +35041,8 @@ }, "property": { "type": "Identifier", - "start": 14904, - "end": 14905, + "start": 14919, + "end": 14920, "loc": { "start": { "line": 851, @@ -34941,8 +35060,8 @@ }, "right": { "type": "CallExpression", - "start": 14908, - "end": 14926, + "start": 14923, + "end": 14941, "loc": { "start": { "line": 851, @@ -34955,8 +35074,8 @@ }, "callee": { "type": "MemberExpression", - "start": 14908, - "end": 14918, + "start": 14923, + "end": 14933, "loc": { "start": { "line": 851, @@ -34969,8 +35088,8 @@ }, "object": { "type": "Identifier", - "start": 14908, - "end": 14912, + "start": 14923, + "end": 14927, "loc": { "start": { "line": 851, @@ -34986,8 +35105,8 @@ }, "property": { "type": "Identifier", - "start": 14913, - "end": 14918, + "start": 14928, + "end": 14933, "loc": { "start": { "line": 851, @@ -35006,8 +35125,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 14919, - "end": 14925, + "start": 14934, + "end": 14940, "loc": { "start": { "line": 851, @@ -35020,8 +35139,8 @@ }, "object": { "type": "ThisExpression", - "start": 14919, - "end": 14923, + "start": 14934, + "end": 14938, "loc": { "start": { "line": 851, @@ -35035,8 +35154,8 @@ }, "property": { "type": "Identifier", - "start": 14924, - "end": 14925, + "start": 14939, + "end": 14940, "loc": { "start": { "line": 851, @@ -35058,8 +35177,8 @@ }, { "type": "ExpressionStatement", - "start": 14931, - "end": 14959, + "start": 14946, + "end": 14974, "loc": { "start": { "line": 852, @@ -35072,8 +35191,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 14931, - "end": 14958, + "start": 14946, + "end": 14973, "loc": { "start": { "line": 852, @@ -35087,8 +35206,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 14931, - "end": 14937, + "start": 14946, + "end": 14952, "loc": { "start": { "line": 852, @@ -35101,8 +35220,8 @@ }, "object": { "type": "ThisExpression", - "start": 14931, - "end": 14935, + "start": 14946, + "end": 14950, "loc": { "start": { "line": 852, @@ -35116,8 +35235,8 @@ }, "property": { "type": "Identifier", - "start": 14936, - "end": 14937, + "start": 14951, + "end": 14952, "loc": { "start": { "line": 852, @@ -35135,8 +35254,8 @@ }, "right": { "type": "CallExpression", - "start": 14940, - "end": 14958, + "start": 14955, + "end": 14973, "loc": { "start": { "line": 852, @@ -35149,8 +35268,8 @@ }, "callee": { "type": "MemberExpression", - "start": 14940, - "end": 14950, + "start": 14955, + "end": 14965, "loc": { "start": { "line": 852, @@ -35163,8 +35282,8 @@ }, "object": { "type": "Identifier", - "start": 14940, - "end": 14944, + "start": 14955, + "end": 14959, "loc": { "start": { "line": 852, @@ -35180,8 +35299,8 @@ }, "property": { "type": "Identifier", - "start": 14945, - "end": 14950, + "start": 14960, + "end": 14965, "loc": { "start": { "line": 852, @@ -35200,8 +35319,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 14951, - "end": 14957, + "start": 14966, + "end": 14972, "loc": { "start": { "line": 852, @@ -35214,8 +35333,8 @@ }, "object": { "type": "ThisExpression", - "start": 14951, - "end": 14955, + "start": 14966, + "end": 14970, "loc": { "start": { "line": 852, @@ -35229,8 +35348,8 @@ }, "property": { "type": "Identifier", - "start": 14956, - "end": 14957, + "start": 14971, + "end": 14972, "loc": { "start": { "line": 852, @@ -35252,8 +35371,8 @@ }, { "type": "ReturnStatement", - "start": 14965, - "end": 14977, + "start": 14980, + "end": 14992, "loc": { "start": { "line": 854, @@ -35266,8 +35385,8 @@ }, "argument": { "type": "ThisExpression", - "start": 14972, - "end": 14976, + "start": 14987, + "end": 14991, "loc": { "start": { "line": 854, @@ -35288,8 +35407,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Floors this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 14772, - "end": 14847, + "start": 14787, + "end": 14862, "loc": { "start": { "line": 842, @@ -35306,8 +35425,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Ceils this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 14988, - "end": 15062, + "start": 15003, + "end": 15077, "loc": { "start": { "line": 858, @@ -35323,8 +35442,8 @@ }, { "type": "ClassMethod", - "start": 15067, - "end": 15194, + "start": 15082, + "end": 15209, "loc": { "start": { "line": 864, @@ -35339,8 +35458,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 15067, - "end": 15071, + "start": 15082, + "end": 15086, "loc": { "start": { "line": 864, @@ -35363,8 +35482,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 15074, - "end": 15194, + "start": 15089, + "end": 15209, "loc": { "start": { "line": 864, @@ -35378,8 +35497,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 15081, - "end": 15108, + "start": 15096, + "end": 15123, "loc": { "start": { "line": 866, @@ -35392,8 +35511,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 15081, - "end": 15107, + "start": 15096, + "end": 15122, "loc": { "start": { "line": 866, @@ -35407,8 +35526,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 15081, - "end": 15087, + "start": 15096, + "end": 15102, "loc": { "start": { "line": 866, @@ -35421,8 +35540,8 @@ }, "object": { "type": "ThisExpression", - "start": 15081, - "end": 15085, + "start": 15096, + "end": 15100, "loc": { "start": { "line": 866, @@ -35436,8 +35555,8 @@ }, "property": { "type": "Identifier", - "start": 15086, - "end": 15087, + "start": 15101, + "end": 15102, "loc": { "start": { "line": 866, @@ -35455,8 +35574,8 @@ }, "right": { "type": "CallExpression", - "start": 15090, - "end": 15107, + "start": 15105, + "end": 15122, "loc": { "start": { "line": 866, @@ -35469,8 +35588,8 @@ }, "callee": { "type": "MemberExpression", - "start": 15090, - "end": 15099, + "start": 15105, + "end": 15114, "loc": { "start": { "line": 866, @@ -35483,8 +35602,8 @@ }, "object": { "type": "Identifier", - "start": 15090, - "end": 15094, + "start": 15105, + "end": 15109, "loc": { "start": { "line": 866, @@ -35500,8 +35619,8 @@ }, "property": { "type": "Identifier", - "start": 15095, - "end": 15099, + "start": 15110, + "end": 15114, "loc": { "start": { "line": 866, @@ -35520,8 +35639,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 15100, - "end": 15106, + "start": 15115, + "end": 15121, "loc": { "start": { "line": 866, @@ -35534,8 +35653,8 @@ }, "object": { "type": "ThisExpression", - "start": 15100, - "end": 15104, + "start": 15115, + "end": 15119, "loc": { "start": { "line": 866, @@ -35549,8 +35668,8 @@ }, "property": { "type": "Identifier", - "start": 15105, - "end": 15106, + "start": 15120, + "end": 15121, "loc": { "start": { "line": 866, @@ -35572,8 +35691,8 @@ }, { "type": "ExpressionStatement", - "start": 15112, - "end": 15139, + "start": 15127, + "end": 15154, "loc": { "start": { "line": 867, @@ -35586,8 +35705,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 15112, - "end": 15138, + "start": 15127, + "end": 15153, "loc": { "start": { "line": 867, @@ -35601,8 +35720,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 15112, - "end": 15118, + "start": 15127, + "end": 15133, "loc": { "start": { "line": 867, @@ -35615,8 +35734,8 @@ }, "object": { "type": "ThisExpression", - "start": 15112, - "end": 15116, + "start": 15127, + "end": 15131, "loc": { "start": { "line": 867, @@ -35630,8 +35749,8 @@ }, "property": { "type": "Identifier", - "start": 15117, - "end": 15118, + "start": 15132, + "end": 15133, "loc": { "start": { "line": 867, @@ -35649,8 +35768,8 @@ }, "right": { "type": "CallExpression", - "start": 15121, - "end": 15138, + "start": 15136, + "end": 15153, "loc": { "start": { "line": 867, @@ -35663,8 +35782,8 @@ }, "callee": { "type": "MemberExpression", - "start": 15121, - "end": 15130, + "start": 15136, + "end": 15145, "loc": { "start": { "line": 867, @@ -35677,8 +35796,8 @@ }, "object": { "type": "Identifier", - "start": 15121, - "end": 15125, + "start": 15136, + "end": 15140, "loc": { "start": { "line": 867, @@ -35694,8 +35813,8 @@ }, "property": { "type": "Identifier", - "start": 15126, - "end": 15130, + "start": 15141, + "end": 15145, "loc": { "start": { "line": 867, @@ -35714,8 +35833,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 15131, - "end": 15137, + "start": 15146, + "end": 15152, "loc": { "start": { "line": 867, @@ -35728,8 +35847,8 @@ }, "object": { "type": "ThisExpression", - "start": 15131, - "end": 15135, + "start": 15146, + "end": 15150, "loc": { "start": { "line": 867, @@ -35743,8 +35862,8 @@ }, "property": { "type": "Identifier", - "start": 15136, - "end": 15137, + "start": 15151, + "end": 15152, "loc": { "start": { "line": 867, @@ -35766,8 +35885,8 @@ }, { "type": "ExpressionStatement", - "start": 15143, - "end": 15170, + "start": 15158, + "end": 15185, "loc": { "start": { "line": 868, @@ -35780,8 +35899,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 15143, - "end": 15169, + "start": 15158, + "end": 15184, "loc": { "start": { "line": 868, @@ -35795,8 +35914,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 15143, - "end": 15149, + "start": 15158, + "end": 15164, "loc": { "start": { "line": 868, @@ -35809,8 +35928,8 @@ }, "object": { "type": "ThisExpression", - "start": 15143, - "end": 15147, + "start": 15158, + "end": 15162, "loc": { "start": { "line": 868, @@ -35824,8 +35943,8 @@ }, "property": { "type": "Identifier", - "start": 15148, - "end": 15149, + "start": 15163, + "end": 15164, "loc": { "start": { "line": 868, @@ -35843,8 +35962,8 @@ }, "right": { "type": "CallExpression", - "start": 15152, - "end": 15169, + "start": 15167, + "end": 15184, "loc": { "start": { "line": 868, @@ -35857,8 +35976,8 @@ }, "callee": { "type": "MemberExpression", - "start": 15152, - "end": 15161, + "start": 15167, + "end": 15176, "loc": { "start": { "line": 868, @@ -35871,8 +35990,8 @@ }, "object": { "type": "Identifier", - "start": 15152, - "end": 15156, + "start": 15167, + "end": 15171, "loc": { "start": { "line": 868, @@ -35888,8 +36007,8 @@ }, "property": { "type": "Identifier", - "start": 15157, - "end": 15161, + "start": 15172, + "end": 15176, "loc": { "start": { "line": 868, @@ -35908,8 +36027,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 15162, - "end": 15168, + "start": 15177, + "end": 15183, "loc": { "start": { "line": 868, @@ -35922,8 +36041,8 @@ }, "object": { "type": "ThisExpression", - "start": 15162, - "end": 15166, + "start": 15177, + "end": 15181, "loc": { "start": { "line": 868, @@ -35937,8 +36056,8 @@ }, "property": { "type": "Identifier", - "start": 15167, - "end": 15168, + "start": 15182, + "end": 15183, "loc": { "start": { "line": 868, @@ -35960,8 +36079,8 @@ }, { "type": "ReturnStatement", - "start": 15176, - "end": 15188, + "start": 15191, + "end": 15203, "loc": { "start": { "line": 870, @@ -35974,8 +36093,8 @@ }, "argument": { "type": "ThisExpression", - "start": 15183, - "end": 15187, + "start": 15198, + "end": 15202, "loc": { "start": { "line": 870, @@ -35996,8 +36115,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Ceils this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 14988, - "end": 15062, + "start": 15003, + "end": 15077, "loc": { "start": { "line": 858, @@ -36014,8 +36133,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Rounds this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 15199, - "end": 15274, + "start": 15214, + "end": 15289, "loc": { "start": { "line": 874, @@ -36031,8 +36150,8 @@ }, { "type": "ClassMethod", - "start": 15279, - "end": 15410, + "start": 15294, + "end": 15425, "loc": { "start": { "line": 880, @@ -36047,8 +36166,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 15279, - "end": 15284, + "start": 15294, + "end": 15299, "loc": { "start": { "line": 880, @@ -36071,8 +36190,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 15287, - "end": 15410, + "start": 15302, + "end": 15425, "loc": { "start": { "line": 880, @@ -36086,8 +36205,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 15294, - "end": 15322, + "start": 15309, + "end": 15337, "loc": { "start": { "line": 882, @@ -36100,8 +36219,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 15294, - "end": 15321, + "start": 15309, + "end": 15336, "loc": { "start": { "line": 882, @@ -36115,8 +36234,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 15294, - "end": 15300, + "start": 15309, + "end": 15315, "loc": { "start": { "line": 882, @@ -36129,8 +36248,8 @@ }, "object": { "type": "ThisExpression", - "start": 15294, - "end": 15298, + "start": 15309, + "end": 15313, "loc": { "start": { "line": 882, @@ -36144,8 +36263,8 @@ }, "property": { "type": "Identifier", - "start": 15299, - "end": 15300, + "start": 15314, + "end": 15315, "loc": { "start": { "line": 882, @@ -36163,8 +36282,8 @@ }, "right": { "type": "CallExpression", - "start": 15303, - "end": 15321, + "start": 15318, + "end": 15336, "loc": { "start": { "line": 882, @@ -36177,8 +36296,8 @@ }, "callee": { "type": "MemberExpression", - "start": 15303, - "end": 15313, + "start": 15318, + "end": 15328, "loc": { "start": { "line": 882, @@ -36191,8 +36310,8 @@ }, "object": { "type": "Identifier", - "start": 15303, - "end": 15307, + "start": 15318, + "end": 15322, "loc": { "start": { "line": 882, @@ -36208,8 +36327,8 @@ }, "property": { "type": "Identifier", - "start": 15308, - "end": 15313, + "start": 15323, + "end": 15328, "loc": { "start": { "line": 882, @@ -36228,8 +36347,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 15314, - "end": 15320, + "start": 15329, + "end": 15335, "loc": { "start": { "line": 882, @@ -36242,8 +36361,8 @@ }, "object": { "type": "ThisExpression", - "start": 15314, - "end": 15318, + "start": 15329, + "end": 15333, "loc": { "start": { "line": 882, @@ -36257,8 +36376,8 @@ }, "property": { "type": "Identifier", - "start": 15319, - "end": 15320, + "start": 15334, + "end": 15335, "loc": { "start": { "line": 882, @@ -36280,8 +36399,8 @@ }, { "type": "ExpressionStatement", - "start": 15326, - "end": 15354, + "start": 15341, + "end": 15369, "loc": { "start": { "line": 883, @@ -36294,8 +36413,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 15326, - "end": 15353, + "start": 15341, + "end": 15368, "loc": { "start": { "line": 883, @@ -36309,8 +36428,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 15326, - "end": 15332, + "start": 15341, + "end": 15347, "loc": { "start": { "line": 883, @@ -36323,8 +36442,8 @@ }, "object": { "type": "ThisExpression", - "start": 15326, - "end": 15330, + "start": 15341, + "end": 15345, "loc": { "start": { "line": 883, @@ -36338,8 +36457,8 @@ }, "property": { "type": "Identifier", - "start": 15331, - "end": 15332, + "start": 15346, + "end": 15347, "loc": { "start": { "line": 883, @@ -36357,8 +36476,8 @@ }, "right": { "type": "CallExpression", - "start": 15335, - "end": 15353, + "start": 15350, + "end": 15368, "loc": { "start": { "line": 883, @@ -36371,8 +36490,8 @@ }, "callee": { "type": "MemberExpression", - "start": 15335, - "end": 15345, + "start": 15350, + "end": 15360, "loc": { "start": { "line": 883, @@ -36385,8 +36504,8 @@ }, "object": { "type": "Identifier", - "start": 15335, - "end": 15339, + "start": 15350, + "end": 15354, "loc": { "start": { "line": 883, @@ -36402,8 +36521,8 @@ }, "property": { "type": "Identifier", - "start": 15340, - "end": 15345, + "start": 15355, + "end": 15360, "loc": { "start": { "line": 883, @@ -36422,8 +36541,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 15346, - "end": 15352, + "start": 15361, + "end": 15367, "loc": { "start": { "line": 883, @@ -36436,8 +36555,8 @@ }, "object": { "type": "ThisExpression", - "start": 15346, - "end": 15350, + "start": 15361, + "end": 15365, "loc": { "start": { "line": 883, @@ -36451,8 +36570,8 @@ }, "property": { "type": "Identifier", - "start": 15351, - "end": 15352, + "start": 15366, + "end": 15367, "loc": { "start": { "line": 883, @@ -36474,8 +36593,8 @@ }, { "type": "ExpressionStatement", - "start": 15358, - "end": 15386, + "start": 15373, + "end": 15401, "loc": { "start": { "line": 884, @@ -36488,8 +36607,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 15358, - "end": 15385, + "start": 15373, + "end": 15400, "loc": { "start": { "line": 884, @@ -36503,8 +36622,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 15358, - "end": 15364, + "start": 15373, + "end": 15379, "loc": { "start": { "line": 884, @@ -36517,8 +36636,8 @@ }, "object": { "type": "ThisExpression", - "start": 15358, - "end": 15362, + "start": 15373, + "end": 15377, "loc": { "start": { "line": 884, @@ -36532,8 +36651,8 @@ }, "property": { "type": "Identifier", - "start": 15363, - "end": 15364, + "start": 15378, + "end": 15379, "loc": { "start": { "line": 884, @@ -36551,8 +36670,8 @@ }, "right": { "type": "CallExpression", - "start": 15367, - "end": 15385, + "start": 15382, + "end": 15400, "loc": { "start": { "line": 884, @@ -36565,8 +36684,8 @@ }, "callee": { "type": "MemberExpression", - "start": 15367, - "end": 15377, + "start": 15382, + "end": 15392, "loc": { "start": { "line": 884, @@ -36579,8 +36698,8 @@ }, "object": { "type": "Identifier", - "start": 15367, - "end": 15371, + "start": 15382, + "end": 15386, "loc": { "start": { "line": 884, @@ -36596,8 +36715,8 @@ }, "property": { "type": "Identifier", - "start": 15372, - "end": 15377, + "start": 15387, + "end": 15392, "loc": { "start": { "line": 884, @@ -36616,8 +36735,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 15378, - "end": 15384, + "start": 15393, + "end": 15399, "loc": { "start": { "line": 884, @@ -36630,8 +36749,8 @@ }, "object": { "type": "ThisExpression", - "start": 15378, - "end": 15382, + "start": 15393, + "end": 15397, "loc": { "start": { "line": 884, @@ -36645,8 +36764,8 @@ }, "property": { "type": "Identifier", - "start": 15383, - "end": 15384, + "start": 15398, + "end": 15399, "loc": { "start": { "line": 884, @@ -36668,8 +36787,8 @@ }, { "type": "ReturnStatement", - "start": 15392, - "end": 15404, + "start": 15407, + "end": 15419, "loc": { "start": { "line": 886, @@ -36682,8 +36801,8 @@ }, "argument": { "type": "ThisExpression", - "start": 15399, - "end": 15403, + "start": 15414, + "end": 15418, "loc": { "start": { "line": 886, @@ -36704,8 +36823,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Rounds this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 15199, - "end": 15274, + "start": 15214, + "end": 15289, "loc": { "start": { "line": 874, @@ -36722,8 +36841,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Lerps towards the given vector.\r\n\t *\r\n\t * @param {Vector3} v - The target vector.\r\n\t * @param {Number} alpha - The lerp factor.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 15415, - "end": 15593, + "start": 15430, + "end": 15608, "loc": { "start": { "line": 890, @@ -36739,8 +36858,8 @@ }, { "type": "ClassMethod", - "start": 15598, - "end": 15751, + "start": 15613, + "end": 15766, "loc": { "start": { "line": 898, @@ -36755,8 +36874,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 15598, - "end": 15602, + "start": 15613, + "end": 15617, "loc": { "start": { "line": 898, @@ -36779,8 +36898,8 @@ "params": [ { "type": "Identifier", - "start": 15603, - "end": 15604, + "start": 15618, + "end": 15619, "loc": { "start": { "line": 898, @@ -36796,8 +36915,8 @@ }, { "type": "Identifier", - "start": 15606, - "end": 15611, + "start": 15621, + "end": 15626, "loc": { "start": { "line": 898, @@ -36814,8 +36933,8 @@ ], "body": { "type": "BlockStatement", - "start": 15613, - "end": 15751, + "start": 15628, + "end": 15766, "loc": { "start": { "line": 898, @@ -36829,8 +36948,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 15620, - "end": 15653, + "start": 15635, + "end": 15668, "loc": { "start": { "line": 900, @@ -36843,8 +36962,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 15620, - "end": 15652, + "start": 15635, + "end": 15667, "loc": { "start": { "line": 900, @@ -36858,8 +36977,8 @@ "operator": "+=", "left": { "type": "MemberExpression", - "start": 15620, - "end": 15626, + "start": 15635, + "end": 15641, "loc": { "start": { "line": 900, @@ -36872,8 +36991,8 @@ }, "object": { "type": "ThisExpression", - "start": 15620, - "end": 15624, + "start": 15635, + "end": 15639, "loc": { "start": { "line": 900, @@ -36887,8 +37006,8 @@ }, "property": { "type": "Identifier", - "start": 15625, - "end": 15626, + "start": 15640, + "end": 15641, "loc": { "start": { "line": 900, @@ -36906,8 +37025,8 @@ }, "right": { "type": "BinaryExpression", - "start": 15630, - "end": 15652, + "start": 15645, + "end": 15667, "loc": { "start": { "line": 900, @@ -36920,8 +37039,8 @@ }, "left": { "type": "BinaryExpression", - "start": 15631, - "end": 15643, + "start": 15646, + "end": 15658, "loc": { "start": { "line": 900, @@ -36934,8 +37053,8 @@ }, "left": { "type": "MemberExpression", - "start": 15631, - "end": 15634, + "start": 15646, + "end": 15649, "loc": { "start": { "line": 900, @@ -36948,8 +37067,8 @@ }, "object": { "type": "Identifier", - "start": 15631, - "end": 15632, + "start": 15646, + "end": 15647, "loc": { "start": { "line": 900, @@ -36965,8 +37084,8 @@ }, "property": { "type": "Identifier", - "start": 15633, - "end": 15634, + "start": 15648, + "end": 15649, "loc": { "start": { "line": 900, @@ -36985,8 +37104,8 @@ "operator": "-", "right": { "type": "MemberExpression", - "start": 15637, - "end": 15643, + "start": 15652, + "end": 15658, "loc": { "start": { "line": 900, @@ -36999,8 +37118,8 @@ }, "object": { "type": "ThisExpression", - "start": 15637, - "end": 15641, + "start": 15652, + "end": 15656, "loc": { "start": { "line": 900, @@ -37014,8 +37133,8 @@ }, "property": { "type": "Identifier", - "start": 15642, - "end": 15643, + "start": 15657, + "end": 15658, "loc": { "start": { "line": 900, @@ -37033,14 +37152,14 @@ }, "extra": { "parenthesized": true, - "parenStart": 15630 + "parenStart": 15645 } }, "operator": "*", "right": { "type": "Identifier", - "start": 15647, - "end": 15652, + "start": 15662, + "end": 15667, "loc": { "start": { "line": 900, @@ -37059,8 +37178,8 @@ }, { "type": "ExpressionStatement", - "start": 15657, - "end": 15690, + "start": 15672, + "end": 15705, "loc": { "start": { "line": 901, @@ -37073,8 +37192,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 15657, - "end": 15689, + "start": 15672, + "end": 15704, "loc": { "start": { "line": 901, @@ -37088,8 +37207,8 @@ "operator": "+=", "left": { "type": "MemberExpression", - "start": 15657, - "end": 15663, + "start": 15672, + "end": 15678, "loc": { "start": { "line": 901, @@ -37102,8 +37221,8 @@ }, "object": { "type": "ThisExpression", - "start": 15657, - "end": 15661, + "start": 15672, + "end": 15676, "loc": { "start": { "line": 901, @@ -37117,8 +37236,8 @@ }, "property": { "type": "Identifier", - "start": 15662, - "end": 15663, + "start": 15677, + "end": 15678, "loc": { "start": { "line": 901, @@ -37136,8 +37255,8 @@ }, "right": { "type": "BinaryExpression", - "start": 15667, - "end": 15689, + "start": 15682, + "end": 15704, "loc": { "start": { "line": 901, @@ -37150,8 +37269,8 @@ }, "left": { "type": "BinaryExpression", - "start": 15668, - "end": 15680, + "start": 15683, + "end": 15695, "loc": { "start": { "line": 901, @@ -37164,8 +37283,8 @@ }, "left": { "type": "MemberExpression", - "start": 15668, - "end": 15671, + "start": 15683, + "end": 15686, "loc": { "start": { "line": 901, @@ -37178,8 +37297,8 @@ }, "object": { "type": "Identifier", - "start": 15668, - "end": 15669, + "start": 15683, + "end": 15684, "loc": { "start": { "line": 901, @@ -37195,8 +37314,8 @@ }, "property": { "type": "Identifier", - "start": 15670, - "end": 15671, + "start": 15685, + "end": 15686, "loc": { "start": { "line": 901, @@ -37215,8 +37334,8 @@ "operator": "-", "right": { "type": "MemberExpression", - "start": 15674, - "end": 15680, + "start": 15689, + "end": 15695, "loc": { "start": { "line": 901, @@ -37229,8 +37348,8 @@ }, "object": { "type": "ThisExpression", - "start": 15674, - "end": 15678, + "start": 15689, + "end": 15693, "loc": { "start": { "line": 901, @@ -37244,8 +37363,8 @@ }, "property": { "type": "Identifier", - "start": 15679, - "end": 15680, + "start": 15694, + "end": 15695, "loc": { "start": { "line": 901, @@ -37263,14 +37382,14 @@ }, "extra": { "parenthesized": true, - "parenStart": 15667 + "parenStart": 15682 } }, "operator": "*", "right": { "type": "Identifier", - "start": 15684, - "end": 15689, + "start": 15699, + "end": 15704, "loc": { "start": { "line": 901, @@ -37289,8 +37408,8 @@ }, { "type": "ExpressionStatement", - "start": 15694, - "end": 15727, + "start": 15709, + "end": 15742, "loc": { "start": { "line": 902, @@ -37303,8 +37422,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 15694, - "end": 15726, + "start": 15709, + "end": 15741, "loc": { "start": { "line": 902, @@ -37318,8 +37437,8 @@ "operator": "+=", "left": { "type": "MemberExpression", - "start": 15694, - "end": 15700, + "start": 15709, + "end": 15715, "loc": { "start": { "line": 902, @@ -37332,8 +37451,8 @@ }, "object": { "type": "ThisExpression", - "start": 15694, - "end": 15698, + "start": 15709, + "end": 15713, "loc": { "start": { "line": 902, @@ -37347,8 +37466,8 @@ }, "property": { "type": "Identifier", - "start": 15699, - "end": 15700, + "start": 15714, + "end": 15715, "loc": { "start": { "line": 902, @@ -37366,8 +37485,8 @@ }, "right": { "type": "BinaryExpression", - "start": 15704, - "end": 15726, + "start": 15719, + "end": 15741, "loc": { "start": { "line": 902, @@ -37380,8 +37499,8 @@ }, "left": { "type": "BinaryExpression", - "start": 15705, - "end": 15717, + "start": 15720, + "end": 15732, "loc": { "start": { "line": 902, @@ -37394,8 +37513,8 @@ }, "left": { "type": "MemberExpression", - "start": 15705, - "end": 15708, + "start": 15720, + "end": 15723, "loc": { "start": { "line": 902, @@ -37408,8 +37527,8 @@ }, "object": { "type": "Identifier", - "start": 15705, - "end": 15706, + "start": 15720, + "end": 15721, "loc": { "start": { "line": 902, @@ -37425,8 +37544,8 @@ }, "property": { "type": "Identifier", - "start": 15707, - "end": 15708, + "start": 15722, + "end": 15723, "loc": { "start": { "line": 902, @@ -37445,8 +37564,8 @@ "operator": "-", "right": { "type": "MemberExpression", - "start": 15711, - "end": 15717, + "start": 15726, + "end": 15732, "loc": { "start": { "line": 902, @@ -37459,8 +37578,8 @@ }, "object": { "type": "ThisExpression", - "start": 15711, - "end": 15715, + "start": 15726, + "end": 15730, "loc": { "start": { "line": 902, @@ -37474,8 +37593,8 @@ }, "property": { "type": "Identifier", - "start": 15716, - "end": 15717, + "start": 15731, + "end": 15732, "loc": { "start": { "line": 902, @@ -37493,14 +37612,14 @@ }, "extra": { "parenthesized": true, - "parenStart": 15704 + "parenStart": 15719 } }, "operator": "*", "right": { "type": "Identifier", - "start": 15721, - "end": 15726, + "start": 15736, + "end": 15741, "loc": { "start": { "line": 902, @@ -37519,8 +37638,8 @@ }, { "type": "ReturnStatement", - "start": 15733, - "end": 15745, + "start": 15748, + "end": 15760, "loc": { "start": { "line": 904, @@ -37533,8 +37652,8 @@ }, "argument": { "type": "ThisExpression", - "start": 15740, - "end": 15744, + "start": 15755, + "end": 15759, "loc": { "start": { "line": 904, @@ -37555,8 +37674,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Lerps towards the given vector.\r\n\t *\r\n\t * @param {Vector3} v - The target vector.\r\n\t * @param {Number} alpha - The lerp factor.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 15415, - "end": 15593, + "start": 15430, + "end": 15608, "loc": { "start": { "line": 890, @@ -37573,8 +37692,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Sets this vector to the lerp result of the given vectors.\r\n\t *\r\n\t * @param {Vector3} v1 - A base vector.\r\n\t * @param {Vector3} v2 - The target vector.\r\n\t * @param {Number} alpha - The lerp factor.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 15756, - "end": 16003, + "start": 15771, + "end": 16018, "loc": { "start": { "line": 908, @@ -37590,8 +37709,8 @@ }, { "type": "ClassMethod", - "start": 16008, - "end": 16109, + "start": 16023, + "end": 16124, "loc": { "start": { "line": 917, @@ -37606,8 +37725,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 16008, - "end": 16019, + "start": 16023, + "end": 16034, "loc": { "start": { "line": 917, @@ -37630,8 +37749,8 @@ "params": [ { "type": "Identifier", - "start": 16020, - "end": 16022, + "start": 16035, + "end": 16037, "loc": { "start": { "line": 917, @@ -37647,8 +37766,8 @@ }, { "type": "Identifier", - "start": 16024, - "end": 16026, + "start": 16039, + "end": 16041, "loc": { "start": { "line": 917, @@ -37664,8 +37783,8 @@ }, { "type": "Identifier", - "start": 16028, - "end": 16033, + "start": 16043, + "end": 16048, "loc": { "start": { "line": 917, @@ -37682,8 +37801,8 @@ ], "body": { "type": "BlockStatement", - "start": 16035, - "end": 16109, + "start": 16050, + "end": 16124, "loc": { "start": { "line": 917, @@ -37697,8 +37816,8 @@ "body": [ { "type": "ReturnStatement", - "start": 16042, - "end": 16103, + "start": 16057, + "end": 16118, "loc": { "start": { "line": 919, @@ -37711,8 +37830,8 @@ }, "argument": { "type": "CallExpression", - "start": 16049, - "end": 16102, + "start": 16064, + "end": 16117, "loc": { "start": { "line": 919, @@ -37725,8 +37844,8 @@ }, "callee": { "type": "MemberExpression", - "start": 16049, - "end": 16098, + "start": 16064, + "end": 16113, "loc": { "start": { "line": 919, @@ -37739,8 +37858,8 @@ }, "object": { "type": "CallExpression", - "start": 16049, - "end": 16094, + "start": 16064, + "end": 16109, "loc": { "start": { "line": 919, @@ -37753,8 +37872,8 @@ }, "callee": { "type": "MemberExpression", - "start": 16049, - "end": 16087, + "start": 16064, + "end": 16102, "loc": { "start": { "line": 919, @@ -37767,8 +37886,8 @@ }, "object": { "type": "CallExpression", - "start": 16049, - "end": 16072, + "start": 16064, + "end": 16087, "loc": { "start": { "line": 919, @@ -37781,8 +37900,8 @@ }, "callee": { "type": "MemberExpression", - "start": 16049, - "end": 16064, + "start": 16064, + "end": 16079, "loc": { "start": { "line": 919, @@ -37795,8 +37914,8 @@ }, "object": { "type": "ThisExpression", - "start": 16049, - "end": 16053, + "start": 16064, + "end": 16068, "loc": { "start": { "line": 919, @@ -37810,8 +37929,8 @@ }, "property": { "type": "Identifier", - "start": 16054, - "end": 16064, + "start": 16069, + "end": 16079, "loc": { "start": { "line": 919, @@ -37830,8 +37949,8 @@ "arguments": [ { "type": "Identifier", - "start": 16065, - "end": 16067, + "start": 16080, + "end": 16082, "loc": { "start": { "line": 919, @@ -37847,8 +37966,8 @@ }, { "type": "Identifier", - "start": 16069, - "end": 16071, + "start": 16084, + "end": 16086, "loc": { "start": { "line": 919, @@ -37866,8 +37985,8 @@ }, "property": { "type": "Identifier", - "start": 16073, - "end": 16087, + "start": 16088, + "end": 16102, "loc": { "start": { "line": 919, @@ -37886,8 +38005,8 @@ "arguments": [ { "type": "Identifier", - "start": 16088, - "end": 16093, + "start": 16103, + "end": 16108, "loc": { "start": { "line": 919, @@ -37905,8 +38024,8 @@ }, "property": { "type": "Identifier", - "start": 16095, - "end": 16098, + "start": 16110, + "end": 16113, "loc": { "start": { "line": 919, @@ -37925,8 +38044,8 @@ "arguments": [ { "type": "Identifier", - "start": 16099, - "end": 16101, + "start": 16114, + "end": 16116, "loc": { "start": { "line": 919, @@ -37951,8 +38070,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Sets this vector to the lerp result of the given vectors.\r\n\t *\r\n\t * @param {Vector3} v1 - A base vector.\r\n\t * @param {Vector3} v2 - The target vector.\r\n\t * @param {Number} alpha - The lerp factor.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 15756, - "end": 16003, + "start": 15771, + "end": 16018, "loc": { "start": { "line": 908, @@ -37969,8 +38088,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Checks if this vector equals the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Boolean} Whether this vector equals the given one.\r\n\t ", - "start": 16114, - "end": 16278, + "start": 16129, + "end": 16293, "loc": { "start": { "line": 923, @@ -37986,8 +38105,8 @@ }, { "type": "ClassMethod", - "start": 16283, - "end": 16366, + "start": 16298, + "end": 16381, "loc": { "start": { "line": 930, @@ -38002,8 +38121,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 16283, - "end": 16289, + "start": 16298, + "end": 16304, "loc": { "start": { "line": 930, @@ -38026,8 +38145,8 @@ "params": [ { "type": "Identifier", - "start": 16290, - "end": 16291, + "start": 16305, + "end": 16306, "loc": { "start": { "line": 930, @@ -38044,8 +38163,8 @@ ], "body": { "type": "BlockStatement", - "start": 16293, - "end": 16366, + "start": 16308, + "end": 16381, "loc": { "start": { "line": 930, @@ -38059,8 +38178,8 @@ "body": [ { "type": "ReturnStatement", - "start": 16300, - "end": 16360, + "start": 16315, + "end": 16375, "loc": { "start": { "line": 932, @@ -38073,8 +38192,8 @@ }, "argument": { "type": "LogicalExpression", - "start": 16308, - "end": 16358, + "start": 16323, + "end": 16373, "loc": { "start": { "line": 932, @@ -38087,8 +38206,8 @@ }, "left": { "type": "LogicalExpression", - "start": 16308, - "end": 16340, + "start": 16323, + "end": 16355, "loc": { "start": { "line": 932, @@ -38101,8 +38220,8 @@ }, "left": { "type": "BinaryExpression", - "start": 16308, - "end": 16322, + "start": 16323, + "end": 16337, "loc": { "start": { "line": 932, @@ -38115,8 +38234,8 @@ }, "left": { "type": "MemberExpression", - "start": 16308, - "end": 16311, + "start": 16323, + "end": 16326, "loc": { "start": { "line": 932, @@ -38129,8 +38248,8 @@ }, "object": { "type": "Identifier", - "start": 16308, - "end": 16309, + "start": 16323, + "end": 16324, "loc": { "start": { "line": 932, @@ -38146,8 +38265,8 @@ }, "property": { "type": "Identifier", - "start": 16310, - "end": 16311, + "start": 16325, + "end": 16326, "loc": { "start": { "line": 932, @@ -38166,8 +38285,8 @@ "operator": "===", "right": { "type": "MemberExpression", - "start": 16316, - "end": 16322, + "start": 16331, + "end": 16337, "loc": { "start": { "line": 932, @@ -38180,8 +38299,8 @@ }, "object": { "type": "ThisExpression", - "start": 16316, - "end": 16320, + "start": 16331, + "end": 16335, "loc": { "start": { "line": 932, @@ -38195,8 +38314,8 @@ }, "property": { "type": "Identifier", - "start": 16321, - "end": 16322, + "start": 16336, + "end": 16337, "loc": { "start": { "line": 932, @@ -38216,8 +38335,8 @@ "operator": "&&", "right": { "type": "BinaryExpression", - "start": 16326, - "end": 16340, + "start": 16341, + "end": 16355, "loc": { "start": { "line": 932, @@ -38230,8 +38349,8 @@ }, "left": { "type": "MemberExpression", - "start": 16326, - "end": 16329, + "start": 16341, + "end": 16344, "loc": { "start": { "line": 932, @@ -38244,8 +38363,8 @@ }, "object": { "type": "Identifier", - "start": 16326, - "end": 16327, + "start": 16341, + "end": 16342, "loc": { "start": { "line": 932, @@ -38261,8 +38380,8 @@ }, "property": { "type": "Identifier", - "start": 16328, - "end": 16329, + "start": 16343, + "end": 16344, "loc": { "start": { "line": 932, @@ -38281,8 +38400,8 @@ "operator": "===", "right": { "type": "MemberExpression", - "start": 16334, - "end": 16340, + "start": 16349, + "end": 16355, "loc": { "start": { "line": 932, @@ -38295,8 +38414,8 @@ }, "object": { "type": "ThisExpression", - "start": 16334, - "end": 16338, + "start": 16349, + "end": 16353, "loc": { "start": { "line": 932, @@ -38310,8 +38429,8 @@ }, "property": { "type": "Identifier", - "start": 16339, - "end": 16340, + "start": 16354, + "end": 16355, "loc": { "start": { "line": 932, @@ -38332,8 +38451,8 @@ "operator": "&&", "right": { "type": "BinaryExpression", - "start": 16344, - "end": 16358, + "start": 16359, + "end": 16373, "loc": { "start": { "line": 932, @@ -38346,8 +38465,8 @@ }, "left": { "type": "MemberExpression", - "start": 16344, - "end": 16347, + "start": 16359, + "end": 16362, "loc": { "start": { "line": 932, @@ -38360,8 +38479,8 @@ }, "object": { "type": "Identifier", - "start": 16344, - "end": 16345, + "start": 16359, + "end": 16360, "loc": { "start": { "line": 932, @@ -38377,8 +38496,8 @@ }, "property": { "type": "Identifier", - "start": 16346, - "end": 16347, + "start": 16361, + "end": 16362, "loc": { "start": { "line": 932, @@ -38397,8 +38516,8 @@ "operator": "===", "right": { "type": "MemberExpression", - "start": 16352, - "end": 16358, + "start": 16367, + "end": 16373, "loc": { "start": { "line": 932, @@ -38411,8 +38530,8 @@ }, "object": { "type": "ThisExpression", - "start": 16352, - "end": 16356, + "start": 16367, + "end": 16371, "loc": { "start": { "line": 932, @@ -38426,8 +38545,8 @@ }, "property": { "type": "Identifier", - "start": 16357, - "end": 16358, + "start": 16372, + "end": 16373, "loc": { "start": { "line": 932, @@ -38446,7 +38565,7 @@ }, "extra": { "parenthesized": true, - "parenStart": 16307 + "parenStart": 16322 } } } @@ -38457,8 +38576,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Checks if this vector equals the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Boolean} Whether this vector equals the given one.\r\n\t ", - "start": 16114, - "end": 16278, + "start": 16129, + "end": 16293, "loc": { "start": { "line": 923, @@ -39237,27 +39356,11 @@ } } }, - { - "type": "CommentLine", - "value": " Clamp to avoid numerical problems.", - "start": 11818, - "end": 11855, - "loc": { - "start": { - "line": 681, - "column": 2 - }, - "end": { - "line": 681, - "column": 39 - } - } - }, { "type": "CommentBlock", "value": "*\r\n\t * Calculates the Manhattan length of this vector.\r\n\t *\r\n\t * @return {Number} The length.\r\n\t ", - "start": 11921, - "end": 12022, + "start": 11936, + "end": 12037, "loc": { "start": { "line": 686, @@ -39272,8 +39375,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the squared length of this vector.\r\n\t *\r\n\t * @return {Number} The squared length.\r\n\t ", - "start": 12125, - "end": 12232, + "start": 12140, + "end": 12247, "loc": { "start": { "line": 698, @@ -39288,8 +39391,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the length of this vector.\r\n\t *\r\n\t * @return {Number} The length.\r\n\t ", - "start": 12330, - "end": 12421, + "start": 12345, + "end": 12436, "loc": { "start": { "line": 710, @@ -39304,8 +39407,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the Manhattan distance to a given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The distance.\r\n\t ", - "start": 12523, - "end": 12667, + "start": 12538, + "end": 12682, "loc": { "start": { "line": 722, @@ -39320,8 +39423,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the squared distance to a given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The squared distance.\r\n\t ", - "start": 12793, - "end": 12943, + "start": 12808, + "end": 12958, "loc": { "start": { "line": 735, @@ -39336,8 +39439,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the distance to a given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The distance.\r\n\t ", - "start": 13108, - "end": 13242, + "start": 13123, + "end": 13257, "loc": { "start": { "line": 752, @@ -39352,8 +39455,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Normalizes this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 13323, - "end": 13402, + "start": 13338, + "end": 13417, "loc": { "start": { "line": 765, @@ -39368,8 +39471,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Sets the length of this vector.\r\n\t *\r\n\t * @param {Number} length - The new length.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 13477, - "end": 13610, + "start": 13492, + "end": 13625, "loc": { "start": { "line": 777, @@ -39384,8 +39487,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Adopts the min value for each component of this vector and the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 13698, - "end": 13863, + "start": 13713, + "end": 13878, "loc": { "start": { "line": 790, @@ -39400,8 +39503,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Adopts the max value for each component of this vector and the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 14012, - "end": 14177, + "start": 14027, + "end": 14192, "loc": { "start": { "line": 807, @@ -39416,8 +39519,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Clamps this vector.\r\n\t *\r\n\t * @param {Vector3} min - The lower bounds. Assumed to be smaller than max.\r\n\t * @param {Vector3} max - The upper bounds. Assumed to be greater than min.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 14326, - "end": 14557, + "start": 14341, + "end": 14572, "loc": { "start": { "line": 824, @@ -39432,8 +39535,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Floors this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 14772, - "end": 14847, + "start": 14787, + "end": 14862, "loc": { "start": { "line": 842, @@ -39448,8 +39551,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Ceils this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 14988, - "end": 15062, + "start": 15003, + "end": 15077, "loc": { "start": { "line": 858, @@ -39464,8 +39567,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Rounds this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 15199, - "end": 15274, + "start": 15214, + "end": 15289, "loc": { "start": { "line": 874, @@ -39480,8 +39583,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Lerps towards the given vector.\r\n\t *\r\n\t * @param {Vector3} v - The target vector.\r\n\t * @param {Number} alpha - The lerp factor.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 15415, - "end": 15593, + "start": 15430, + "end": 15608, "loc": { "start": { "line": 890, @@ -39496,8 +39599,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Sets this vector to the lerp result of the given vectors.\r\n\t *\r\n\t * @param {Vector3} v1 - A base vector.\r\n\t * @param {Vector3} v2 - The target vector.\r\n\t * @param {Number} alpha - The lerp factor.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 15756, - "end": 16003, + "start": 15771, + "end": 16018, "loc": { "start": { "line": 908, @@ -39512,8 +39615,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Checks if this vector equals the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Boolean} Whether this vector equals the given one.\r\n\t ", - "start": 16114, - "end": 16278, + "start": 16129, + "end": 16293, "loc": { "start": { "line": 923, @@ -87035,9 +87138,9 @@ "postfix": false, "binop": null }, - "value": "theta", + "value": "denominator", "start": 11736, - "end": 11741, + "end": 11747, "loc": { "start": { "line": 679, @@ -87045,7 +87148,7 @@ }, "end": { "line": 679, - "column": 13 + "column": 19 } } }, @@ -87063,23 +87166,22 @@ "updateContext": null }, "value": "=", - "start": 11742, - "end": 11743, + "start": 11748, + "end": 11749, "loc": { "start": { "line": 679, - "column": 14 + "column": 20 }, "end": { "line": 679, - "column": 15 + "column": 21 } } }, { "type": { - "label": "this", - "keyword": "this", + "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -87087,20 +87189,19 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "this", - "start": 11744, - "end": 11748, + "value": "Math", + "start": 11750, + "end": 11754, "loc": { "start": { "line": 679, - "column": 16 + "column": 22 }, "end": { "line": 679, - "column": 20 + "column": 26 } } }, @@ -87117,16 +87218,16 @@ "binop": null, "updateContext": null }, - "start": 11748, - "end": 11749, + "start": 11754, + "end": 11755, "loc": { "start": { "line": 679, - "column": 20 + "column": 26 }, "end": { "line": 679, - "column": 21 + "column": 27 } } }, @@ -87142,17 +87243,17 @@ "postfix": false, "binop": null }, - "value": "dot", - "start": 11749, - "end": 11752, + "value": "sqrt", + "start": 11755, + "end": 11759, "loc": { "start": { "line": 679, - "column": 21 + "column": 27 }, "end": { "line": 679, - "column": 24 + "column": 31 } } }, @@ -87168,22 +87269,23 @@ "postfix": false, "binop": null }, - "start": 11752, - "end": 11753, + "start": 11759, + "end": 11760, "loc": { "start": { "line": 679, - "column": 24 + "column": 31 }, "end": { "line": 679, - "column": 25 + "column": 32 } } }, { "type": { - "label": "name", + "label": "this", + "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -87191,25 +87293,26 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "v", - "start": 11753, - "end": 11754, + "value": "this", + "start": 11760, + "end": 11764, "loc": { "start": { "line": 679, - "column": 25 + "column": 32 }, "end": { "line": 679, - "column": 26 + "column": 36 } } }, { "type": { - "label": ")", + "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, @@ -87217,45 +87320,45 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 11754, - "end": 11755, + "start": 11764, + "end": 11765, "loc": { "start": { "line": 679, - "column": 26 + "column": 36 }, "end": { "line": 679, - "column": 27 + "column": 37 } } }, { "type": { - "label": "/", - "beforeExpr": true, - "startsExpr": false, + "label": "name", + "beforeExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": 10, - "updateContext": null + "binop": null }, - "value": "/", - "start": 11756, - "end": 11757, + "value": "lengthSquared", + "start": 11765, + "end": 11778, "loc": { "start": { "line": 679, - "column": 28 + "column": 37 }, "end": { "line": 679, - "column": 29 + "column": 50 } } }, @@ -87271,16 +87374,68 @@ "postfix": false, "binop": null }, - "start": 11758, - "end": 11759, + "start": 11778, + "end": 11779, "loc": { "start": { "line": 679, - "column": 30 + "column": 50 }, "end": { "line": 679, - "column": 31 + "column": 51 + } + } + }, + { + "type": { + "label": ")", + "beforeExpr": false, + "startsExpr": false, + "rightAssociative": false, + "isLoop": false, + "isAssign": false, + "prefix": false, + "postfix": false, + "binop": null + }, + "start": 11779, + "end": 11780, + "loc": { + "start": { + "line": 679, + "column": 51 + }, + "end": { + "line": 679, + "column": 52 + } + } + }, + { + "type": { + "label": "*", + "beforeExpr": true, + "startsExpr": false, + "rightAssociative": false, + "isLoop": false, + "isAssign": false, + "prefix": false, + "postfix": false, + "binop": 10, + "updateContext": null + }, + "value": "*", + "start": 11781, + "end": 11782, + "loc": { + "start": { + "line": 679, + "column": 53 + }, + "end": { + "line": 679, + "column": 54 } } }, @@ -87296,17 +87451,17 @@ "postfix": false, "binop": null }, - "value": "Math", - "start": 11759, - "end": 11763, + "value": "v", + "start": 11783, + "end": 11784, "loc": { "start": { "line": 679, - "column": 31 + "column": 55 }, "end": { "line": 679, - "column": 35 + "column": 56 } } }, @@ -87323,16 +87478,16 @@ "binop": null, "updateContext": null }, - "start": 11763, - "end": 11764, + "start": 11784, + "end": 11785, "loc": { "start": { "line": 679, - "column": 35 + "column": 56 }, "end": { "line": 679, - "column": 36 + "column": 57 } } }, @@ -87348,17 +87503,17 @@ "postfix": false, "binop": null }, - "value": "sqrt", - "start": 11764, - "end": 11768, + "value": "lengthSquared", + "start": 11785, + "end": 11798, "loc": { "start": { "line": 679, - "column": 36 + "column": 57 }, "end": { "line": 679, - "column": 40 + "column": 70 } } }, @@ -87374,25 +87529,74 @@ "postfix": false, "binop": null }, - "start": 11768, - "end": 11769, + "start": 11798, + "end": 11799, "loc": { "start": { "line": 679, - "column": 40 + "column": 70 }, "end": { "line": 679, - "column": 41 + "column": 71 } } }, { "type": { - "label": "this", - "keyword": "this", + "label": ")", "beforeExpr": false, - "startsExpr": true, + "startsExpr": false, + "rightAssociative": false, + "isLoop": false, + "isAssign": false, + "prefix": false, + "postfix": false, + "binop": null + }, + "start": 11799, + "end": 11800, + "loc": { + "start": { + "line": 679, + "column": 71 + }, + "end": { + "line": 679, + "column": 72 + } + } + }, + { + "type": { + "label": ")", + "beforeExpr": false, + "startsExpr": false, + "rightAssociative": false, + "isLoop": false, + "isAssign": false, + "prefix": false, + "postfix": false, + "binop": null + }, + "start": 11800, + "end": 11801, + "loc": { + "start": { + "line": 679, + "column": 72 + }, + "end": { + "line": 679, + "column": 73 + } + } + }, + { + "type": { + "label": ";", + "beforeExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -87401,17 +87605,251 @@ "binop": null, "updateContext": null }, - "value": "this", - "start": 11769, - "end": 11773, + "start": 11801, + "end": 11802, "loc": { "start": { "line": 679, - "column": 41 + "column": 73 }, "end": { "line": 679, - "column": 45 + "column": 74 + } + } + }, + { + "type": { + "label": "return", + "keyword": "return", + "beforeExpr": true, + "startsExpr": false, + "rightAssociative": false, + "isLoop": false, + "isAssign": false, + "prefix": false, + "postfix": false, + "binop": null, + "updateContext": null + }, + "value": "return", + "start": 11808, + "end": 11814, + "loc": { + "start": { + "line": 681, + "column": 2 + }, + "end": { + "line": 681, + "column": 8 + } + } + }, + { + "type": { + "label": "(", + "beforeExpr": true, + "startsExpr": true, + "rightAssociative": false, + "isLoop": false, + "isAssign": false, + "prefix": false, + "postfix": false, + "binop": null + }, + "start": 11815, + "end": 11816, + "loc": { + "start": { + "line": 681, + "column": 9 + }, + "end": { + "line": 681, + "column": 10 + } + } + }, + { + "type": { + "label": "name", + "beforeExpr": false, + "startsExpr": true, + "rightAssociative": false, + "isLoop": false, + "isAssign": false, + "prefix": false, + "postfix": false, + "binop": null + }, + "value": "denominator", + "start": 11816, + "end": 11827, + "loc": { + "start": { + "line": 681, + "column": 10 + }, + "end": { + "line": 681, + "column": 21 + } + } + }, + { + "type": { + "label": "==/!=", + "beforeExpr": true, + "startsExpr": false, + "rightAssociative": false, + "isLoop": false, + "isAssign": false, + "prefix": false, + "postfix": false, + "binop": 6, + "updateContext": null + }, + "value": "===", + "start": 11828, + "end": 11831, + "loc": { + "start": { + "line": 681, + "column": 22 + }, + "end": { + "line": 681, + "column": 25 + } + } + }, + { + "type": { + "label": "num", + "beforeExpr": false, + "startsExpr": true, + "rightAssociative": false, + "isLoop": false, + "isAssign": false, + "prefix": false, + "postfix": false, + "binop": null, + "updateContext": null + }, + "value": 0, + "start": 11832, + "end": 11835, + "loc": { + "start": { + "line": 681, + "column": 26 + }, + "end": { + "line": 681, + "column": 29 + } + } + }, + { + "type": { + "label": ")", + "beforeExpr": false, + "startsExpr": false, + "rightAssociative": false, + "isLoop": false, + "isAssign": false, + "prefix": false, + "postfix": false, + "binop": null + }, + "start": 11835, + "end": 11836, + "loc": { + "start": { + "line": 681, + "column": 29 + }, + "end": { + "line": 681, + "column": 30 + } + } + }, + { + "type": { + "label": "?", + "beforeExpr": true, + "startsExpr": false, + "rightAssociative": false, + "isLoop": false, + "isAssign": false, + "prefix": false, + "postfix": false, + "binop": null, + "updateContext": null + }, + "start": 11837, + "end": 11838, + "loc": { + "start": { + "line": 681, + "column": 31 + }, + "end": { + "line": 681, + "column": 32 + } + } + }, + { + "type": { + "label": "(", + "beforeExpr": true, + "startsExpr": true, + "rightAssociative": false, + "isLoop": false, + "isAssign": false, + "prefix": false, + "postfix": false, + "binop": null + }, + "start": 11839, + "end": 11840, + "loc": { + "start": { + "line": 681, + "column": 33 + }, + "end": { + "line": 681, + "column": 34 + } + } + }, + { + "type": { + "label": "name", + "beforeExpr": false, + "startsExpr": true, + "rightAssociative": false, + "isLoop": false, + "isAssign": false, + "prefix": false, + "postfix": false, + "binop": null + }, + "value": "Math", + "start": 11840, + "end": 11844, + "loc": { + "start": { + "line": 681, + "column": 34 + }, + "end": { + "line": 681, + "column": 38 } } }, @@ -87428,16 +87866,16 @@ "binop": null, "updateContext": null }, - "start": 11773, - "end": 11774, + "start": 11844, + "end": 11845, "loc": { "start": { - "line": 679, - "column": 45 + "line": 681, + "column": 38 }, "end": { - "line": 679, - "column": 46 + "line": 681, + "column": 39 } } }, @@ -87453,42 +87891,71 @@ "postfix": false, "binop": null }, - "value": "lengthSquared", - "start": 11774, - "end": 11787, + "value": "PI", + "start": 11845, + "end": 11847, + "loc": { + "start": { + "line": 681, + "column": 39 + }, + "end": { + "line": 681, + "column": 41 + } + } + }, + { + "type": { + "label": "*", + "beforeExpr": true, + "startsExpr": false, + "rightAssociative": false, + "isLoop": false, + "isAssign": false, + "prefix": false, + "postfix": false, + "binop": 10, + "updateContext": null + }, + "value": "*", + "start": 11848, + "end": 11849, "loc": { "start": { - "line": 679, - "column": 46 + "line": 681, + "column": 42 }, "end": { - "line": 679, - "column": 59 + "line": 681, + "column": 43 } } }, { "type": { - "label": "(", - "beforeExpr": true, + "label": "num", + "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 11787, - "end": 11788, + "value": 0.5, + "start": 11850, + "end": 11853, "loc": { "start": { - "line": 679, - "column": 59 + "line": 681, + "column": 44 }, "end": { - "line": 679, - "column": 60 + "line": 681, + "column": 47 } } }, @@ -87504,22 +87971,22 @@ "postfix": false, "binop": null }, - "start": 11788, - "end": 11789, + "start": 11853, + "end": 11854, "loc": { "start": { - "line": 679, - "column": 60 + "line": 681, + "column": 47 }, "end": { - "line": 679, - "column": 61 + "line": 681, + "column": 48 } } }, { "type": { - "label": "*", + "label": ":", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, @@ -87527,20 +87994,19 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": 10, + "binop": null, "updateContext": null }, - "value": "*", - "start": 11790, - "end": 11791, + "start": 11855, + "end": 11856, "loc": { "start": { - "line": 679, - "column": 62 + "line": 681, + "column": 49 }, "end": { - "line": 679, - "column": 63 + "line": 681, + "column": 50 } } }, @@ -87556,17 +88022,17 @@ "postfix": false, "binop": null }, - "value": "v", - "start": 11792, - "end": 11793, + "value": "Math", + "start": 11861, + "end": 11865, "loc": { "start": { - "line": 679, - "column": 64 + "line": 682, + "column": 3 }, "end": { - "line": 679, - "column": 65 + "line": 682, + "column": 7 } } }, @@ -87583,16 +88049,16 @@ "binop": null, "updateContext": null }, - "start": 11793, - "end": 11794, + "start": 11865, + "end": 11866, "loc": { "start": { - "line": 679, - "column": 65 + "line": 682, + "column": 7 }, "end": { - "line": 679, - "column": 66 + "line": 682, + "column": 8 } } }, @@ -87608,17 +88074,17 @@ "postfix": false, "binop": null }, - "value": "lengthSquared", - "start": 11794, - "end": 11807, + "value": "acos", + "start": 11866, + "end": 11870, "loc": { "start": { - "line": 679, - "column": 66 + "line": 682, + "column": 8 }, "end": { - "line": 679, - "column": 79 + "line": 682, + "column": 12 } } }, @@ -87634,24 +88100,24 @@ "postfix": false, "binop": null }, - "start": 11807, - "end": 11808, + "start": 11870, + "end": 11871, "loc": { "start": { - "line": 679, - "column": 79 + "line": 682, + "column": 12 }, "end": { - "line": 679, - "column": 80 + "line": 682, + "column": 13 } } }, { "type": { - "label": ")", + "label": "name", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -87659,22 +88125,23 @@ "postfix": false, "binop": null }, - "start": 11808, - "end": 11809, + "value": "Math", + "start": 11871, + "end": 11875, "loc": { "start": { - "line": 679, - "column": 80 + "line": 682, + "column": 13 }, "end": { - "line": 679, - "column": 81 + "line": 682, + "column": 17 } } }, { "type": { - "label": ")", + "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, @@ -87682,26 +88149,27 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 11809, - "end": 11810, + "start": 11875, + "end": 11876, "loc": { "start": { - "line": 679, - "column": 81 + "line": 682, + "column": 17 }, "end": { - "line": 679, - "column": 82 + "line": 682, + "column": 18 } } }, { "type": { - "label": ")", + "label": "name", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -87709,86 +88177,42 @@ "postfix": false, "binop": null }, - "start": 11810, - "end": 11811, - "loc": { - "start": { - "line": 679, - "column": 82 - }, - "end": { - "line": 679, - "column": 83 - } - } - }, - { - "type": { - "label": ";", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "start": 11811, - "end": 11812, - "loc": { - "start": { - "line": 679, - "column": 83 - }, - "end": { - "line": 679, - "column": 84 - } - } - }, - { - "type": "CommentLine", - "value": " Clamp to avoid numerical problems.", - "start": 11818, - "end": 11855, + "value": "min", + "start": 11876, + "end": 11879, "loc": { "start": { - "line": 681, - "column": 2 + "line": 682, + "column": 18 }, "end": { - "line": 681, - "column": 39 + "line": 682, + "column": 21 } } }, { "type": { - "label": "return", - "keyword": "return", + "label": "(", "beforeExpr": true, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "return", - "start": 11859, - "end": 11865, + "start": 11879, + "end": 11880, "loc": { "start": { "line": 682, - "column": 2 + "column": 21 }, "end": { "line": 682, - "column": 8 + "column": 22 } } }, @@ -87805,16 +88229,16 @@ "binop": null }, "value": "Math", - "start": 11866, - "end": 11870, + "start": 11880, + "end": 11884, "loc": { "start": { "line": 682, - "column": 9 + "column": 22 }, "end": { "line": 682, - "column": 13 + "column": 26 } } }, @@ -87831,16 +88255,16 @@ "binop": null, "updateContext": null }, - "start": 11870, - "end": 11871, + "start": 11884, + "end": 11885, "loc": { "start": { "line": 682, - "column": 13 + "column": 26 }, "end": { "line": 682, - "column": 14 + "column": 27 } } }, @@ -87856,17 +88280,17 @@ "postfix": false, "binop": null }, - "value": "acos", - "start": 11871, - "end": 11875, + "value": "max", + "start": 11885, + "end": 11888, "loc": { "start": { "line": 682, - "column": 14 + "column": 27 }, "end": { "line": 682, - "column": 18 + "column": 30 } } }, @@ -87882,22 +88306,23 @@ "postfix": false, "binop": null }, - "start": 11875, - "end": 11876, + "start": 11888, + "end": 11889, "loc": { "start": { "line": 682, - "column": 18 + "column": 30 }, "end": { "line": 682, - "column": 19 + "column": 31 } } }, { "type": { - "label": "name", + "label": "this", + "keyword": "this", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -87905,19 +88330,20 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "Math", - "start": 11876, - "end": 11880, + "value": "this", + "start": 11889, + "end": 11893, "loc": { "start": { "line": 682, - "column": 19 + "column": 31 }, "end": { "line": 682, - "column": 23 + "column": 35 } } }, @@ -87934,16 +88360,16 @@ "binop": null, "updateContext": null }, - "start": 11880, - "end": 11881, + "start": 11893, + "end": 11894, "loc": { "start": { "line": 682, - "column": 23 + "column": 35 }, "end": { "line": 682, - "column": 24 + "column": 36 } } }, @@ -87959,17 +88385,17 @@ "postfix": false, "binop": null }, - "value": "min", - "start": 11881, - "end": 11884, + "value": "dot", + "start": 11894, + "end": 11897, "loc": { "start": { "line": 682, - "column": 24 + "column": 36 }, "end": { "line": 682, - "column": 27 + "column": 39 } } }, @@ -87985,16 +88411,16 @@ "postfix": false, "binop": null }, - "start": 11884, - "end": 11885, + "start": 11897, + "end": 11898, "loc": { "start": { "line": 682, - "column": 27 + "column": 39 }, "end": { "line": 682, - "column": 28 + "column": 40 } } }, @@ -88010,23 +88436,23 @@ "postfix": false, "binop": null }, - "value": "Math", - "start": 11885, - "end": 11889, + "value": "v", + "start": 11898, + "end": 11899, "loc": { "start": { "line": 682, - "column": 28 + "column": 40 }, "end": { "line": 682, - "column": 32 + "column": 41 } } }, { "type": { - "label": ".", + "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, @@ -88034,70 +88460,45 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null - }, - "start": 11889, - "end": 11890, - "loc": { - "start": { - "line": 682, - "column": 32 - }, - "end": { - "line": 682, - "column": 33 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, "binop": null }, - "value": "max", - "start": 11890, - "end": 11893, + "start": 11899, + "end": 11900, "loc": { "start": { "line": 682, - "column": 33 + "column": 41 }, "end": { "line": 682, - "column": 36 + "column": 42 } } }, { "type": { - "label": "(", + "label": "/", "beforeExpr": true, - "startsExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": 10, + "updateContext": null }, - "start": 11893, - "end": 11894, + "value": "/", + "start": 11901, + "end": 11902, "loc": { "start": { "line": 682, - "column": 36 + "column": 43 }, "end": { "line": 682, - "column": 37 + "column": 44 } } }, @@ -88113,17 +88514,17 @@ "postfix": false, "binop": null }, - "value": "theta", - "start": 11894, - "end": 11899, + "value": "denominator", + "start": 11903, + "end": 11914, "loc": { "start": { "line": 682, - "column": 37 + "column": 45 }, "end": { "line": 682, - "column": 42 + "column": 56 } } }, @@ -88140,16 +88541,16 @@ "binop": null, "updateContext": null }, - "start": 11899, - "end": 11900, + "start": 11914, + "end": 11915, "loc": { "start": { "line": 682, - "column": 42 + "column": 56 }, "end": { "line": 682, - "column": 43 + "column": 57 } } }, @@ -88167,16 +88568,16 @@ "updateContext": null }, "value": "-", - "start": 11901, - "end": 11902, + "start": 11916, + "end": 11917, "loc": { "start": { "line": 682, - "column": 44 + "column": 58 }, "end": { "line": 682, - "column": 45 + "column": 59 } } }, @@ -88194,16 +88595,16 @@ "updateContext": null }, "value": 1, - "start": 11902, - "end": 11903, + "start": 11917, + "end": 11918, "loc": { "start": { "line": 682, - "column": 45 + "column": 59 }, "end": { "line": 682, - "column": 46 + "column": 60 } } }, @@ -88219,16 +88620,16 @@ "postfix": false, "binop": null }, - "start": 11903, - "end": 11904, + "start": 11918, + "end": 11919, "loc": { "start": { "line": 682, - "column": 46 + "column": 60 }, "end": { "line": 682, - "column": 47 + "column": 61 } } }, @@ -88245,16 +88646,16 @@ "binop": null, "updateContext": null }, - "start": 11904, - "end": 11905, + "start": 11919, + "end": 11920, "loc": { "start": { "line": 682, - "column": 47 + "column": 61 }, "end": { "line": 682, - "column": 48 + "column": 62 } } }, @@ -88272,16 +88673,16 @@ "updateContext": null }, "value": 1, - "start": 11906, - "end": 11907, + "start": 11921, + "end": 11922, "loc": { "start": { "line": 682, - "column": 49 + "column": 63 }, "end": { "line": 682, - "column": 50 + "column": 64 } } }, @@ -88297,16 +88698,16 @@ "postfix": false, "binop": null }, - "start": 11907, - "end": 11908, + "start": 11922, + "end": 11923, "loc": { "start": { "line": 682, - "column": 50 + "column": 64 }, "end": { "line": 682, - "column": 51 + "column": 65 } } }, @@ -88322,16 +88723,16 @@ "postfix": false, "binop": null }, - "start": 11908, - "end": 11909, + "start": 11923, + "end": 11924, "loc": { "start": { "line": 682, - "column": 51 + "column": 65 }, "end": { "line": 682, - "column": 52 + "column": 66 } } }, @@ -88348,16 +88749,16 @@ "binop": null, "updateContext": null }, - "start": 11909, - "end": 11910, + "start": 11924, + "end": 11925, "loc": { "start": { "line": 682, - "column": 52 + "column": 66 }, "end": { "line": 682, - "column": 53 + "column": 67 } } }, @@ -88373,8 +88774,8 @@ "postfix": false, "binop": null }, - "start": 11915, - "end": 11916, + "start": 11930, + "end": 11931, "loc": { "start": { "line": 684, @@ -88389,8 +88790,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the Manhattan length of this vector.\r\n\t *\r\n\t * @return {Number} The length.\r\n\t ", - "start": 11921, - "end": 12022, + "start": 11936, + "end": 12037, "loc": { "start": { "line": 686, @@ -88415,8 +88816,8 @@ "binop": null }, "value": "manhattanLength", - "start": 12027, - "end": 12042, + "start": 12042, + "end": 12057, "loc": { "start": { "line": 692, @@ -88440,8 +88841,8 @@ "postfix": false, "binop": null }, - "start": 12042, - "end": 12043, + "start": 12057, + "end": 12058, "loc": { "start": { "line": 692, @@ -88465,8 +88866,8 @@ "postfix": false, "binop": null }, - "start": 12043, - "end": 12044, + "start": 12058, + "end": 12059, "loc": { "start": { "line": 692, @@ -88490,8 +88891,8 @@ "postfix": false, "binop": null }, - "start": 12045, - "end": 12046, + "start": 12060, + "end": 12061, "loc": { "start": { "line": 692, @@ -88518,8 +88919,8 @@ "updateContext": null }, "value": "return", - "start": 12052, - "end": 12058, + "start": 12067, + "end": 12073, "loc": { "start": { "line": 694, @@ -88544,8 +88945,8 @@ "binop": null }, "value": "Math", - "start": 12059, - "end": 12063, + "start": 12074, + "end": 12078, "loc": { "start": { "line": 694, @@ -88570,8 +88971,8 @@ "binop": null, "updateContext": null }, - "start": 12063, - "end": 12064, + "start": 12078, + "end": 12079, "loc": { "start": { "line": 694, @@ -88596,8 +88997,8 @@ "binop": null }, "value": "abs", - "start": 12064, - "end": 12067, + "start": 12079, + "end": 12082, "loc": { "start": { "line": 694, @@ -88621,8 +89022,8 @@ "postfix": false, "binop": null }, - "start": 12067, - "end": 12068, + "start": 12082, + "end": 12083, "loc": { "start": { "line": 694, @@ -88649,8 +89050,8 @@ "updateContext": null }, "value": "this", - "start": 12068, - "end": 12072, + "start": 12083, + "end": 12087, "loc": { "start": { "line": 694, @@ -88675,8 +89076,8 @@ "binop": null, "updateContext": null }, - "start": 12072, - "end": 12073, + "start": 12087, + "end": 12088, "loc": { "start": { "line": 694, @@ -88701,8 +89102,8 @@ "binop": null }, "value": "x", - "start": 12073, - "end": 12074, + "start": 12088, + "end": 12089, "loc": { "start": { "line": 694, @@ -88726,8 +89127,8 @@ "postfix": false, "binop": null }, - "start": 12074, - "end": 12075, + "start": 12089, + "end": 12090, "loc": { "start": { "line": 694, @@ -88753,8 +89154,8 @@ "updateContext": null }, "value": "+", - "start": 12076, - "end": 12077, + "start": 12091, + "end": 12092, "loc": { "start": { "line": 694, @@ -88779,8 +89180,8 @@ "binop": null }, "value": "Math", - "start": 12078, - "end": 12082, + "start": 12093, + "end": 12097, "loc": { "start": { "line": 694, @@ -88805,8 +89206,8 @@ "binop": null, "updateContext": null }, - "start": 12082, - "end": 12083, + "start": 12097, + "end": 12098, "loc": { "start": { "line": 694, @@ -88831,8 +89232,8 @@ "binop": null }, "value": "abs", - "start": 12083, - "end": 12086, + "start": 12098, + "end": 12101, "loc": { "start": { "line": 694, @@ -88856,8 +89257,8 @@ "postfix": false, "binop": null }, - "start": 12086, - "end": 12087, + "start": 12101, + "end": 12102, "loc": { "start": { "line": 694, @@ -88884,8 +89285,8 @@ "updateContext": null }, "value": "this", - "start": 12087, - "end": 12091, + "start": 12102, + "end": 12106, "loc": { "start": { "line": 694, @@ -88910,8 +89311,8 @@ "binop": null, "updateContext": null }, - "start": 12091, - "end": 12092, + "start": 12106, + "end": 12107, "loc": { "start": { "line": 694, @@ -88936,8 +89337,8 @@ "binop": null }, "value": "y", - "start": 12092, - "end": 12093, + "start": 12107, + "end": 12108, "loc": { "start": { "line": 694, @@ -88961,8 +89362,8 @@ "postfix": false, "binop": null }, - "start": 12093, - "end": 12094, + "start": 12108, + "end": 12109, "loc": { "start": { "line": 694, @@ -88988,8 +89389,8 @@ "updateContext": null }, "value": "+", - "start": 12095, - "end": 12096, + "start": 12110, + "end": 12111, "loc": { "start": { "line": 694, @@ -89014,8 +89415,8 @@ "binop": null }, "value": "Math", - "start": 12097, - "end": 12101, + "start": 12112, + "end": 12116, "loc": { "start": { "line": 694, @@ -89040,8 +89441,8 @@ "binop": null, "updateContext": null }, - "start": 12101, - "end": 12102, + "start": 12116, + "end": 12117, "loc": { "start": { "line": 694, @@ -89066,8 +89467,8 @@ "binop": null }, "value": "abs", - "start": 12102, - "end": 12105, + "start": 12117, + "end": 12120, "loc": { "start": { "line": 694, @@ -89091,8 +89492,8 @@ "postfix": false, "binop": null }, - "start": 12105, - "end": 12106, + "start": 12120, + "end": 12121, "loc": { "start": { "line": 694, @@ -89119,8 +89520,8 @@ "updateContext": null }, "value": "this", - "start": 12106, - "end": 12110, + "start": 12121, + "end": 12125, "loc": { "start": { "line": 694, @@ -89145,8 +89546,8 @@ "binop": null, "updateContext": null }, - "start": 12110, - "end": 12111, + "start": 12125, + "end": 12126, "loc": { "start": { "line": 694, @@ -89171,8 +89572,8 @@ "binop": null }, "value": "z", - "start": 12111, - "end": 12112, + "start": 12126, + "end": 12127, "loc": { "start": { "line": 694, @@ -89196,8 +89597,8 @@ "postfix": false, "binop": null }, - "start": 12112, - "end": 12113, + "start": 12127, + "end": 12128, "loc": { "start": { "line": 694, @@ -89222,8 +89623,8 @@ "binop": null, "updateContext": null }, - "start": 12113, - "end": 12114, + "start": 12128, + "end": 12129, "loc": { "start": { "line": 694, @@ -89247,8 +89648,8 @@ "postfix": false, "binop": null }, - "start": 12119, - "end": 12120, + "start": 12134, + "end": 12135, "loc": { "start": { "line": 696, @@ -89263,8 +89664,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the squared length of this vector.\r\n\t *\r\n\t * @return {Number} The squared length.\r\n\t ", - "start": 12125, - "end": 12232, + "start": 12140, + "end": 12247, "loc": { "start": { "line": 698, @@ -89289,8 +89690,8 @@ "binop": null }, "value": "lengthSquared", - "start": 12237, - "end": 12250, + "start": 12252, + "end": 12265, "loc": { "start": { "line": 704, @@ -89314,8 +89715,8 @@ "postfix": false, "binop": null }, - "start": 12250, - "end": 12251, + "start": 12265, + "end": 12266, "loc": { "start": { "line": 704, @@ -89339,8 +89740,8 @@ "postfix": false, "binop": null }, - "start": 12251, - "end": 12252, + "start": 12266, + "end": 12267, "loc": { "start": { "line": 704, @@ -89364,8 +89765,8 @@ "postfix": false, "binop": null }, - "start": 12253, - "end": 12254, + "start": 12268, + "end": 12269, "loc": { "start": { "line": 704, @@ -89392,8 +89793,8 @@ "updateContext": null }, "value": "return", - "start": 12260, - "end": 12266, + "start": 12275, + "end": 12281, "loc": { "start": { "line": 706, @@ -89420,8 +89821,8 @@ "updateContext": null }, "value": "this", - "start": 12267, - "end": 12271, + "start": 12282, + "end": 12286, "loc": { "start": { "line": 706, @@ -89446,8 +89847,8 @@ "binop": null, "updateContext": null }, - "start": 12271, - "end": 12272, + "start": 12286, + "end": 12287, "loc": { "start": { "line": 706, @@ -89472,8 +89873,8 @@ "binop": null }, "value": "x", - "start": 12272, - "end": 12273, + "start": 12287, + "end": 12288, "loc": { "start": { "line": 706, @@ -89499,8 +89900,8 @@ "updateContext": null }, "value": "*", - "start": 12274, - "end": 12275, + "start": 12289, + "end": 12290, "loc": { "start": { "line": 706, @@ -89527,8 +89928,8 @@ "updateContext": null }, "value": "this", - "start": 12276, - "end": 12280, + "start": 12291, + "end": 12295, "loc": { "start": { "line": 706, @@ -89553,8 +89954,8 @@ "binop": null, "updateContext": null }, - "start": 12280, - "end": 12281, + "start": 12295, + "end": 12296, "loc": { "start": { "line": 706, @@ -89579,8 +89980,8 @@ "binop": null }, "value": "x", - "start": 12281, - "end": 12282, + "start": 12296, + "end": 12297, "loc": { "start": { "line": 706, @@ -89606,8 +90007,8 @@ "updateContext": null }, "value": "+", - "start": 12283, - "end": 12284, + "start": 12298, + "end": 12299, "loc": { "start": { "line": 706, @@ -89634,8 +90035,8 @@ "updateContext": null }, "value": "this", - "start": 12285, - "end": 12289, + "start": 12300, + "end": 12304, "loc": { "start": { "line": 706, @@ -89660,8 +90061,8 @@ "binop": null, "updateContext": null }, - "start": 12289, - "end": 12290, + "start": 12304, + "end": 12305, "loc": { "start": { "line": 706, @@ -89686,8 +90087,8 @@ "binop": null }, "value": "y", - "start": 12290, - "end": 12291, + "start": 12305, + "end": 12306, "loc": { "start": { "line": 706, @@ -89713,8 +90114,8 @@ "updateContext": null }, "value": "*", - "start": 12292, - "end": 12293, + "start": 12307, + "end": 12308, "loc": { "start": { "line": 706, @@ -89741,8 +90142,8 @@ "updateContext": null }, "value": "this", - "start": 12294, - "end": 12298, + "start": 12309, + "end": 12313, "loc": { "start": { "line": 706, @@ -89767,8 +90168,8 @@ "binop": null, "updateContext": null }, - "start": 12298, - "end": 12299, + "start": 12313, + "end": 12314, "loc": { "start": { "line": 706, @@ -89793,8 +90194,8 @@ "binop": null }, "value": "y", - "start": 12299, - "end": 12300, + "start": 12314, + "end": 12315, "loc": { "start": { "line": 706, @@ -89820,8 +90221,8 @@ "updateContext": null }, "value": "+", - "start": 12301, - "end": 12302, + "start": 12316, + "end": 12317, "loc": { "start": { "line": 706, @@ -89848,8 +90249,8 @@ "updateContext": null }, "value": "this", - "start": 12303, - "end": 12307, + "start": 12318, + "end": 12322, "loc": { "start": { "line": 706, @@ -89874,8 +90275,8 @@ "binop": null, "updateContext": null }, - "start": 12307, - "end": 12308, + "start": 12322, + "end": 12323, "loc": { "start": { "line": 706, @@ -89900,8 +90301,8 @@ "binop": null }, "value": "z", - "start": 12308, - "end": 12309, + "start": 12323, + "end": 12324, "loc": { "start": { "line": 706, @@ -89927,8 +90328,8 @@ "updateContext": null }, "value": "*", - "start": 12310, - "end": 12311, + "start": 12325, + "end": 12326, "loc": { "start": { "line": 706, @@ -89955,8 +90356,8 @@ "updateContext": null }, "value": "this", - "start": 12312, - "end": 12316, + "start": 12327, + "end": 12331, "loc": { "start": { "line": 706, @@ -89981,8 +90382,8 @@ "binop": null, "updateContext": null }, - "start": 12316, - "end": 12317, + "start": 12331, + "end": 12332, "loc": { "start": { "line": 706, @@ -90007,8 +90408,8 @@ "binop": null }, "value": "z", - "start": 12317, - "end": 12318, + "start": 12332, + "end": 12333, "loc": { "start": { "line": 706, @@ -90033,8 +90434,8 @@ "binop": null, "updateContext": null }, - "start": 12318, - "end": 12319, + "start": 12333, + "end": 12334, "loc": { "start": { "line": 706, @@ -90058,8 +90459,8 @@ "postfix": false, "binop": null }, - "start": 12324, - "end": 12325, + "start": 12339, + "end": 12340, "loc": { "start": { "line": 708, @@ -90074,8 +90475,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the length of this vector.\r\n\t *\r\n\t * @return {Number} The length.\r\n\t ", - "start": 12330, - "end": 12421, + "start": 12345, + "end": 12436, "loc": { "start": { "line": 710, @@ -90100,8 +90501,8 @@ "binop": null }, "value": "length", - "start": 12426, - "end": 12432, + "start": 12441, + "end": 12447, "loc": { "start": { "line": 716, @@ -90125,8 +90526,8 @@ "postfix": false, "binop": null }, - "start": 12432, - "end": 12433, + "start": 12447, + "end": 12448, "loc": { "start": { "line": 716, @@ -90150,8 +90551,8 @@ "postfix": false, "binop": null }, - "start": 12433, - "end": 12434, + "start": 12448, + "end": 12449, "loc": { "start": { "line": 716, @@ -90175,8 +90576,8 @@ "postfix": false, "binop": null }, - "start": 12435, - "end": 12436, + "start": 12450, + "end": 12451, "loc": { "start": { "line": 716, @@ -90203,8 +90604,8 @@ "updateContext": null }, "value": "return", - "start": 12442, - "end": 12448, + "start": 12457, + "end": 12463, "loc": { "start": { "line": 718, @@ -90229,8 +90630,8 @@ "binop": null }, "value": "Math", - "start": 12449, - "end": 12453, + "start": 12464, + "end": 12468, "loc": { "start": { "line": 718, @@ -90255,8 +90656,8 @@ "binop": null, "updateContext": null }, - "start": 12453, - "end": 12454, + "start": 12468, + "end": 12469, "loc": { "start": { "line": 718, @@ -90281,8 +90682,8 @@ "binop": null }, "value": "sqrt", - "start": 12454, - "end": 12458, + "start": 12469, + "end": 12473, "loc": { "start": { "line": 718, @@ -90306,8 +90707,8 @@ "postfix": false, "binop": null }, - "start": 12458, - "end": 12459, + "start": 12473, + "end": 12474, "loc": { "start": { "line": 718, @@ -90334,8 +90735,8 @@ "updateContext": null }, "value": "this", - "start": 12459, - "end": 12463, + "start": 12474, + "end": 12478, "loc": { "start": { "line": 718, @@ -90360,8 +90761,8 @@ "binop": null, "updateContext": null }, - "start": 12463, - "end": 12464, + "start": 12478, + "end": 12479, "loc": { "start": { "line": 718, @@ -90386,8 +90787,8 @@ "binop": null }, "value": "x", - "start": 12464, - "end": 12465, + "start": 12479, + "end": 12480, "loc": { "start": { "line": 718, @@ -90413,8 +90814,8 @@ "updateContext": null }, "value": "*", - "start": 12466, - "end": 12467, + "start": 12481, + "end": 12482, "loc": { "start": { "line": 718, @@ -90441,8 +90842,8 @@ "updateContext": null }, "value": "this", - "start": 12468, - "end": 12472, + "start": 12483, + "end": 12487, "loc": { "start": { "line": 718, @@ -90467,8 +90868,8 @@ "binop": null, "updateContext": null }, - "start": 12472, - "end": 12473, + "start": 12487, + "end": 12488, "loc": { "start": { "line": 718, @@ -90493,8 +90894,8 @@ "binop": null }, "value": "x", - "start": 12473, - "end": 12474, + "start": 12488, + "end": 12489, "loc": { "start": { "line": 718, @@ -90520,8 +90921,8 @@ "updateContext": null }, "value": "+", - "start": 12475, - "end": 12476, + "start": 12490, + "end": 12491, "loc": { "start": { "line": 718, @@ -90548,8 +90949,8 @@ "updateContext": null }, "value": "this", - "start": 12477, - "end": 12481, + "start": 12492, + "end": 12496, "loc": { "start": { "line": 718, @@ -90574,8 +90975,8 @@ "binop": null, "updateContext": null }, - "start": 12481, - "end": 12482, + "start": 12496, + "end": 12497, "loc": { "start": { "line": 718, @@ -90600,8 +91001,8 @@ "binop": null }, "value": "y", - "start": 12482, - "end": 12483, + "start": 12497, + "end": 12498, "loc": { "start": { "line": 718, @@ -90627,8 +91028,8 @@ "updateContext": null }, "value": "*", - "start": 12484, - "end": 12485, + "start": 12499, + "end": 12500, "loc": { "start": { "line": 718, @@ -90655,8 +91056,8 @@ "updateContext": null }, "value": "this", - "start": 12486, - "end": 12490, + "start": 12501, + "end": 12505, "loc": { "start": { "line": 718, @@ -90681,8 +91082,8 @@ "binop": null, "updateContext": null }, - "start": 12490, - "end": 12491, + "start": 12505, + "end": 12506, "loc": { "start": { "line": 718, @@ -90707,8 +91108,8 @@ "binop": null }, "value": "y", - "start": 12491, - "end": 12492, + "start": 12506, + "end": 12507, "loc": { "start": { "line": 718, @@ -90734,8 +91135,8 @@ "updateContext": null }, "value": "+", - "start": 12493, - "end": 12494, + "start": 12508, + "end": 12509, "loc": { "start": { "line": 718, @@ -90762,8 +91163,8 @@ "updateContext": null }, "value": "this", - "start": 12495, - "end": 12499, + "start": 12510, + "end": 12514, "loc": { "start": { "line": 718, @@ -90788,8 +91189,8 @@ "binop": null, "updateContext": null }, - "start": 12499, - "end": 12500, + "start": 12514, + "end": 12515, "loc": { "start": { "line": 718, @@ -90814,8 +91215,8 @@ "binop": null }, "value": "z", - "start": 12500, - "end": 12501, + "start": 12515, + "end": 12516, "loc": { "start": { "line": 718, @@ -90841,8 +91242,8 @@ "updateContext": null }, "value": "*", - "start": 12502, - "end": 12503, + "start": 12517, + "end": 12518, "loc": { "start": { "line": 718, @@ -90869,8 +91270,8 @@ "updateContext": null }, "value": "this", - "start": 12504, - "end": 12508, + "start": 12519, + "end": 12523, "loc": { "start": { "line": 718, @@ -90895,8 +91296,8 @@ "binop": null, "updateContext": null }, - "start": 12508, - "end": 12509, + "start": 12523, + "end": 12524, "loc": { "start": { "line": 718, @@ -90921,8 +91322,8 @@ "binop": null }, "value": "z", - "start": 12509, - "end": 12510, + "start": 12524, + "end": 12525, "loc": { "start": { "line": 718, @@ -90946,8 +91347,8 @@ "postfix": false, "binop": null }, - "start": 12510, - "end": 12511, + "start": 12525, + "end": 12526, "loc": { "start": { "line": 718, @@ -90972,8 +91373,8 @@ "binop": null, "updateContext": null }, - "start": 12511, - "end": 12512, + "start": 12526, + "end": 12527, "loc": { "start": { "line": 718, @@ -90997,8 +91398,8 @@ "postfix": false, "binop": null }, - "start": 12517, - "end": 12518, + "start": 12532, + "end": 12533, "loc": { "start": { "line": 720, @@ -91013,8 +91414,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the Manhattan distance to a given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The distance.\r\n\t ", - "start": 12523, - "end": 12667, + "start": 12538, + "end": 12682, "loc": { "start": { "line": 722, @@ -91039,8 +91440,8 @@ "binop": null }, "value": "manhattanDistanceTo", - "start": 12672, - "end": 12691, + "start": 12687, + "end": 12706, "loc": { "start": { "line": 729, @@ -91064,8 +91465,8 @@ "postfix": false, "binop": null }, - "start": 12691, - "end": 12692, + "start": 12706, + "end": 12707, "loc": { "start": { "line": 729, @@ -91090,8 +91491,8 @@ "binop": null }, "value": "v", - "start": 12692, - "end": 12693, + "start": 12707, + "end": 12708, "loc": { "start": { "line": 729, @@ -91115,8 +91516,8 @@ "postfix": false, "binop": null }, - "start": 12693, - "end": 12694, + "start": 12708, + "end": 12709, "loc": { "start": { "line": 729, @@ -91140,8 +91541,8 @@ "postfix": false, "binop": null }, - "start": 12695, - "end": 12696, + "start": 12710, + "end": 12711, "loc": { "start": { "line": 729, @@ -91168,8 +91569,8 @@ "updateContext": null }, "value": "return", - "start": 12702, - "end": 12708, + "start": 12717, + "end": 12723, "loc": { "start": { "line": 731, @@ -91194,8 +91595,8 @@ "binop": null }, "value": "Math", - "start": 12709, - "end": 12713, + "start": 12724, + "end": 12728, "loc": { "start": { "line": 731, @@ -91220,8 +91621,8 @@ "binop": null, "updateContext": null }, - "start": 12713, - "end": 12714, + "start": 12728, + "end": 12729, "loc": { "start": { "line": 731, @@ -91246,8 +91647,8 @@ "binop": null }, "value": "abs", - "start": 12714, - "end": 12717, + "start": 12729, + "end": 12732, "loc": { "start": { "line": 731, @@ -91271,8 +91672,8 @@ "postfix": false, "binop": null }, - "start": 12717, - "end": 12718, + "start": 12732, + "end": 12733, "loc": { "start": { "line": 731, @@ -91299,8 +91700,8 @@ "updateContext": null }, "value": "this", - "start": 12718, - "end": 12722, + "start": 12733, + "end": 12737, "loc": { "start": { "line": 731, @@ -91325,8 +91726,8 @@ "binop": null, "updateContext": null }, - "start": 12722, - "end": 12723, + "start": 12737, + "end": 12738, "loc": { "start": { "line": 731, @@ -91351,8 +91752,8 @@ "binop": null }, "value": "x", - "start": 12723, - "end": 12724, + "start": 12738, + "end": 12739, "loc": { "start": { "line": 731, @@ -91378,8 +91779,8 @@ "updateContext": null }, "value": "-", - "start": 12725, - "end": 12726, + "start": 12740, + "end": 12741, "loc": { "start": { "line": 731, @@ -91404,8 +91805,8 @@ "binop": null }, "value": "v", - "start": 12727, - "end": 12728, + "start": 12742, + "end": 12743, "loc": { "start": { "line": 731, @@ -91430,8 +91831,8 @@ "binop": null, "updateContext": null }, - "start": 12728, - "end": 12729, + "start": 12743, + "end": 12744, "loc": { "start": { "line": 731, @@ -91456,8 +91857,8 @@ "binop": null }, "value": "x", - "start": 12729, - "end": 12730, + "start": 12744, + "end": 12745, "loc": { "start": { "line": 731, @@ -91481,8 +91882,8 @@ "postfix": false, "binop": null }, - "start": 12730, - "end": 12731, + "start": 12745, + "end": 12746, "loc": { "start": { "line": 731, @@ -91508,8 +91909,8 @@ "updateContext": null }, "value": "+", - "start": 12732, - "end": 12733, + "start": 12747, + "end": 12748, "loc": { "start": { "line": 731, @@ -91534,8 +91935,8 @@ "binop": null }, "value": "Math", - "start": 12734, - "end": 12738, + "start": 12749, + "end": 12753, "loc": { "start": { "line": 731, @@ -91560,8 +91961,8 @@ "binop": null, "updateContext": null }, - "start": 12738, - "end": 12739, + "start": 12753, + "end": 12754, "loc": { "start": { "line": 731, @@ -91586,8 +91987,8 @@ "binop": null }, "value": "abs", - "start": 12739, - "end": 12742, + "start": 12754, + "end": 12757, "loc": { "start": { "line": 731, @@ -91611,8 +92012,8 @@ "postfix": false, "binop": null }, - "start": 12742, - "end": 12743, + "start": 12757, + "end": 12758, "loc": { "start": { "line": 731, @@ -91639,8 +92040,8 @@ "updateContext": null }, "value": "this", - "start": 12743, - "end": 12747, + "start": 12758, + "end": 12762, "loc": { "start": { "line": 731, @@ -91665,8 +92066,8 @@ "binop": null, "updateContext": null }, - "start": 12747, - "end": 12748, + "start": 12762, + "end": 12763, "loc": { "start": { "line": 731, @@ -91691,8 +92092,8 @@ "binop": null }, "value": "y", - "start": 12748, - "end": 12749, + "start": 12763, + "end": 12764, "loc": { "start": { "line": 731, @@ -91718,8 +92119,8 @@ "updateContext": null }, "value": "-", - "start": 12750, - "end": 12751, + "start": 12765, + "end": 12766, "loc": { "start": { "line": 731, @@ -91744,8 +92145,8 @@ "binop": null }, "value": "v", - "start": 12752, - "end": 12753, + "start": 12767, + "end": 12768, "loc": { "start": { "line": 731, @@ -91770,8 +92171,8 @@ "binop": null, "updateContext": null }, - "start": 12753, - "end": 12754, + "start": 12768, + "end": 12769, "loc": { "start": { "line": 731, @@ -91796,8 +92197,8 @@ "binop": null }, "value": "y", - "start": 12754, - "end": 12755, + "start": 12769, + "end": 12770, "loc": { "start": { "line": 731, @@ -91821,8 +92222,8 @@ "postfix": false, "binop": null }, - "start": 12755, - "end": 12756, + "start": 12770, + "end": 12771, "loc": { "start": { "line": 731, @@ -91848,8 +92249,8 @@ "updateContext": null }, "value": "+", - "start": 12757, - "end": 12758, + "start": 12772, + "end": 12773, "loc": { "start": { "line": 731, @@ -91874,8 +92275,8 @@ "binop": null }, "value": "Math", - "start": 12759, - "end": 12763, + "start": 12774, + "end": 12778, "loc": { "start": { "line": 731, @@ -91900,8 +92301,8 @@ "binop": null, "updateContext": null }, - "start": 12763, - "end": 12764, + "start": 12778, + "end": 12779, "loc": { "start": { "line": 731, @@ -91926,8 +92327,8 @@ "binop": null }, "value": "abs", - "start": 12764, - "end": 12767, + "start": 12779, + "end": 12782, "loc": { "start": { "line": 731, @@ -91951,8 +92352,8 @@ "postfix": false, "binop": null }, - "start": 12767, - "end": 12768, + "start": 12782, + "end": 12783, "loc": { "start": { "line": 731, @@ -91979,8 +92380,8 @@ "updateContext": null }, "value": "this", - "start": 12768, - "end": 12772, + "start": 12783, + "end": 12787, "loc": { "start": { "line": 731, @@ -92005,8 +92406,8 @@ "binop": null, "updateContext": null }, - "start": 12772, - "end": 12773, + "start": 12787, + "end": 12788, "loc": { "start": { "line": 731, @@ -92031,8 +92432,8 @@ "binop": null }, "value": "z", - "start": 12773, - "end": 12774, + "start": 12788, + "end": 12789, "loc": { "start": { "line": 731, @@ -92058,8 +92459,8 @@ "updateContext": null }, "value": "-", - "start": 12775, - "end": 12776, + "start": 12790, + "end": 12791, "loc": { "start": { "line": 731, @@ -92084,8 +92485,8 @@ "binop": null }, "value": "v", - "start": 12777, - "end": 12778, + "start": 12792, + "end": 12793, "loc": { "start": { "line": 731, @@ -92110,8 +92511,8 @@ "binop": null, "updateContext": null }, - "start": 12778, - "end": 12779, + "start": 12793, + "end": 12794, "loc": { "start": { "line": 731, @@ -92136,8 +92537,8 @@ "binop": null }, "value": "z", - "start": 12779, - "end": 12780, + "start": 12794, + "end": 12795, "loc": { "start": { "line": 731, @@ -92161,8 +92562,8 @@ "postfix": false, "binop": null }, - "start": 12780, - "end": 12781, + "start": 12795, + "end": 12796, "loc": { "start": { "line": 731, @@ -92187,8 +92588,8 @@ "binop": null, "updateContext": null }, - "start": 12781, - "end": 12782, + "start": 12796, + "end": 12797, "loc": { "start": { "line": 731, @@ -92212,8 +92613,8 @@ "postfix": false, "binop": null }, - "start": 12787, - "end": 12788, + "start": 12802, + "end": 12803, "loc": { "start": { "line": 733, @@ -92228,8 +92629,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the squared distance to a given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The squared distance.\r\n\t ", - "start": 12793, - "end": 12943, + "start": 12808, + "end": 12958, "loc": { "start": { "line": 735, @@ -92254,8 +92655,8 @@ "binop": null }, "value": "distanceToSquared", - "start": 12948, - "end": 12965, + "start": 12963, + "end": 12980, "loc": { "start": { "line": 742, @@ -92279,8 +92680,8 @@ "postfix": false, "binop": null }, - "start": 12965, - "end": 12966, + "start": 12980, + "end": 12981, "loc": { "start": { "line": 742, @@ -92305,8 +92706,8 @@ "binop": null }, "value": "v", - "start": 12966, - "end": 12967, + "start": 12981, + "end": 12982, "loc": { "start": { "line": 742, @@ -92330,8 +92731,8 @@ "postfix": false, "binop": null }, - "start": 12967, - "end": 12968, + "start": 12982, + "end": 12983, "loc": { "start": { "line": 742, @@ -92355,8 +92756,8 @@ "postfix": false, "binop": null }, - "start": 12969, - "end": 12970, + "start": 12984, + "end": 12985, "loc": { "start": { "line": 742, @@ -92383,8 +92784,8 @@ "updateContext": null }, "value": "const", - "start": 12976, - "end": 12981, + "start": 12991, + "end": 12996, "loc": { "start": { "line": 744, @@ -92409,8 +92810,8 @@ "binop": null }, "value": "dx", - "start": 12982, - "end": 12984, + "start": 12997, + "end": 12999, "loc": { "start": { "line": 744, @@ -92436,8 +92837,8 @@ "updateContext": null }, "value": "=", - "start": 12985, - "end": 12986, + "start": 13000, + "end": 13001, "loc": { "start": { "line": 744, @@ -92464,8 +92865,8 @@ "updateContext": null }, "value": "this", - "start": 12987, - "end": 12991, + "start": 13002, + "end": 13006, "loc": { "start": { "line": 744, @@ -92490,8 +92891,8 @@ "binop": null, "updateContext": null }, - "start": 12991, - "end": 12992, + "start": 13006, + "end": 13007, "loc": { "start": { "line": 744, @@ -92516,8 +92917,8 @@ "binop": null }, "value": "x", - "start": 12992, - "end": 12993, + "start": 13007, + "end": 13008, "loc": { "start": { "line": 744, @@ -92543,8 +92944,8 @@ "updateContext": null }, "value": "-", - "start": 12994, - "end": 12995, + "start": 13009, + "end": 13010, "loc": { "start": { "line": 744, @@ -92569,8 +92970,8 @@ "binop": null }, "value": "v", - "start": 12996, - "end": 12997, + "start": 13011, + "end": 13012, "loc": { "start": { "line": 744, @@ -92595,8 +92996,8 @@ "binop": null, "updateContext": null }, - "start": 12997, - "end": 12998, + "start": 13012, + "end": 13013, "loc": { "start": { "line": 744, @@ -92621,8 +93022,8 @@ "binop": null }, "value": "x", - "start": 12998, - "end": 12999, + "start": 13013, + "end": 13014, "loc": { "start": { "line": 744, @@ -92647,8 +93048,8 @@ "binop": null, "updateContext": null }, - "start": 12999, - "end": 13000, + "start": 13014, + "end": 13015, "loc": { "start": { "line": 744, @@ -92675,8 +93076,8 @@ "updateContext": null }, "value": "const", - "start": 13004, - "end": 13009, + "start": 13019, + "end": 13024, "loc": { "start": { "line": 745, @@ -92701,8 +93102,8 @@ "binop": null }, "value": "dy", - "start": 13010, - "end": 13012, + "start": 13025, + "end": 13027, "loc": { "start": { "line": 745, @@ -92728,8 +93129,8 @@ "updateContext": null }, "value": "=", - "start": 13013, - "end": 13014, + "start": 13028, + "end": 13029, "loc": { "start": { "line": 745, @@ -92756,8 +93157,8 @@ "updateContext": null }, "value": "this", - "start": 13015, - "end": 13019, + "start": 13030, + "end": 13034, "loc": { "start": { "line": 745, @@ -92782,8 +93183,8 @@ "binop": null, "updateContext": null }, - "start": 13019, - "end": 13020, + "start": 13034, + "end": 13035, "loc": { "start": { "line": 745, @@ -92808,8 +93209,8 @@ "binop": null }, "value": "y", - "start": 13020, - "end": 13021, + "start": 13035, + "end": 13036, "loc": { "start": { "line": 745, @@ -92835,8 +93236,8 @@ "updateContext": null }, "value": "-", - "start": 13022, - "end": 13023, + "start": 13037, + "end": 13038, "loc": { "start": { "line": 745, @@ -92861,8 +93262,8 @@ "binop": null }, "value": "v", - "start": 13024, - "end": 13025, + "start": 13039, + "end": 13040, "loc": { "start": { "line": 745, @@ -92887,8 +93288,8 @@ "binop": null, "updateContext": null }, - "start": 13025, - "end": 13026, + "start": 13040, + "end": 13041, "loc": { "start": { "line": 745, @@ -92913,8 +93314,8 @@ "binop": null }, "value": "y", - "start": 13026, - "end": 13027, + "start": 13041, + "end": 13042, "loc": { "start": { "line": 745, @@ -92939,8 +93340,8 @@ "binop": null, "updateContext": null }, - "start": 13027, - "end": 13028, + "start": 13042, + "end": 13043, "loc": { "start": { "line": 745, @@ -92967,8 +93368,8 @@ "updateContext": null }, "value": "const", - "start": 13032, - "end": 13037, + "start": 13047, + "end": 13052, "loc": { "start": { "line": 746, @@ -92993,8 +93394,8 @@ "binop": null }, "value": "dz", - "start": 13038, - "end": 13040, + "start": 13053, + "end": 13055, "loc": { "start": { "line": 746, @@ -93020,8 +93421,8 @@ "updateContext": null }, "value": "=", - "start": 13041, - "end": 13042, + "start": 13056, + "end": 13057, "loc": { "start": { "line": 746, @@ -93048,8 +93449,8 @@ "updateContext": null }, "value": "this", - "start": 13043, - "end": 13047, + "start": 13058, + "end": 13062, "loc": { "start": { "line": 746, @@ -93074,8 +93475,8 @@ "binop": null, "updateContext": null }, - "start": 13047, - "end": 13048, + "start": 13062, + "end": 13063, "loc": { "start": { "line": 746, @@ -93100,8 +93501,8 @@ "binop": null }, "value": "z", - "start": 13048, - "end": 13049, + "start": 13063, + "end": 13064, "loc": { "start": { "line": 746, @@ -93127,8 +93528,8 @@ "updateContext": null }, "value": "-", - "start": 13050, - "end": 13051, + "start": 13065, + "end": 13066, "loc": { "start": { "line": 746, @@ -93153,8 +93554,8 @@ "binop": null }, "value": "v", - "start": 13052, - "end": 13053, + "start": 13067, + "end": 13068, "loc": { "start": { "line": 746, @@ -93179,8 +93580,8 @@ "binop": null, "updateContext": null }, - "start": 13053, - "end": 13054, + "start": 13068, + "end": 13069, "loc": { "start": { "line": 746, @@ -93205,8 +93606,8 @@ "binop": null }, "value": "z", - "start": 13054, - "end": 13055, + "start": 13069, + "end": 13070, "loc": { "start": { "line": 746, @@ -93231,8 +93632,8 @@ "binop": null, "updateContext": null }, - "start": 13055, - "end": 13056, + "start": 13070, + "end": 13071, "loc": { "start": { "line": 746, @@ -93259,8 +93660,8 @@ "updateContext": null }, "value": "return", - "start": 13062, - "end": 13068, + "start": 13077, + "end": 13083, "loc": { "start": { "line": 748, @@ -93285,8 +93686,8 @@ "binop": null }, "value": "dx", - "start": 13069, - "end": 13071, + "start": 13084, + "end": 13086, "loc": { "start": { "line": 748, @@ -93312,8 +93713,8 @@ "updateContext": null }, "value": "*", - "start": 13072, - "end": 13073, + "start": 13087, + "end": 13088, "loc": { "start": { "line": 748, @@ -93338,8 +93739,8 @@ "binop": null }, "value": "dx", - "start": 13074, - "end": 13076, + "start": 13089, + "end": 13091, "loc": { "start": { "line": 748, @@ -93365,8 +93766,8 @@ "updateContext": null }, "value": "+", - "start": 13077, - "end": 13078, + "start": 13092, + "end": 13093, "loc": { "start": { "line": 748, @@ -93391,8 +93792,8 @@ "binop": null }, "value": "dy", - "start": 13079, - "end": 13081, + "start": 13094, + "end": 13096, "loc": { "start": { "line": 748, @@ -93418,8 +93819,8 @@ "updateContext": null }, "value": "*", - "start": 13082, - "end": 13083, + "start": 13097, + "end": 13098, "loc": { "start": { "line": 748, @@ -93444,8 +93845,8 @@ "binop": null }, "value": "dy", - "start": 13084, - "end": 13086, + "start": 13099, + "end": 13101, "loc": { "start": { "line": 748, @@ -93471,8 +93872,8 @@ "updateContext": null }, "value": "+", - "start": 13087, - "end": 13088, + "start": 13102, + "end": 13103, "loc": { "start": { "line": 748, @@ -93497,8 +93898,8 @@ "binop": null }, "value": "dz", - "start": 13089, - "end": 13091, + "start": 13104, + "end": 13106, "loc": { "start": { "line": 748, @@ -93524,8 +93925,8 @@ "updateContext": null }, "value": "*", - "start": 13092, - "end": 13093, + "start": 13107, + "end": 13108, "loc": { "start": { "line": 748, @@ -93550,8 +93951,8 @@ "binop": null }, "value": "dz", - "start": 13094, - "end": 13096, + "start": 13109, + "end": 13111, "loc": { "start": { "line": 748, @@ -93576,8 +93977,8 @@ "binop": null, "updateContext": null }, - "start": 13096, - "end": 13097, + "start": 13111, + "end": 13112, "loc": { "start": { "line": 748, @@ -93601,8 +94002,8 @@ "postfix": false, "binop": null }, - "start": 13102, - "end": 13103, + "start": 13117, + "end": 13118, "loc": { "start": { "line": 750, @@ -93617,8 +94018,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Calculates the distance to a given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The distance.\r\n\t ", - "start": 13108, - "end": 13242, + "start": 13123, + "end": 13257, "loc": { "start": { "line": 752, @@ -93643,8 +94044,8 @@ "binop": null }, "value": "distanceTo", - "start": 13247, - "end": 13257, + "start": 13262, + "end": 13272, "loc": { "start": { "line": 759, @@ -93668,8 +94069,8 @@ "postfix": false, "binop": null }, - "start": 13257, - "end": 13258, + "start": 13272, + "end": 13273, "loc": { "start": { "line": 759, @@ -93694,8 +94095,8 @@ "binop": null }, "value": "v", - "start": 13258, - "end": 13259, + "start": 13273, + "end": 13274, "loc": { "start": { "line": 759, @@ -93719,8 +94120,8 @@ "postfix": false, "binop": null }, - "start": 13259, - "end": 13260, + "start": 13274, + "end": 13275, "loc": { "start": { "line": 759, @@ -93744,8 +94145,8 @@ "postfix": false, "binop": null }, - "start": 13261, - "end": 13262, + "start": 13276, + "end": 13277, "loc": { "start": { "line": 759, @@ -93772,8 +94173,8 @@ "updateContext": null }, "value": "return", - "start": 13268, - "end": 13274, + "start": 13283, + "end": 13289, "loc": { "start": { "line": 761, @@ -93798,8 +94199,8 @@ "binop": null }, "value": "Math", - "start": 13275, - "end": 13279, + "start": 13290, + "end": 13294, "loc": { "start": { "line": 761, @@ -93824,8 +94225,8 @@ "binop": null, "updateContext": null }, - "start": 13279, - "end": 13280, + "start": 13294, + "end": 13295, "loc": { "start": { "line": 761, @@ -93850,8 +94251,8 @@ "binop": null }, "value": "sqrt", - "start": 13280, - "end": 13284, + "start": 13295, + "end": 13299, "loc": { "start": { "line": 761, @@ -93875,8 +94276,8 @@ "postfix": false, "binop": null }, - "start": 13284, - "end": 13285, + "start": 13299, + "end": 13300, "loc": { "start": { "line": 761, @@ -93903,8 +94304,8 @@ "updateContext": null }, "value": "this", - "start": 13285, - "end": 13289, + "start": 13300, + "end": 13304, "loc": { "start": { "line": 761, @@ -93929,8 +94330,8 @@ "binop": null, "updateContext": null }, - "start": 13289, - "end": 13290, + "start": 13304, + "end": 13305, "loc": { "start": { "line": 761, @@ -93955,8 +94356,8 @@ "binop": null }, "value": "distanceToSquared", - "start": 13290, - "end": 13307, + "start": 13305, + "end": 13322, "loc": { "start": { "line": 761, @@ -93980,8 +94381,8 @@ "postfix": false, "binop": null }, - "start": 13307, - "end": 13308, + "start": 13322, + "end": 13323, "loc": { "start": { "line": 761, @@ -94006,8 +94407,8 @@ "binop": null }, "value": "v", - "start": 13308, - "end": 13309, + "start": 13323, + "end": 13324, "loc": { "start": { "line": 761, @@ -94031,8 +94432,8 @@ "postfix": false, "binop": null }, - "start": 13309, - "end": 13310, + "start": 13324, + "end": 13325, "loc": { "start": { "line": 761, @@ -94056,8 +94457,8 @@ "postfix": false, "binop": null }, - "start": 13310, - "end": 13311, + "start": 13325, + "end": 13326, "loc": { "start": { "line": 761, @@ -94082,8 +94483,8 @@ "binop": null, "updateContext": null }, - "start": 13311, - "end": 13312, + "start": 13326, + "end": 13327, "loc": { "start": { "line": 761, @@ -94107,8 +94508,8 @@ "postfix": false, "binop": null }, - "start": 13317, - "end": 13318, + "start": 13332, + "end": 13333, "loc": { "start": { "line": 763, @@ -94123,8 +94524,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Normalizes this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 13323, - "end": 13402, + "start": 13338, + "end": 13417, "loc": { "start": { "line": 765, @@ -94149,8 +94550,8 @@ "binop": null }, "value": "normalize", - "start": 13407, - "end": 13416, + "start": 13422, + "end": 13431, "loc": { "start": { "line": 771, @@ -94174,8 +94575,8 @@ "postfix": false, "binop": null }, - "start": 13416, - "end": 13417, + "start": 13431, + "end": 13432, "loc": { "start": { "line": 771, @@ -94199,8 +94600,8 @@ "postfix": false, "binop": null }, - "start": 13417, - "end": 13418, + "start": 13432, + "end": 13433, "loc": { "start": { "line": 771, @@ -94224,8 +94625,8 @@ "postfix": false, "binop": null }, - "start": 13419, - "end": 13420, + "start": 13434, + "end": 13435, "loc": { "start": { "line": 771, @@ -94252,8 +94653,8 @@ "updateContext": null }, "value": "return", - "start": 13426, - "end": 13432, + "start": 13441, + "end": 13447, "loc": { "start": { "line": 773, @@ -94280,8 +94681,8 @@ "updateContext": null }, "value": "this", - "start": 13433, - "end": 13437, + "start": 13448, + "end": 13452, "loc": { "start": { "line": 773, @@ -94306,8 +94707,8 @@ "binop": null, "updateContext": null }, - "start": 13437, - "end": 13438, + "start": 13452, + "end": 13453, "loc": { "start": { "line": 773, @@ -94332,8 +94733,8 @@ "binop": null }, "value": "divideScalar", - "start": 13438, - "end": 13450, + "start": 13453, + "end": 13465, "loc": { "start": { "line": 773, @@ -94357,8 +94758,8 @@ "postfix": false, "binop": null }, - "start": 13450, - "end": 13451, + "start": 13465, + "end": 13466, "loc": { "start": { "line": 773, @@ -94385,8 +94786,8 @@ "updateContext": null }, "value": "this", - "start": 13451, - "end": 13455, + "start": 13466, + "end": 13470, "loc": { "start": { "line": 773, @@ -94411,8 +94812,8 @@ "binop": null, "updateContext": null }, - "start": 13455, - "end": 13456, + "start": 13470, + "end": 13471, "loc": { "start": { "line": 773, @@ -94437,8 +94838,8 @@ "binop": null }, "value": "length", - "start": 13456, - "end": 13462, + "start": 13471, + "end": 13477, "loc": { "start": { "line": 773, @@ -94462,8 +94863,8 @@ "postfix": false, "binop": null }, - "start": 13462, - "end": 13463, + "start": 13477, + "end": 13478, "loc": { "start": { "line": 773, @@ -94487,8 +94888,8 @@ "postfix": false, "binop": null }, - "start": 13463, - "end": 13464, + "start": 13478, + "end": 13479, "loc": { "start": { "line": 773, @@ -94512,8 +94913,8 @@ "postfix": false, "binop": null }, - "start": 13464, - "end": 13465, + "start": 13479, + "end": 13480, "loc": { "start": { "line": 773, @@ -94538,8 +94939,8 @@ "binop": null, "updateContext": null }, - "start": 13465, - "end": 13466, + "start": 13480, + "end": 13481, "loc": { "start": { "line": 773, @@ -94563,8 +94964,8 @@ "postfix": false, "binop": null }, - "start": 13471, - "end": 13472, + "start": 13486, + "end": 13487, "loc": { "start": { "line": 775, @@ -94579,8 +94980,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Sets the length of this vector.\r\n\t *\r\n\t * @param {Number} length - The new length.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 13477, - "end": 13610, + "start": 13492, + "end": 13625, "loc": { "start": { "line": 777, @@ -94605,8 +95006,8 @@ "binop": null }, "value": "setLength", - "start": 13615, - "end": 13624, + "start": 13630, + "end": 13639, "loc": { "start": { "line": 784, @@ -94630,8 +95031,8 @@ "postfix": false, "binop": null }, - "start": 13624, - "end": 13625, + "start": 13639, + "end": 13640, "loc": { "start": { "line": 784, @@ -94656,8 +95057,8 @@ "binop": null }, "value": "length", - "start": 13625, - "end": 13631, + "start": 13640, + "end": 13646, "loc": { "start": { "line": 784, @@ -94681,8 +95082,8 @@ "postfix": false, "binop": null }, - "start": 13631, - "end": 13632, + "start": 13646, + "end": 13647, "loc": { "start": { "line": 784, @@ -94706,8 +95107,8 @@ "postfix": false, "binop": null }, - "start": 13633, - "end": 13634, + "start": 13648, + "end": 13649, "loc": { "start": { "line": 784, @@ -94734,8 +95135,8 @@ "updateContext": null }, "value": "return", - "start": 13640, - "end": 13646, + "start": 13655, + "end": 13661, "loc": { "start": { "line": 786, @@ -94762,8 +95163,8 @@ "updateContext": null }, "value": "this", - "start": 13647, - "end": 13651, + "start": 13662, + "end": 13666, "loc": { "start": { "line": 786, @@ -94788,8 +95189,8 @@ "binop": null, "updateContext": null }, - "start": 13651, - "end": 13652, + "start": 13666, + "end": 13667, "loc": { "start": { "line": 786, @@ -94814,8 +95215,8 @@ "binop": null }, "value": "normalize", - "start": 13652, - "end": 13661, + "start": 13667, + "end": 13676, "loc": { "start": { "line": 786, @@ -94839,8 +95240,8 @@ "postfix": false, "binop": null }, - "start": 13661, - "end": 13662, + "start": 13676, + "end": 13677, "loc": { "start": { "line": 786, @@ -94864,8 +95265,8 @@ "postfix": false, "binop": null }, - "start": 13662, - "end": 13663, + "start": 13677, + "end": 13678, "loc": { "start": { "line": 786, @@ -94890,8 +95291,8 @@ "binop": null, "updateContext": null }, - "start": 13663, - "end": 13664, + "start": 13678, + "end": 13679, "loc": { "start": { "line": 786, @@ -94916,8 +95317,8 @@ "binop": null }, "value": "multiplyScalar", - "start": 13664, - "end": 13678, + "start": 13679, + "end": 13693, "loc": { "start": { "line": 786, @@ -94941,8 +95342,8 @@ "postfix": false, "binop": null }, - "start": 13678, - "end": 13679, + "start": 13693, + "end": 13694, "loc": { "start": { "line": 786, @@ -94967,8 +95368,8 @@ "binop": null }, "value": "length", - "start": 13679, - "end": 13685, + "start": 13694, + "end": 13700, "loc": { "start": { "line": 786, @@ -94992,8 +95393,8 @@ "postfix": false, "binop": null }, - "start": 13685, - "end": 13686, + "start": 13700, + "end": 13701, "loc": { "start": { "line": 786, @@ -95018,8 +95419,8 @@ "binop": null, "updateContext": null }, - "start": 13686, - "end": 13687, + "start": 13701, + "end": 13702, "loc": { "start": { "line": 786, @@ -95043,8 +95444,8 @@ "postfix": false, "binop": null }, - "start": 13692, - "end": 13693, + "start": 13707, + "end": 13708, "loc": { "start": { "line": 788, @@ -95059,8 +95460,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Adopts the min value for each component of this vector and the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 13698, - "end": 13863, + "start": 13713, + "end": 13878, "loc": { "start": { "line": 790, @@ -95085,8 +95486,8 @@ "binop": null }, "value": "min", - "start": 13868, - "end": 13871, + "start": 13883, + "end": 13886, "loc": { "start": { "line": 797, @@ -95110,8 +95511,8 @@ "postfix": false, "binop": null }, - "start": 13871, - "end": 13872, + "start": 13886, + "end": 13887, "loc": { "start": { "line": 797, @@ -95136,8 +95537,8 @@ "binop": null }, "value": "v", - "start": 13872, - "end": 13873, + "start": 13887, + "end": 13888, "loc": { "start": { "line": 797, @@ -95161,8 +95562,8 @@ "postfix": false, "binop": null }, - "start": 13873, - "end": 13874, + "start": 13888, + "end": 13889, "loc": { "start": { "line": 797, @@ -95186,8 +95587,8 @@ "postfix": false, "binop": null }, - "start": 13875, - "end": 13876, + "start": 13890, + "end": 13891, "loc": { "start": { "line": 797, @@ -95214,8 +95615,8 @@ "updateContext": null }, "value": "this", - "start": 13882, - "end": 13886, + "start": 13897, + "end": 13901, "loc": { "start": { "line": 799, @@ -95240,8 +95641,8 @@ "binop": null, "updateContext": null }, - "start": 13886, - "end": 13887, + "start": 13901, + "end": 13902, "loc": { "start": { "line": 799, @@ -95266,8 +95667,8 @@ "binop": null }, "value": "x", - "start": 13887, - "end": 13888, + "start": 13902, + "end": 13903, "loc": { "start": { "line": 799, @@ -95293,8 +95694,8 @@ "updateContext": null }, "value": "=", - "start": 13889, - "end": 13890, + "start": 13904, + "end": 13905, "loc": { "start": { "line": 799, @@ -95319,8 +95720,8 @@ "binop": null }, "value": "Math", - "start": 13891, - "end": 13895, + "start": 13906, + "end": 13910, "loc": { "start": { "line": 799, @@ -95345,8 +95746,8 @@ "binop": null, "updateContext": null }, - "start": 13895, - "end": 13896, + "start": 13910, + "end": 13911, "loc": { "start": { "line": 799, @@ -95371,8 +95772,8 @@ "binop": null }, "value": "min", - "start": 13896, - "end": 13899, + "start": 13911, + "end": 13914, "loc": { "start": { "line": 799, @@ -95396,8 +95797,8 @@ "postfix": false, "binop": null }, - "start": 13899, - "end": 13900, + "start": 13914, + "end": 13915, "loc": { "start": { "line": 799, @@ -95424,8 +95825,8 @@ "updateContext": null }, "value": "this", - "start": 13900, - "end": 13904, + "start": 13915, + "end": 13919, "loc": { "start": { "line": 799, @@ -95450,8 +95851,8 @@ "binop": null, "updateContext": null }, - "start": 13904, - "end": 13905, + "start": 13919, + "end": 13920, "loc": { "start": { "line": 799, @@ -95476,8 +95877,8 @@ "binop": null }, "value": "x", - "start": 13905, - "end": 13906, + "start": 13920, + "end": 13921, "loc": { "start": { "line": 799, @@ -95502,8 +95903,8 @@ "binop": null, "updateContext": null }, - "start": 13906, - "end": 13907, + "start": 13921, + "end": 13922, "loc": { "start": { "line": 799, @@ -95528,8 +95929,8 @@ "binop": null }, "value": "v", - "start": 13908, - "end": 13909, + "start": 13923, + "end": 13924, "loc": { "start": { "line": 799, @@ -95554,8 +95955,8 @@ "binop": null, "updateContext": null }, - "start": 13909, - "end": 13910, + "start": 13924, + "end": 13925, "loc": { "start": { "line": 799, @@ -95580,8 +95981,8 @@ "binop": null }, "value": "x", - "start": 13910, - "end": 13911, + "start": 13925, + "end": 13926, "loc": { "start": { "line": 799, @@ -95605,8 +96006,8 @@ "postfix": false, "binop": null }, - "start": 13911, - "end": 13912, + "start": 13926, + "end": 13927, "loc": { "start": { "line": 799, @@ -95631,8 +96032,8 @@ "binop": null, "updateContext": null }, - "start": 13912, - "end": 13913, + "start": 13927, + "end": 13928, "loc": { "start": { "line": 799, @@ -95659,8 +96060,8 @@ "updateContext": null }, "value": "this", - "start": 13917, - "end": 13921, + "start": 13932, + "end": 13936, "loc": { "start": { "line": 800, @@ -95685,8 +96086,8 @@ "binop": null, "updateContext": null }, - "start": 13921, - "end": 13922, + "start": 13936, + "end": 13937, "loc": { "start": { "line": 800, @@ -95711,8 +96112,8 @@ "binop": null }, "value": "y", - "start": 13922, - "end": 13923, + "start": 13937, + "end": 13938, "loc": { "start": { "line": 800, @@ -95738,8 +96139,8 @@ "updateContext": null }, "value": "=", - "start": 13924, - "end": 13925, + "start": 13939, + "end": 13940, "loc": { "start": { "line": 800, @@ -95764,8 +96165,8 @@ "binop": null }, "value": "Math", - "start": 13926, - "end": 13930, + "start": 13941, + "end": 13945, "loc": { "start": { "line": 800, @@ -95790,8 +96191,8 @@ "binop": null, "updateContext": null }, - "start": 13930, - "end": 13931, + "start": 13945, + "end": 13946, "loc": { "start": { "line": 800, @@ -95816,8 +96217,8 @@ "binop": null }, "value": "min", - "start": 13931, - "end": 13934, + "start": 13946, + "end": 13949, "loc": { "start": { "line": 800, @@ -95841,8 +96242,8 @@ "postfix": false, "binop": null }, - "start": 13934, - "end": 13935, + "start": 13949, + "end": 13950, "loc": { "start": { "line": 800, @@ -95869,8 +96270,8 @@ "updateContext": null }, "value": "this", - "start": 13935, - "end": 13939, + "start": 13950, + "end": 13954, "loc": { "start": { "line": 800, @@ -95895,8 +96296,8 @@ "binop": null, "updateContext": null }, - "start": 13939, - "end": 13940, + "start": 13954, + "end": 13955, "loc": { "start": { "line": 800, @@ -95921,8 +96322,8 @@ "binop": null }, "value": "y", - "start": 13940, - "end": 13941, + "start": 13955, + "end": 13956, "loc": { "start": { "line": 800, @@ -95947,8 +96348,8 @@ "binop": null, "updateContext": null }, - "start": 13941, - "end": 13942, + "start": 13956, + "end": 13957, "loc": { "start": { "line": 800, @@ -95973,8 +96374,8 @@ "binop": null }, "value": "v", - "start": 13943, - "end": 13944, + "start": 13958, + "end": 13959, "loc": { "start": { "line": 800, @@ -95999,8 +96400,8 @@ "binop": null, "updateContext": null }, - "start": 13944, - "end": 13945, + "start": 13959, + "end": 13960, "loc": { "start": { "line": 800, @@ -96025,8 +96426,8 @@ "binop": null }, "value": "y", - "start": 13945, - "end": 13946, + "start": 13960, + "end": 13961, "loc": { "start": { "line": 800, @@ -96050,8 +96451,8 @@ "postfix": false, "binop": null }, - "start": 13946, - "end": 13947, + "start": 13961, + "end": 13962, "loc": { "start": { "line": 800, @@ -96076,8 +96477,8 @@ "binop": null, "updateContext": null }, - "start": 13947, - "end": 13948, + "start": 13962, + "end": 13963, "loc": { "start": { "line": 800, @@ -96104,8 +96505,8 @@ "updateContext": null }, "value": "this", - "start": 13952, - "end": 13956, + "start": 13967, + "end": 13971, "loc": { "start": { "line": 801, @@ -96130,8 +96531,8 @@ "binop": null, "updateContext": null }, - "start": 13956, - "end": 13957, + "start": 13971, + "end": 13972, "loc": { "start": { "line": 801, @@ -96156,8 +96557,8 @@ "binop": null }, "value": "z", - "start": 13957, - "end": 13958, + "start": 13972, + "end": 13973, "loc": { "start": { "line": 801, @@ -96183,8 +96584,8 @@ "updateContext": null }, "value": "=", - "start": 13959, - "end": 13960, + "start": 13974, + "end": 13975, "loc": { "start": { "line": 801, @@ -96209,8 +96610,8 @@ "binop": null }, "value": "Math", - "start": 13961, - "end": 13965, + "start": 13976, + "end": 13980, "loc": { "start": { "line": 801, @@ -96235,8 +96636,8 @@ "binop": null, "updateContext": null }, - "start": 13965, - "end": 13966, + "start": 13980, + "end": 13981, "loc": { "start": { "line": 801, @@ -96261,8 +96662,8 @@ "binop": null }, "value": "min", - "start": 13966, - "end": 13969, + "start": 13981, + "end": 13984, "loc": { "start": { "line": 801, @@ -96286,8 +96687,8 @@ "postfix": false, "binop": null }, - "start": 13969, - "end": 13970, + "start": 13984, + "end": 13985, "loc": { "start": { "line": 801, @@ -96314,8 +96715,8 @@ "updateContext": null }, "value": "this", - "start": 13970, - "end": 13974, + "start": 13985, + "end": 13989, "loc": { "start": { "line": 801, @@ -96340,8 +96741,8 @@ "binop": null, "updateContext": null }, - "start": 13974, - "end": 13975, + "start": 13989, + "end": 13990, "loc": { "start": { "line": 801, @@ -96366,8 +96767,8 @@ "binop": null }, "value": "z", - "start": 13975, - "end": 13976, + "start": 13990, + "end": 13991, "loc": { "start": { "line": 801, @@ -96392,8 +96793,8 @@ "binop": null, "updateContext": null }, - "start": 13976, - "end": 13977, + "start": 13991, + "end": 13992, "loc": { "start": { "line": 801, @@ -96418,8 +96819,8 @@ "binop": null }, "value": "v", - "start": 13978, - "end": 13979, + "start": 13993, + "end": 13994, "loc": { "start": { "line": 801, @@ -96444,8 +96845,8 @@ "binop": null, "updateContext": null }, - "start": 13979, - "end": 13980, + "start": 13994, + "end": 13995, "loc": { "start": { "line": 801, @@ -96470,8 +96871,8 @@ "binop": null }, "value": "z", - "start": 13980, - "end": 13981, + "start": 13995, + "end": 13996, "loc": { "start": { "line": 801, @@ -96495,8 +96896,8 @@ "postfix": false, "binop": null }, - "start": 13981, - "end": 13982, + "start": 13996, + "end": 13997, "loc": { "start": { "line": 801, @@ -96521,8 +96922,8 @@ "binop": null, "updateContext": null }, - "start": 13982, - "end": 13983, + "start": 13997, + "end": 13998, "loc": { "start": { "line": 801, @@ -96549,8 +96950,8 @@ "updateContext": null }, "value": "return", - "start": 13989, - "end": 13995, + "start": 14004, + "end": 14010, "loc": { "start": { "line": 803, @@ -96577,8 +96978,8 @@ "updateContext": null }, "value": "this", - "start": 13996, - "end": 14000, + "start": 14011, + "end": 14015, "loc": { "start": { "line": 803, @@ -96603,8 +97004,8 @@ "binop": null, "updateContext": null }, - "start": 14000, - "end": 14001, + "start": 14015, + "end": 14016, "loc": { "start": { "line": 803, @@ -96628,8 +97029,8 @@ "postfix": false, "binop": null }, - "start": 14006, - "end": 14007, + "start": 14021, + "end": 14022, "loc": { "start": { "line": 805, @@ -96644,8 +97045,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Adopts the max value for each component of this vector and the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 14012, - "end": 14177, + "start": 14027, + "end": 14192, "loc": { "start": { "line": 807, @@ -96670,8 +97071,8 @@ "binop": null }, "value": "max", - "start": 14182, - "end": 14185, + "start": 14197, + "end": 14200, "loc": { "start": { "line": 814, @@ -96695,8 +97096,8 @@ "postfix": false, "binop": null }, - "start": 14185, - "end": 14186, + "start": 14200, + "end": 14201, "loc": { "start": { "line": 814, @@ -96721,8 +97122,8 @@ "binop": null }, "value": "v", - "start": 14186, - "end": 14187, + "start": 14201, + "end": 14202, "loc": { "start": { "line": 814, @@ -96746,8 +97147,8 @@ "postfix": false, "binop": null }, - "start": 14187, - "end": 14188, + "start": 14202, + "end": 14203, "loc": { "start": { "line": 814, @@ -96771,8 +97172,8 @@ "postfix": false, "binop": null }, - "start": 14189, - "end": 14190, + "start": 14204, + "end": 14205, "loc": { "start": { "line": 814, @@ -96799,8 +97200,8 @@ "updateContext": null }, "value": "this", - "start": 14196, - "end": 14200, + "start": 14211, + "end": 14215, "loc": { "start": { "line": 816, @@ -96825,8 +97226,8 @@ "binop": null, "updateContext": null }, - "start": 14200, - "end": 14201, + "start": 14215, + "end": 14216, "loc": { "start": { "line": 816, @@ -96851,8 +97252,8 @@ "binop": null }, "value": "x", - "start": 14201, - "end": 14202, + "start": 14216, + "end": 14217, "loc": { "start": { "line": 816, @@ -96878,8 +97279,8 @@ "updateContext": null }, "value": "=", - "start": 14203, - "end": 14204, + "start": 14218, + "end": 14219, "loc": { "start": { "line": 816, @@ -96904,8 +97305,8 @@ "binop": null }, "value": "Math", - "start": 14205, - "end": 14209, + "start": 14220, + "end": 14224, "loc": { "start": { "line": 816, @@ -96930,8 +97331,8 @@ "binop": null, "updateContext": null }, - "start": 14209, - "end": 14210, + "start": 14224, + "end": 14225, "loc": { "start": { "line": 816, @@ -96956,8 +97357,8 @@ "binop": null }, "value": "max", - "start": 14210, - "end": 14213, + "start": 14225, + "end": 14228, "loc": { "start": { "line": 816, @@ -96981,8 +97382,8 @@ "postfix": false, "binop": null }, - "start": 14213, - "end": 14214, + "start": 14228, + "end": 14229, "loc": { "start": { "line": 816, @@ -97009,8 +97410,8 @@ "updateContext": null }, "value": "this", - "start": 14214, - "end": 14218, + "start": 14229, + "end": 14233, "loc": { "start": { "line": 816, @@ -97035,8 +97436,8 @@ "binop": null, "updateContext": null }, - "start": 14218, - "end": 14219, + "start": 14233, + "end": 14234, "loc": { "start": { "line": 816, @@ -97061,8 +97462,8 @@ "binop": null }, "value": "x", - "start": 14219, - "end": 14220, + "start": 14234, + "end": 14235, "loc": { "start": { "line": 816, @@ -97087,8 +97488,8 @@ "binop": null, "updateContext": null }, - "start": 14220, - "end": 14221, + "start": 14235, + "end": 14236, "loc": { "start": { "line": 816, @@ -97113,8 +97514,8 @@ "binop": null }, "value": "v", - "start": 14222, - "end": 14223, + "start": 14237, + "end": 14238, "loc": { "start": { "line": 816, @@ -97139,8 +97540,8 @@ "binop": null, "updateContext": null }, - "start": 14223, - "end": 14224, + "start": 14238, + "end": 14239, "loc": { "start": { "line": 816, @@ -97165,8 +97566,8 @@ "binop": null }, "value": "x", - "start": 14224, - "end": 14225, + "start": 14239, + "end": 14240, "loc": { "start": { "line": 816, @@ -97190,8 +97591,8 @@ "postfix": false, "binop": null }, - "start": 14225, - "end": 14226, + "start": 14240, + "end": 14241, "loc": { "start": { "line": 816, @@ -97216,8 +97617,8 @@ "binop": null, "updateContext": null }, - "start": 14226, - "end": 14227, + "start": 14241, + "end": 14242, "loc": { "start": { "line": 816, @@ -97244,8 +97645,8 @@ "updateContext": null }, "value": "this", - "start": 14231, - "end": 14235, + "start": 14246, + "end": 14250, "loc": { "start": { "line": 817, @@ -97270,8 +97671,8 @@ "binop": null, "updateContext": null }, - "start": 14235, - "end": 14236, + "start": 14250, + "end": 14251, "loc": { "start": { "line": 817, @@ -97296,8 +97697,8 @@ "binop": null }, "value": "y", - "start": 14236, - "end": 14237, + "start": 14251, + "end": 14252, "loc": { "start": { "line": 817, @@ -97323,8 +97724,8 @@ "updateContext": null }, "value": "=", - "start": 14238, - "end": 14239, + "start": 14253, + "end": 14254, "loc": { "start": { "line": 817, @@ -97349,8 +97750,8 @@ "binop": null }, "value": "Math", - "start": 14240, - "end": 14244, + "start": 14255, + "end": 14259, "loc": { "start": { "line": 817, @@ -97375,8 +97776,8 @@ "binop": null, "updateContext": null }, - "start": 14244, - "end": 14245, + "start": 14259, + "end": 14260, "loc": { "start": { "line": 817, @@ -97401,8 +97802,8 @@ "binop": null }, "value": "max", - "start": 14245, - "end": 14248, + "start": 14260, + "end": 14263, "loc": { "start": { "line": 817, @@ -97426,8 +97827,8 @@ "postfix": false, "binop": null }, - "start": 14248, - "end": 14249, + "start": 14263, + "end": 14264, "loc": { "start": { "line": 817, @@ -97454,8 +97855,8 @@ "updateContext": null }, "value": "this", - "start": 14249, - "end": 14253, + "start": 14264, + "end": 14268, "loc": { "start": { "line": 817, @@ -97480,8 +97881,8 @@ "binop": null, "updateContext": null }, - "start": 14253, - "end": 14254, + "start": 14268, + "end": 14269, "loc": { "start": { "line": 817, @@ -97506,8 +97907,8 @@ "binop": null }, "value": "y", - "start": 14254, - "end": 14255, + "start": 14269, + "end": 14270, "loc": { "start": { "line": 817, @@ -97532,8 +97933,8 @@ "binop": null, "updateContext": null }, - "start": 14255, - "end": 14256, + "start": 14270, + "end": 14271, "loc": { "start": { "line": 817, @@ -97558,8 +97959,8 @@ "binop": null }, "value": "v", - "start": 14257, - "end": 14258, + "start": 14272, + "end": 14273, "loc": { "start": { "line": 817, @@ -97584,8 +97985,8 @@ "binop": null, "updateContext": null }, - "start": 14258, - "end": 14259, + "start": 14273, + "end": 14274, "loc": { "start": { "line": 817, @@ -97610,8 +98011,8 @@ "binop": null }, "value": "y", - "start": 14259, - "end": 14260, + "start": 14274, + "end": 14275, "loc": { "start": { "line": 817, @@ -97635,8 +98036,8 @@ "postfix": false, "binop": null }, - "start": 14260, - "end": 14261, + "start": 14275, + "end": 14276, "loc": { "start": { "line": 817, @@ -97661,8 +98062,8 @@ "binop": null, "updateContext": null }, - "start": 14261, - "end": 14262, + "start": 14276, + "end": 14277, "loc": { "start": { "line": 817, @@ -97689,8 +98090,8 @@ "updateContext": null }, "value": "this", - "start": 14266, - "end": 14270, + "start": 14281, + "end": 14285, "loc": { "start": { "line": 818, @@ -97715,8 +98116,8 @@ "binop": null, "updateContext": null }, - "start": 14270, - "end": 14271, + "start": 14285, + "end": 14286, "loc": { "start": { "line": 818, @@ -97741,8 +98142,8 @@ "binop": null }, "value": "z", - "start": 14271, - "end": 14272, + "start": 14286, + "end": 14287, "loc": { "start": { "line": 818, @@ -97768,8 +98169,8 @@ "updateContext": null }, "value": "=", - "start": 14273, - "end": 14274, + "start": 14288, + "end": 14289, "loc": { "start": { "line": 818, @@ -97794,8 +98195,8 @@ "binop": null }, "value": "Math", - "start": 14275, - "end": 14279, + "start": 14290, + "end": 14294, "loc": { "start": { "line": 818, @@ -97820,8 +98221,8 @@ "binop": null, "updateContext": null }, - "start": 14279, - "end": 14280, + "start": 14294, + "end": 14295, "loc": { "start": { "line": 818, @@ -97846,8 +98247,8 @@ "binop": null }, "value": "max", - "start": 14280, - "end": 14283, + "start": 14295, + "end": 14298, "loc": { "start": { "line": 818, @@ -97871,8 +98272,8 @@ "postfix": false, "binop": null }, - "start": 14283, - "end": 14284, + "start": 14298, + "end": 14299, "loc": { "start": { "line": 818, @@ -97899,8 +98300,8 @@ "updateContext": null }, "value": "this", - "start": 14284, - "end": 14288, + "start": 14299, + "end": 14303, "loc": { "start": { "line": 818, @@ -97925,8 +98326,8 @@ "binop": null, "updateContext": null }, - "start": 14288, - "end": 14289, + "start": 14303, + "end": 14304, "loc": { "start": { "line": 818, @@ -97951,8 +98352,8 @@ "binop": null }, "value": "z", - "start": 14289, - "end": 14290, + "start": 14304, + "end": 14305, "loc": { "start": { "line": 818, @@ -97977,8 +98378,8 @@ "binop": null, "updateContext": null }, - "start": 14290, - "end": 14291, + "start": 14305, + "end": 14306, "loc": { "start": { "line": 818, @@ -98003,8 +98404,8 @@ "binop": null }, "value": "v", - "start": 14292, - "end": 14293, + "start": 14307, + "end": 14308, "loc": { "start": { "line": 818, @@ -98029,8 +98430,8 @@ "binop": null, "updateContext": null }, - "start": 14293, - "end": 14294, + "start": 14308, + "end": 14309, "loc": { "start": { "line": 818, @@ -98055,8 +98456,8 @@ "binop": null }, "value": "z", - "start": 14294, - "end": 14295, + "start": 14309, + "end": 14310, "loc": { "start": { "line": 818, @@ -98080,8 +98481,8 @@ "postfix": false, "binop": null }, - "start": 14295, - "end": 14296, + "start": 14310, + "end": 14311, "loc": { "start": { "line": 818, @@ -98106,8 +98507,8 @@ "binop": null, "updateContext": null }, - "start": 14296, - "end": 14297, + "start": 14311, + "end": 14312, "loc": { "start": { "line": 818, @@ -98134,8 +98535,8 @@ "updateContext": null }, "value": "return", - "start": 14303, - "end": 14309, + "start": 14318, + "end": 14324, "loc": { "start": { "line": 820, @@ -98162,8 +98563,8 @@ "updateContext": null }, "value": "this", - "start": 14310, - "end": 14314, + "start": 14325, + "end": 14329, "loc": { "start": { "line": 820, @@ -98188,8 +98589,8 @@ "binop": null, "updateContext": null }, - "start": 14314, - "end": 14315, + "start": 14329, + "end": 14330, "loc": { "start": { "line": 820, @@ -98213,8 +98614,8 @@ "postfix": false, "binop": null }, - "start": 14320, - "end": 14321, + "start": 14335, + "end": 14336, "loc": { "start": { "line": 822, @@ -98229,8 +98630,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Clamps this vector.\r\n\t *\r\n\t * @param {Vector3} min - The lower bounds. Assumed to be smaller than max.\r\n\t * @param {Vector3} max - The upper bounds. Assumed to be greater than min.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 14326, - "end": 14557, + "start": 14341, + "end": 14572, "loc": { "start": { "line": 824, @@ -98255,8 +98656,8 @@ "binop": null }, "value": "clamp", - "start": 14562, - "end": 14567, + "start": 14577, + "end": 14582, "loc": { "start": { "line": 832, @@ -98280,8 +98681,8 @@ "postfix": false, "binop": null }, - "start": 14567, - "end": 14568, + "start": 14582, + "end": 14583, "loc": { "start": { "line": 832, @@ -98306,8 +98707,8 @@ "binop": null }, "value": "min", - "start": 14568, - "end": 14571, + "start": 14583, + "end": 14586, "loc": { "start": { "line": 832, @@ -98332,8 +98733,8 @@ "binop": null, "updateContext": null }, - "start": 14571, - "end": 14572, + "start": 14586, + "end": 14587, "loc": { "start": { "line": 832, @@ -98358,8 +98759,8 @@ "binop": null }, "value": "max", - "start": 14573, - "end": 14576, + "start": 14588, + "end": 14591, "loc": { "start": { "line": 832, @@ -98383,8 +98784,8 @@ "postfix": false, "binop": null }, - "start": 14576, - "end": 14577, + "start": 14591, + "end": 14592, "loc": { "start": { "line": 832, @@ -98408,8 +98809,8 @@ "postfix": false, "binop": null }, - "start": 14578, - "end": 14579, + "start": 14593, + "end": 14594, "loc": { "start": { "line": 832, @@ -98436,8 +98837,8 @@ "updateContext": null }, "value": "this", - "start": 14585, - "end": 14589, + "start": 14600, + "end": 14604, "loc": { "start": { "line": 834, @@ -98462,8 +98863,8 @@ "binop": null, "updateContext": null }, - "start": 14589, - "end": 14590, + "start": 14604, + "end": 14605, "loc": { "start": { "line": 834, @@ -98488,8 +98889,8 @@ "binop": null }, "value": "x", - "start": 14590, - "end": 14591, + "start": 14605, + "end": 14606, "loc": { "start": { "line": 834, @@ -98515,8 +98916,8 @@ "updateContext": null }, "value": "=", - "start": 14592, - "end": 14593, + "start": 14607, + "end": 14608, "loc": { "start": { "line": 834, @@ -98541,8 +98942,8 @@ "binop": null }, "value": "Math", - "start": 14594, - "end": 14598, + "start": 14609, + "end": 14613, "loc": { "start": { "line": 834, @@ -98567,8 +98968,8 @@ "binop": null, "updateContext": null }, - "start": 14598, - "end": 14599, + "start": 14613, + "end": 14614, "loc": { "start": { "line": 834, @@ -98593,8 +98994,8 @@ "binop": null }, "value": "max", - "start": 14599, - "end": 14602, + "start": 14614, + "end": 14617, "loc": { "start": { "line": 834, @@ -98618,8 +99019,8 @@ "postfix": false, "binop": null }, - "start": 14602, - "end": 14603, + "start": 14617, + "end": 14618, "loc": { "start": { "line": 834, @@ -98644,8 +99045,8 @@ "binop": null }, "value": "min", - "start": 14603, - "end": 14606, + "start": 14618, + "end": 14621, "loc": { "start": { "line": 834, @@ -98670,8 +99071,8 @@ "binop": null, "updateContext": null }, - "start": 14606, - "end": 14607, + "start": 14621, + "end": 14622, "loc": { "start": { "line": 834, @@ -98696,8 +99097,8 @@ "binop": null }, "value": "x", - "start": 14607, - "end": 14608, + "start": 14622, + "end": 14623, "loc": { "start": { "line": 834, @@ -98722,8 +99123,8 @@ "binop": null, "updateContext": null }, - "start": 14608, - "end": 14609, + "start": 14623, + "end": 14624, "loc": { "start": { "line": 834, @@ -98748,8 +99149,8 @@ "binop": null }, "value": "Math", - "start": 14610, - "end": 14614, + "start": 14625, + "end": 14629, "loc": { "start": { "line": 834, @@ -98774,8 +99175,8 @@ "binop": null, "updateContext": null }, - "start": 14614, - "end": 14615, + "start": 14629, + "end": 14630, "loc": { "start": { "line": 834, @@ -98800,8 +99201,8 @@ "binop": null }, "value": "min", - "start": 14615, - "end": 14618, + "start": 14630, + "end": 14633, "loc": { "start": { "line": 834, @@ -98825,8 +99226,8 @@ "postfix": false, "binop": null }, - "start": 14618, - "end": 14619, + "start": 14633, + "end": 14634, "loc": { "start": { "line": 834, @@ -98851,8 +99252,8 @@ "binop": null }, "value": "max", - "start": 14619, - "end": 14622, + "start": 14634, + "end": 14637, "loc": { "start": { "line": 834, @@ -98877,8 +99278,8 @@ "binop": null, "updateContext": null }, - "start": 14622, - "end": 14623, + "start": 14637, + "end": 14638, "loc": { "start": { "line": 834, @@ -98903,8 +99304,8 @@ "binop": null }, "value": "x", - "start": 14623, - "end": 14624, + "start": 14638, + "end": 14639, "loc": { "start": { "line": 834, @@ -98929,8 +99330,8 @@ "binop": null, "updateContext": null }, - "start": 14624, - "end": 14625, + "start": 14639, + "end": 14640, "loc": { "start": { "line": 834, @@ -98957,8 +99358,8 @@ "updateContext": null }, "value": "this", - "start": 14626, - "end": 14630, + "start": 14641, + "end": 14645, "loc": { "start": { "line": 834, @@ -98983,8 +99384,8 @@ "binop": null, "updateContext": null }, - "start": 14630, - "end": 14631, + "start": 14645, + "end": 14646, "loc": { "start": { "line": 834, @@ -99009,8 +99410,8 @@ "binop": null }, "value": "x", - "start": 14631, - "end": 14632, + "start": 14646, + "end": 14647, "loc": { "start": { "line": 834, @@ -99034,8 +99435,8 @@ "postfix": false, "binop": null }, - "start": 14632, - "end": 14633, + "start": 14647, + "end": 14648, "loc": { "start": { "line": 834, @@ -99059,8 +99460,8 @@ "postfix": false, "binop": null }, - "start": 14633, - "end": 14634, + "start": 14648, + "end": 14649, "loc": { "start": { "line": 834, @@ -99085,8 +99486,8 @@ "binop": null, "updateContext": null }, - "start": 14634, - "end": 14635, + "start": 14649, + "end": 14650, "loc": { "start": { "line": 834, @@ -99113,8 +99514,8 @@ "updateContext": null }, "value": "this", - "start": 14639, - "end": 14643, + "start": 14654, + "end": 14658, "loc": { "start": { "line": 835, @@ -99139,8 +99540,8 @@ "binop": null, "updateContext": null }, - "start": 14643, - "end": 14644, + "start": 14658, + "end": 14659, "loc": { "start": { "line": 835, @@ -99165,8 +99566,8 @@ "binop": null }, "value": "y", - "start": 14644, - "end": 14645, + "start": 14659, + "end": 14660, "loc": { "start": { "line": 835, @@ -99192,8 +99593,8 @@ "updateContext": null }, "value": "=", - "start": 14646, - "end": 14647, + "start": 14661, + "end": 14662, "loc": { "start": { "line": 835, @@ -99218,8 +99619,8 @@ "binop": null }, "value": "Math", - "start": 14648, - "end": 14652, + "start": 14663, + "end": 14667, "loc": { "start": { "line": 835, @@ -99244,8 +99645,8 @@ "binop": null, "updateContext": null }, - "start": 14652, - "end": 14653, + "start": 14667, + "end": 14668, "loc": { "start": { "line": 835, @@ -99270,8 +99671,8 @@ "binop": null }, "value": "max", - "start": 14653, - "end": 14656, + "start": 14668, + "end": 14671, "loc": { "start": { "line": 835, @@ -99295,8 +99696,8 @@ "postfix": false, "binop": null }, - "start": 14656, - "end": 14657, + "start": 14671, + "end": 14672, "loc": { "start": { "line": 835, @@ -99321,8 +99722,8 @@ "binop": null }, "value": "min", - "start": 14657, - "end": 14660, + "start": 14672, + "end": 14675, "loc": { "start": { "line": 835, @@ -99347,8 +99748,8 @@ "binop": null, "updateContext": null }, - "start": 14660, - "end": 14661, + "start": 14675, + "end": 14676, "loc": { "start": { "line": 835, @@ -99373,8 +99774,8 @@ "binop": null }, "value": "y", - "start": 14661, - "end": 14662, + "start": 14676, + "end": 14677, "loc": { "start": { "line": 835, @@ -99399,8 +99800,8 @@ "binop": null, "updateContext": null }, - "start": 14662, - "end": 14663, + "start": 14677, + "end": 14678, "loc": { "start": { "line": 835, @@ -99425,8 +99826,8 @@ "binop": null }, "value": "Math", - "start": 14664, - "end": 14668, + "start": 14679, + "end": 14683, "loc": { "start": { "line": 835, @@ -99451,8 +99852,8 @@ "binop": null, "updateContext": null }, - "start": 14668, - "end": 14669, + "start": 14683, + "end": 14684, "loc": { "start": { "line": 835, @@ -99477,8 +99878,8 @@ "binop": null }, "value": "min", - "start": 14669, - "end": 14672, + "start": 14684, + "end": 14687, "loc": { "start": { "line": 835, @@ -99502,8 +99903,8 @@ "postfix": false, "binop": null }, - "start": 14672, - "end": 14673, + "start": 14687, + "end": 14688, "loc": { "start": { "line": 835, @@ -99528,8 +99929,8 @@ "binop": null }, "value": "max", - "start": 14673, - "end": 14676, + "start": 14688, + "end": 14691, "loc": { "start": { "line": 835, @@ -99554,8 +99955,8 @@ "binop": null, "updateContext": null }, - "start": 14676, - "end": 14677, + "start": 14691, + "end": 14692, "loc": { "start": { "line": 835, @@ -99580,8 +99981,8 @@ "binop": null }, "value": "y", - "start": 14677, - "end": 14678, + "start": 14692, + "end": 14693, "loc": { "start": { "line": 835, @@ -99606,8 +100007,8 @@ "binop": null, "updateContext": null }, - "start": 14678, - "end": 14679, + "start": 14693, + "end": 14694, "loc": { "start": { "line": 835, @@ -99634,8 +100035,8 @@ "updateContext": null }, "value": "this", - "start": 14680, - "end": 14684, + "start": 14695, + "end": 14699, "loc": { "start": { "line": 835, @@ -99660,8 +100061,8 @@ "binop": null, "updateContext": null }, - "start": 14684, - "end": 14685, + "start": 14699, + "end": 14700, "loc": { "start": { "line": 835, @@ -99686,8 +100087,8 @@ "binop": null }, "value": "y", - "start": 14685, - "end": 14686, + "start": 14700, + "end": 14701, "loc": { "start": { "line": 835, @@ -99711,8 +100112,8 @@ "postfix": false, "binop": null }, - "start": 14686, - "end": 14687, + "start": 14701, + "end": 14702, "loc": { "start": { "line": 835, @@ -99736,8 +100137,8 @@ "postfix": false, "binop": null }, - "start": 14687, - "end": 14688, + "start": 14702, + "end": 14703, "loc": { "start": { "line": 835, @@ -99762,8 +100163,8 @@ "binop": null, "updateContext": null }, - "start": 14688, - "end": 14689, + "start": 14703, + "end": 14704, "loc": { "start": { "line": 835, @@ -99790,8 +100191,8 @@ "updateContext": null }, "value": "this", - "start": 14693, - "end": 14697, + "start": 14708, + "end": 14712, "loc": { "start": { "line": 836, @@ -99816,8 +100217,8 @@ "binop": null, "updateContext": null }, - "start": 14697, - "end": 14698, + "start": 14712, + "end": 14713, "loc": { "start": { "line": 836, @@ -99842,8 +100243,8 @@ "binop": null }, "value": "z", - "start": 14698, - "end": 14699, + "start": 14713, + "end": 14714, "loc": { "start": { "line": 836, @@ -99869,8 +100270,8 @@ "updateContext": null }, "value": "=", - "start": 14700, - "end": 14701, + "start": 14715, + "end": 14716, "loc": { "start": { "line": 836, @@ -99895,8 +100296,8 @@ "binop": null }, "value": "Math", - "start": 14702, - "end": 14706, + "start": 14717, + "end": 14721, "loc": { "start": { "line": 836, @@ -99921,8 +100322,8 @@ "binop": null, "updateContext": null }, - "start": 14706, - "end": 14707, + "start": 14721, + "end": 14722, "loc": { "start": { "line": 836, @@ -99947,8 +100348,8 @@ "binop": null }, "value": "max", - "start": 14707, - "end": 14710, + "start": 14722, + "end": 14725, "loc": { "start": { "line": 836, @@ -99972,8 +100373,8 @@ "postfix": false, "binop": null }, - "start": 14710, - "end": 14711, + "start": 14725, + "end": 14726, "loc": { "start": { "line": 836, @@ -99998,8 +100399,8 @@ "binop": null }, "value": "min", - "start": 14711, - "end": 14714, + "start": 14726, + "end": 14729, "loc": { "start": { "line": 836, @@ -100024,8 +100425,8 @@ "binop": null, "updateContext": null }, - "start": 14714, - "end": 14715, + "start": 14729, + "end": 14730, "loc": { "start": { "line": 836, @@ -100050,8 +100451,8 @@ "binop": null }, "value": "z", - "start": 14715, - "end": 14716, + "start": 14730, + "end": 14731, "loc": { "start": { "line": 836, @@ -100076,8 +100477,8 @@ "binop": null, "updateContext": null }, - "start": 14716, - "end": 14717, + "start": 14731, + "end": 14732, "loc": { "start": { "line": 836, @@ -100102,8 +100503,8 @@ "binop": null }, "value": "Math", - "start": 14718, - "end": 14722, + "start": 14733, + "end": 14737, "loc": { "start": { "line": 836, @@ -100128,8 +100529,8 @@ "binop": null, "updateContext": null }, - "start": 14722, - "end": 14723, + "start": 14737, + "end": 14738, "loc": { "start": { "line": 836, @@ -100154,8 +100555,8 @@ "binop": null }, "value": "min", - "start": 14723, - "end": 14726, + "start": 14738, + "end": 14741, "loc": { "start": { "line": 836, @@ -100179,8 +100580,8 @@ "postfix": false, "binop": null }, - "start": 14726, - "end": 14727, + "start": 14741, + "end": 14742, "loc": { "start": { "line": 836, @@ -100205,8 +100606,8 @@ "binop": null }, "value": "max", - "start": 14727, - "end": 14730, + "start": 14742, + "end": 14745, "loc": { "start": { "line": 836, @@ -100231,8 +100632,8 @@ "binop": null, "updateContext": null }, - "start": 14730, - "end": 14731, + "start": 14745, + "end": 14746, "loc": { "start": { "line": 836, @@ -100257,8 +100658,8 @@ "binop": null }, "value": "z", - "start": 14731, - "end": 14732, + "start": 14746, + "end": 14747, "loc": { "start": { "line": 836, @@ -100283,8 +100684,8 @@ "binop": null, "updateContext": null }, - "start": 14732, - "end": 14733, + "start": 14747, + "end": 14748, "loc": { "start": { "line": 836, @@ -100311,8 +100712,8 @@ "updateContext": null }, "value": "this", - "start": 14734, - "end": 14738, + "start": 14749, + "end": 14753, "loc": { "start": { "line": 836, @@ -100337,8 +100738,8 @@ "binop": null, "updateContext": null }, - "start": 14738, - "end": 14739, + "start": 14753, + "end": 14754, "loc": { "start": { "line": 836, @@ -100363,8 +100764,8 @@ "binop": null }, "value": "z", - "start": 14739, - "end": 14740, + "start": 14754, + "end": 14755, "loc": { "start": { "line": 836, @@ -100388,8 +100789,8 @@ "postfix": false, "binop": null }, - "start": 14740, - "end": 14741, + "start": 14755, + "end": 14756, "loc": { "start": { "line": 836, @@ -100413,8 +100814,8 @@ "postfix": false, "binop": null }, - "start": 14741, - "end": 14742, + "start": 14756, + "end": 14757, "loc": { "start": { "line": 836, @@ -100439,8 +100840,8 @@ "binop": null, "updateContext": null }, - "start": 14742, - "end": 14743, + "start": 14757, + "end": 14758, "loc": { "start": { "line": 836, @@ -100467,8 +100868,8 @@ "updateContext": null }, "value": "return", - "start": 14749, - "end": 14755, + "start": 14764, + "end": 14770, "loc": { "start": { "line": 838, @@ -100495,8 +100896,8 @@ "updateContext": null }, "value": "this", - "start": 14756, - "end": 14760, + "start": 14771, + "end": 14775, "loc": { "start": { "line": 838, @@ -100521,8 +100922,8 @@ "binop": null, "updateContext": null }, - "start": 14760, - "end": 14761, + "start": 14775, + "end": 14776, "loc": { "start": { "line": 838, @@ -100546,8 +100947,8 @@ "postfix": false, "binop": null }, - "start": 14766, - "end": 14767, + "start": 14781, + "end": 14782, "loc": { "start": { "line": 840, @@ -100562,8 +100963,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Floors this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 14772, - "end": 14847, + "start": 14787, + "end": 14862, "loc": { "start": { "line": 842, @@ -100588,8 +100989,8 @@ "binop": null }, "value": "floor", - "start": 14852, - "end": 14857, + "start": 14867, + "end": 14872, "loc": { "start": { "line": 848, @@ -100613,8 +101014,8 @@ "postfix": false, "binop": null }, - "start": 14857, - "end": 14858, + "start": 14872, + "end": 14873, "loc": { "start": { "line": 848, @@ -100638,8 +101039,8 @@ "postfix": false, "binop": null }, - "start": 14858, - "end": 14859, + "start": 14873, + "end": 14874, "loc": { "start": { "line": 848, @@ -100663,8 +101064,8 @@ "postfix": false, "binop": null }, - "start": 14860, - "end": 14861, + "start": 14875, + "end": 14876, "loc": { "start": { "line": 848, @@ -100691,8 +101092,8 @@ "updateContext": null }, "value": "this", - "start": 14867, - "end": 14871, + "start": 14882, + "end": 14886, "loc": { "start": { "line": 850, @@ -100717,8 +101118,8 @@ "binop": null, "updateContext": null }, - "start": 14871, - "end": 14872, + "start": 14886, + "end": 14887, "loc": { "start": { "line": 850, @@ -100743,8 +101144,8 @@ "binop": null }, "value": "x", - "start": 14872, - "end": 14873, + "start": 14887, + "end": 14888, "loc": { "start": { "line": 850, @@ -100770,8 +101171,8 @@ "updateContext": null }, "value": "=", - "start": 14874, - "end": 14875, + "start": 14889, + "end": 14890, "loc": { "start": { "line": 850, @@ -100796,8 +101197,8 @@ "binop": null }, "value": "Math", - "start": 14876, - "end": 14880, + "start": 14891, + "end": 14895, "loc": { "start": { "line": 850, @@ -100822,8 +101223,8 @@ "binop": null, "updateContext": null }, - "start": 14880, - "end": 14881, + "start": 14895, + "end": 14896, "loc": { "start": { "line": 850, @@ -100848,8 +101249,8 @@ "binop": null }, "value": "floor", - "start": 14881, - "end": 14886, + "start": 14896, + "end": 14901, "loc": { "start": { "line": 850, @@ -100873,8 +101274,8 @@ "postfix": false, "binop": null }, - "start": 14886, - "end": 14887, + "start": 14901, + "end": 14902, "loc": { "start": { "line": 850, @@ -100901,8 +101302,8 @@ "updateContext": null }, "value": "this", - "start": 14887, - "end": 14891, + "start": 14902, + "end": 14906, "loc": { "start": { "line": 850, @@ -100927,8 +101328,8 @@ "binop": null, "updateContext": null }, - "start": 14891, - "end": 14892, + "start": 14906, + "end": 14907, "loc": { "start": { "line": 850, @@ -100953,8 +101354,8 @@ "binop": null }, "value": "x", - "start": 14892, - "end": 14893, + "start": 14907, + "end": 14908, "loc": { "start": { "line": 850, @@ -100978,8 +101379,8 @@ "postfix": false, "binop": null }, - "start": 14893, - "end": 14894, + "start": 14908, + "end": 14909, "loc": { "start": { "line": 850, @@ -101004,8 +101405,8 @@ "binop": null, "updateContext": null }, - "start": 14894, - "end": 14895, + "start": 14909, + "end": 14910, "loc": { "start": { "line": 850, @@ -101032,8 +101433,8 @@ "updateContext": null }, "value": "this", - "start": 14899, - "end": 14903, + "start": 14914, + "end": 14918, "loc": { "start": { "line": 851, @@ -101058,8 +101459,8 @@ "binop": null, "updateContext": null }, - "start": 14903, - "end": 14904, + "start": 14918, + "end": 14919, "loc": { "start": { "line": 851, @@ -101084,8 +101485,8 @@ "binop": null }, "value": "y", - "start": 14904, - "end": 14905, + "start": 14919, + "end": 14920, "loc": { "start": { "line": 851, @@ -101111,8 +101512,8 @@ "updateContext": null }, "value": "=", - "start": 14906, - "end": 14907, + "start": 14921, + "end": 14922, "loc": { "start": { "line": 851, @@ -101137,8 +101538,8 @@ "binop": null }, "value": "Math", - "start": 14908, - "end": 14912, + "start": 14923, + "end": 14927, "loc": { "start": { "line": 851, @@ -101163,8 +101564,8 @@ "binop": null, "updateContext": null }, - "start": 14912, - "end": 14913, + "start": 14927, + "end": 14928, "loc": { "start": { "line": 851, @@ -101189,8 +101590,8 @@ "binop": null }, "value": "floor", - "start": 14913, - "end": 14918, + "start": 14928, + "end": 14933, "loc": { "start": { "line": 851, @@ -101214,8 +101615,8 @@ "postfix": false, "binop": null }, - "start": 14918, - "end": 14919, + "start": 14933, + "end": 14934, "loc": { "start": { "line": 851, @@ -101242,8 +101643,8 @@ "updateContext": null }, "value": "this", - "start": 14919, - "end": 14923, + "start": 14934, + "end": 14938, "loc": { "start": { "line": 851, @@ -101268,8 +101669,8 @@ "binop": null, "updateContext": null }, - "start": 14923, - "end": 14924, + "start": 14938, + "end": 14939, "loc": { "start": { "line": 851, @@ -101294,8 +101695,8 @@ "binop": null }, "value": "y", - "start": 14924, - "end": 14925, + "start": 14939, + "end": 14940, "loc": { "start": { "line": 851, @@ -101319,8 +101720,8 @@ "postfix": false, "binop": null }, - "start": 14925, - "end": 14926, + "start": 14940, + "end": 14941, "loc": { "start": { "line": 851, @@ -101345,8 +101746,8 @@ "binop": null, "updateContext": null }, - "start": 14926, - "end": 14927, + "start": 14941, + "end": 14942, "loc": { "start": { "line": 851, @@ -101373,8 +101774,8 @@ "updateContext": null }, "value": "this", - "start": 14931, - "end": 14935, + "start": 14946, + "end": 14950, "loc": { "start": { "line": 852, @@ -101399,8 +101800,8 @@ "binop": null, "updateContext": null }, - "start": 14935, - "end": 14936, + "start": 14950, + "end": 14951, "loc": { "start": { "line": 852, @@ -101425,8 +101826,8 @@ "binop": null }, "value": "z", - "start": 14936, - "end": 14937, + "start": 14951, + "end": 14952, "loc": { "start": { "line": 852, @@ -101452,8 +101853,8 @@ "updateContext": null }, "value": "=", - "start": 14938, - "end": 14939, + "start": 14953, + "end": 14954, "loc": { "start": { "line": 852, @@ -101478,8 +101879,8 @@ "binop": null }, "value": "Math", - "start": 14940, - "end": 14944, + "start": 14955, + "end": 14959, "loc": { "start": { "line": 852, @@ -101504,8 +101905,8 @@ "binop": null, "updateContext": null }, - "start": 14944, - "end": 14945, + "start": 14959, + "end": 14960, "loc": { "start": { "line": 852, @@ -101530,8 +101931,8 @@ "binop": null }, "value": "floor", - "start": 14945, - "end": 14950, + "start": 14960, + "end": 14965, "loc": { "start": { "line": 852, @@ -101555,8 +101956,8 @@ "postfix": false, "binop": null }, - "start": 14950, - "end": 14951, + "start": 14965, + "end": 14966, "loc": { "start": { "line": 852, @@ -101583,8 +101984,8 @@ "updateContext": null }, "value": "this", - "start": 14951, - "end": 14955, + "start": 14966, + "end": 14970, "loc": { "start": { "line": 852, @@ -101609,8 +102010,8 @@ "binop": null, "updateContext": null }, - "start": 14955, - "end": 14956, + "start": 14970, + "end": 14971, "loc": { "start": { "line": 852, @@ -101635,8 +102036,8 @@ "binop": null }, "value": "z", - "start": 14956, - "end": 14957, + "start": 14971, + "end": 14972, "loc": { "start": { "line": 852, @@ -101660,8 +102061,8 @@ "postfix": false, "binop": null }, - "start": 14957, - "end": 14958, + "start": 14972, + "end": 14973, "loc": { "start": { "line": 852, @@ -101686,8 +102087,8 @@ "binop": null, "updateContext": null }, - "start": 14958, - "end": 14959, + "start": 14973, + "end": 14974, "loc": { "start": { "line": 852, @@ -101714,8 +102115,8 @@ "updateContext": null }, "value": "return", - "start": 14965, - "end": 14971, + "start": 14980, + "end": 14986, "loc": { "start": { "line": 854, @@ -101742,8 +102143,8 @@ "updateContext": null }, "value": "this", - "start": 14972, - "end": 14976, + "start": 14987, + "end": 14991, "loc": { "start": { "line": 854, @@ -101768,8 +102169,8 @@ "binop": null, "updateContext": null }, - "start": 14976, - "end": 14977, + "start": 14991, + "end": 14992, "loc": { "start": { "line": 854, @@ -101793,8 +102194,8 @@ "postfix": false, "binop": null }, - "start": 14982, - "end": 14983, + "start": 14997, + "end": 14998, "loc": { "start": { "line": 856, @@ -101809,8 +102210,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Ceils this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 14988, - "end": 15062, + "start": 15003, + "end": 15077, "loc": { "start": { "line": 858, @@ -101835,8 +102236,8 @@ "binop": null }, "value": "ceil", - "start": 15067, - "end": 15071, + "start": 15082, + "end": 15086, "loc": { "start": { "line": 864, @@ -101860,8 +102261,8 @@ "postfix": false, "binop": null }, - "start": 15071, - "end": 15072, + "start": 15086, + "end": 15087, "loc": { "start": { "line": 864, @@ -101885,8 +102286,8 @@ "postfix": false, "binop": null }, - "start": 15072, - "end": 15073, + "start": 15087, + "end": 15088, "loc": { "start": { "line": 864, @@ -101910,8 +102311,8 @@ "postfix": false, "binop": null }, - "start": 15074, - "end": 15075, + "start": 15089, + "end": 15090, "loc": { "start": { "line": 864, @@ -101938,8 +102339,8 @@ "updateContext": null }, "value": "this", - "start": 15081, - "end": 15085, + "start": 15096, + "end": 15100, "loc": { "start": { "line": 866, @@ -101964,8 +102365,8 @@ "binop": null, "updateContext": null }, - "start": 15085, - "end": 15086, + "start": 15100, + "end": 15101, "loc": { "start": { "line": 866, @@ -101990,8 +102391,8 @@ "binop": null }, "value": "x", - "start": 15086, - "end": 15087, + "start": 15101, + "end": 15102, "loc": { "start": { "line": 866, @@ -102017,8 +102418,8 @@ "updateContext": null }, "value": "=", - "start": 15088, - "end": 15089, + "start": 15103, + "end": 15104, "loc": { "start": { "line": 866, @@ -102043,8 +102444,8 @@ "binop": null }, "value": "Math", - "start": 15090, - "end": 15094, + "start": 15105, + "end": 15109, "loc": { "start": { "line": 866, @@ -102069,8 +102470,8 @@ "binop": null, "updateContext": null }, - "start": 15094, - "end": 15095, + "start": 15109, + "end": 15110, "loc": { "start": { "line": 866, @@ -102095,8 +102496,8 @@ "binop": null }, "value": "ceil", - "start": 15095, - "end": 15099, + "start": 15110, + "end": 15114, "loc": { "start": { "line": 866, @@ -102120,8 +102521,8 @@ "postfix": false, "binop": null }, - "start": 15099, - "end": 15100, + "start": 15114, + "end": 15115, "loc": { "start": { "line": 866, @@ -102148,8 +102549,8 @@ "updateContext": null }, "value": "this", - "start": 15100, - "end": 15104, + "start": 15115, + "end": 15119, "loc": { "start": { "line": 866, @@ -102174,8 +102575,8 @@ "binop": null, "updateContext": null }, - "start": 15104, - "end": 15105, + "start": 15119, + "end": 15120, "loc": { "start": { "line": 866, @@ -102200,8 +102601,8 @@ "binop": null }, "value": "x", - "start": 15105, - "end": 15106, + "start": 15120, + "end": 15121, "loc": { "start": { "line": 866, @@ -102225,8 +102626,8 @@ "postfix": false, "binop": null }, - "start": 15106, - "end": 15107, + "start": 15121, + "end": 15122, "loc": { "start": { "line": 866, @@ -102251,8 +102652,8 @@ "binop": null, "updateContext": null }, - "start": 15107, - "end": 15108, + "start": 15122, + "end": 15123, "loc": { "start": { "line": 866, @@ -102279,8 +102680,8 @@ "updateContext": null }, "value": "this", - "start": 15112, - "end": 15116, + "start": 15127, + "end": 15131, "loc": { "start": { "line": 867, @@ -102305,8 +102706,8 @@ "binop": null, "updateContext": null }, - "start": 15116, - "end": 15117, + "start": 15131, + "end": 15132, "loc": { "start": { "line": 867, @@ -102331,8 +102732,8 @@ "binop": null }, "value": "y", - "start": 15117, - "end": 15118, + "start": 15132, + "end": 15133, "loc": { "start": { "line": 867, @@ -102358,8 +102759,8 @@ "updateContext": null }, "value": "=", - "start": 15119, - "end": 15120, + "start": 15134, + "end": 15135, "loc": { "start": { "line": 867, @@ -102384,8 +102785,8 @@ "binop": null }, "value": "Math", - "start": 15121, - "end": 15125, + "start": 15136, + "end": 15140, "loc": { "start": { "line": 867, @@ -102410,8 +102811,8 @@ "binop": null, "updateContext": null }, - "start": 15125, - "end": 15126, + "start": 15140, + "end": 15141, "loc": { "start": { "line": 867, @@ -102436,8 +102837,8 @@ "binop": null }, "value": "ceil", - "start": 15126, - "end": 15130, + "start": 15141, + "end": 15145, "loc": { "start": { "line": 867, @@ -102461,8 +102862,8 @@ "postfix": false, "binop": null }, - "start": 15130, - "end": 15131, + "start": 15145, + "end": 15146, "loc": { "start": { "line": 867, @@ -102489,8 +102890,8 @@ "updateContext": null }, "value": "this", - "start": 15131, - "end": 15135, + "start": 15146, + "end": 15150, "loc": { "start": { "line": 867, @@ -102515,8 +102916,8 @@ "binop": null, "updateContext": null }, - "start": 15135, - "end": 15136, + "start": 15150, + "end": 15151, "loc": { "start": { "line": 867, @@ -102541,8 +102942,8 @@ "binop": null }, "value": "y", - "start": 15136, - "end": 15137, + "start": 15151, + "end": 15152, "loc": { "start": { "line": 867, @@ -102566,8 +102967,8 @@ "postfix": false, "binop": null }, - "start": 15137, - "end": 15138, + "start": 15152, + "end": 15153, "loc": { "start": { "line": 867, @@ -102592,8 +102993,8 @@ "binop": null, "updateContext": null }, - "start": 15138, - "end": 15139, + "start": 15153, + "end": 15154, "loc": { "start": { "line": 867, @@ -102620,8 +103021,8 @@ "updateContext": null }, "value": "this", - "start": 15143, - "end": 15147, + "start": 15158, + "end": 15162, "loc": { "start": { "line": 868, @@ -102646,8 +103047,8 @@ "binop": null, "updateContext": null }, - "start": 15147, - "end": 15148, + "start": 15162, + "end": 15163, "loc": { "start": { "line": 868, @@ -102672,8 +103073,8 @@ "binop": null }, "value": "z", - "start": 15148, - "end": 15149, + "start": 15163, + "end": 15164, "loc": { "start": { "line": 868, @@ -102699,8 +103100,8 @@ "updateContext": null }, "value": "=", - "start": 15150, - "end": 15151, + "start": 15165, + "end": 15166, "loc": { "start": { "line": 868, @@ -102725,8 +103126,8 @@ "binop": null }, "value": "Math", - "start": 15152, - "end": 15156, + "start": 15167, + "end": 15171, "loc": { "start": { "line": 868, @@ -102751,8 +103152,8 @@ "binop": null, "updateContext": null }, - "start": 15156, - "end": 15157, + "start": 15171, + "end": 15172, "loc": { "start": { "line": 868, @@ -102777,8 +103178,8 @@ "binop": null }, "value": "ceil", - "start": 15157, - "end": 15161, + "start": 15172, + "end": 15176, "loc": { "start": { "line": 868, @@ -102802,8 +103203,8 @@ "postfix": false, "binop": null }, - "start": 15161, - "end": 15162, + "start": 15176, + "end": 15177, "loc": { "start": { "line": 868, @@ -102830,8 +103231,8 @@ "updateContext": null }, "value": "this", - "start": 15162, - "end": 15166, + "start": 15177, + "end": 15181, "loc": { "start": { "line": 868, @@ -102856,8 +103257,8 @@ "binop": null, "updateContext": null }, - "start": 15166, - "end": 15167, + "start": 15181, + "end": 15182, "loc": { "start": { "line": 868, @@ -102882,8 +103283,8 @@ "binop": null }, "value": "z", - "start": 15167, - "end": 15168, + "start": 15182, + "end": 15183, "loc": { "start": { "line": 868, @@ -102907,8 +103308,8 @@ "postfix": false, "binop": null }, - "start": 15168, - "end": 15169, + "start": 15183, + "end": 15184, "loc": { "start": { "line": 868, @@ -102933,8 +103334,8 @@ "binop": null, "updateContext": null }, - "start": 15169, - "end": 15170, + "start": 15184, + "end": 15185, "loc": { "start": { "line": 868, @@ -102961,8 +103362,8 @@ "updateContext": null }, "value": "return", - "start": 15176, - "end": 15182, + "start": 15191, + "end": 15197, "loc": { "start": { "line": 870, @@ -102989,8 +103390,8 @@ "updateContext": null }, "value": "this", - "start": 15183, - "end": 15187, + "start": 15198, + "end": 15202, "loc": { "start": { "line": 870, @@ -103015,8 +103416,8 @@ "binop": null, "updateContext": null }, - "start": 15187, - "end": 15188, + "start": 15202, + "end": 15203, "loc": { "start": { "line": 870, @@ -103040,8 +103441,8 @@ "postfix": false, "binop": null }, - "start": 15193, - "end": 15194, + "start": 15208, + "end": 15209, "loc": { "start": { "line": 872, @@ -103056,8 +103457,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Rounds this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 15199, - "end": 15274, + "start": 15214, + "end": 15289, "loc": { "start": { "line": 874, @@ -103082,8 +103483,8 @@ "binop": null }, "value": "round", - "start": 15279, - "end": 15284, + "start": 15294, + "end": 15299, "loc": { "start": { "line": 880, @@ -103107,8 +103508,8 @@ "postfix": false, "binop": null }, - "start": 15284, - "end": 15285, + "start": 15299, + "end": 15300, "loc": { "start": { "line": 880, @@ -103132,8 +103533,8 @@ "postfix": false, "binop": null }, - "start": 15285, - "end": 15286, + "start": 15300, + "end": 15301, "loc": { "start": { "line": 880, @@ -103157,8 +103558,8 @@ "postfix": false, "binop": null }, - "start": 15287, - "end": 15288, + "start": 15302, + "end": 15303, "loc": { "start": { "line": 880, @@ -103185,8 +103586,8 @@ "updateContext": null }, "value": "this", - "start": 15294, - "end": 15298, + "start": 15309, + "end": 15313, "loc": { "start": { "line": 882, @@ -103211,8 +103612,8 @@ "binop": null, "updateContext": null }, - "start": 15298, - "end": 15299, + "start": 15313, + "end": 15314, "loc": { "start": { "line": 882, @@ -103237,8 +103638,8 @@ "binop": null }, "value": "x", - "start": 15299, - "end": 15300, + "start": 15314, + "end": 15315, "loc": { "start": { "line": 882, @@ -103264,8 +103665,8 @@ "updateContext": null }, "value": "=", - "start": 15301, - "end": 15302, + "start": 15316, + "end": 15317, "loc": { "start": { "line": 882, @@ -103290,8 +103691,8 @@ "binop": null }, "value": "Math", - "start": 15303, - "end": 15307, + "start": 15318, + "end": 15322, "loc": { "start": { "line": 882, @@ -103316,8 +103717,8 @@ "binop": null, "updateContext": null }, - "start": 15307, - "end": 15308, + "start": 15322, + "end": 15323, "loc": { "start": { "line": 882, @@ -103342,8 +103743,8 @@ "binop": null }, "value": "round", - "start": 15308, - "end": 15313, + "start": 15323, + "end": 15328, "loc": { "start": { "line": 882, @@ -103367,8 +103768,8 @@ "postfix": false, "binop": null }, - "start": 15313, - "end": 15314, + "start": 15328, + "end": 15329, "loc": { "start": { "line": 882, @@ -103395,8 +103796,8 @@ "updateContext": null }, "value": "this", - "start": 15314, - "end": 15318, + "start": 15329, + "end": 15333, "loc": { "start": { "line": 882, @@ -103421,8 +103822,8 @@ "binop": null, "updateContext": null }, - "start": 15318, - "end": 15319, + "start": 15333, + "end": 15334, "loc": { "start": { "line": 882, @@ -103447,8 +103848,8 @@ "binop": null }, "value": "x", - "start": 15319, - "end": 15320, + "start": 15334, + "end": 15335, "loc": { "start": { "line": 882, @@ -103472,8 +103873,8 @@ "postfix": false, "binop": null }, - "start": 15320, - "end": 15321, + "start": 15335, + "end": 15336, "loc": { "start": { "line": 882, @@ -103498,8 +103899,8 @@ "binop": null, "updateContext": null }, - "start": 15321, - "end": 15322, + "start": 15336, + "end": 15337, "loc": { "start": { "line": 882, @@ -103526,8 +103927,8 @@ "updateContext": null }, "value": "this", - "start": 15326, - "end": 15330, + "start": 15341, + "end": 15345, "loc": { "start": { "line": 883, @@ -103552,8 +103953,8 @@ "binop": null, "updateContext": null }, - "start": 15330, - "end": 15331, + "start": 15345, + "end": 15346, "loc": { "start": { "line": 883, @@ -103578,8 +103979,8 @@ "binop": null }, "value": "y", - "start": 15331, - "end": 15332, + "start": 15346, + "end": 15347, "loc": { "start": { "line": 883, @@ -103605,8 +104006,8 @@ "updateContext": null }, "value": "=", - "start": 15333, - "end": 15334, + "start": 15348, + "end": 15349, "loc": { "start": { "line": 883, @@ -103631,8 +104032,8 @@ "binop": null }, "value": "Math", - "start": 15335, - "end": 15339, + "start": 15350, + "end": 15354, "loc": { "start": { "line": 883, @@ -103657,8 +104058,8 @@ "binop": null, "updateContext": null }, - "start": 15339, - "end": 15340, + "start": 15354, + "end": 15355, "loc": { "start": { "line": 883, @@ -103683,8 +104084,8 @@ "binop": null }, "value": "round", - "start": 15340, - "end": 15345, + "start": 15355, + "end": 15360, "loc": { "start": { "line": 883, @@ -103708,8 +104109,8 @@ "postfix": false, "binop": null }, - "start": 15345, - "end": 15346, + "start": 15360, + "end": 15361, "loc": { "start": { "line": 883, @@ -103736,8 +104137,8 @@ "updateContext": null }, "value": "this", - "start": 15346, - "end": 15350, + "start": 15361, + "end": 15365, "loc": { "start": { "line": 883, @@ -103762,8 +104163,8 @@ "binop": null, "updateContext": null }, - "start": 15350, - "end": 15351, + "start": 15365, + "end": 15366, "loc": { "start": { "line": 883, @@ -103788,8 +104189,8 @@ "binop": null }, "value": "y", - "start": 15351, - "end": 15352, + "start": 15366, + "end": 15367, "loc": { "start": { "line": 883, @@ -103813,8 +104214,8 @@ "postfix": false, "binop": null }, - "start": 15352, - "end": 15353, + "start": 15367, + "end": 15368, "loc": { "start": { "line": 883, @@ -103839,8 +104240,8 @@ "binop": null, "updateContext": null }, - "start": 15353, - "end": 15354, + "start": 15368, + "end": 15369, "loc": { "start": { "line": 883, @@ -103867,8 +104268,8 @@ "updateContext": null }, "value": "this", - "start": 15358, - "end": 15362, + "start": 15373, + "end": 15377, "loc": { "start": { "line": 884, @@ -103893,8 +104294,8 @@ "binop": null, "updateContext": null }, - "start": 15362, - "end": 15363, + "start": 15377, + "end": 15378, "loc": { "start": { "line": 884, @@ -103919,8 +104320,8 @@ "binop": null }, "value": "z", - "start": 15363, - "end": 15364, + "start": 15378, + "end": 15379, "loc": { "start": { "line": 884, @@ -103946,8 +104347,8 @@ "updateContext": null }, "value": "=", - "start": 15365, - "end": 15366, + "start": 15380, + "end": 15381, "loc": { "start": { "line": 884, @@ -103972,8 +104373,8 @@ "binop": null }, "value": "Math", - "start": 15367, - "end": 15371, + "start": 15382, + "end": 15386, "loc": { "start": { "line": 884, @@ -103998,8 +104399,8 @@ "binop": null, "updateContext": null }, - "start": 15371, - "end": 15372, + "start": 15386, + "end": 15387, "loc": { "start": { "line": 884, @@ -104024,8 +104425,8 @@ "binop": null }, "value": "round", - "start": 15372, - "end": 15377, + "start": 15387, + "end": 15392, "loc": { "start": { "line": 884, @@ -104049,8 +104450,8 @@ "postfix": false, "binop": null }, - "start": 15377, - "end": 15378, + "start": 15392, + "end": 15393, "loc": { "start": { "line": 884, @@ -104077,8 +104478,8 @@ "updateContext": null }, "value": "this", - "start": 15378, - "end": 15382, + "start": 15393, + "end": 15397, "loc": { "start": { "line": 884, @@ -104103,8 +104504,8 @@ "binop": null, "updateContext": null }, - "start": 15382, - "end": 15383, + "start": 15397, + "end": 15398, "loc": { "start": { "line": 884, @@ -104129,8 +104530,8 @@ "binop": null }, "value": "z", - "start": 15383, - "end": 15384, + "start": 15398, + "end": 15399, "loc": { "start": { "line": 884, @@ -104154,8 +104555,8 @@ "postfix": false, "binop": null }, - "start": 15384, - "end": 15385, + "start": 15399, + "end": 15400, "loc": { "start": { "line": 884, @@ -104180,8 +104581,8 @@ "binop": null, "updateContext": null }, - "start": 15385, - "end": 15386, + "start": 15400, + "end": 15401, "loc": { "start": { "line": 884, @@ -104208,8 +104609,8 @@ "updateContext": null }, "value": "return", - "start": 15392, - "end": 15398, + "start": 15407, + "end": 15413, "loc": { "start": { "line": 886, @@ -104236,8 +104637,8 @@ "updateContext": null }, "value": "this", - "start": 15399, - "end": 15403, + "start": 15414, + "end": 15418, "loc": { "start": { "line": 886, @@ -104262,8 +104663,8 @@ "binop": null, "updateContext": null }, - "start": 15403, - "end": 15404, + "start": 15418, + "end": 15419, "loc": { "start": { "line": 886, @@ -104287,8 +104688,8 @@ "postfix": false, "binop": null }, - "start": 15409, - "end": 15410, + "start": 15424, + "end": 15425, "loc": { "start": { "line": 888, @@ -104303,8 +104704,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Lerps towards the given vector.\r\n\t *\r\n\t * @param {Vector3} v - The target vector.\r\n\t * @param {Number} alpha - The lerp factor.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 15415, - "end": 15593, + "start": 15430, + "end": 15608, "loc": { "start": { "line": 890, @@ -104329,8 +104730,8 @@ "binop": null }, "value": "lerp", - "start": 15598, - "end": 15602, + "start": 15613, + "end": 15617, "loc": { "start": { "line": 898, @@ -104354,8 +104755,8 @@ "postfix": false, "binop": null }, - "start": 15602, - "end": 15603, + "start": 15617, + "end": 15618, "loc": { "start": { "line": 898, @@ -104380,8 +104781,8 @@ "binop": null }, "value": "v", - "start": 15603, - "end": 15604, + "start": 15618, + "end": 15619, "loc": { "start": { "line": 898, @@ -104406,8 +104807,8 @@ "binop": null, "updateContext": null }, - "start": 15604, - "end": 15605, + "start": 15619, + "end": 15620, "loc": { "start": { "line": 898, @@ -104432,8 +104833,8 @@ "binop": null }, "value": "alpha", - "start": 15606, - "end": 15611, + "start": 15621, + "end": 15626, "loc": { "start": { "line": 898, @@ -104457,8 +104858,8 @@ "postfix": false, "binop": null }, - "start": 15611, - "end": 15612, + "start": 15626, + "end": 15627, "loc": { "start": { "line": 898, @@ -104482,8 +104883,8 @@ "postfix": false, "binop": null }, - "start": 15613, - "end": 15614, + "start": 15628, + "end": 15629, "loc": { "start": { "line": 898, @@ -104510,8 +104911,8 @@ "updateContext": null }, "value": "this", - "start": 15620, - "end": 15624, + "start": 15635, + "end": 15639, "loc": { "start": { "line": 900, @@ -104536,8 +104937,8 @@ "binop": null, "updateContext": null }, - "start": 15624, - "end": 15625, + "start": 15639, + "end": 15640, "loc": { "start": { "line": 900, @@ -104562,8 +104963,8 @@ "binop": null }, "value": "x", - "start": 15625, - "end": 15626, + "start": 15640, + "end": 15641, "loc": { "start": { "line": 900, @@ -104589,8 +104990,8 @@ "updateContext": null }, "value": "+=", - "start": 15627, - "end": 15629, + "start": 15642, + "end": 15644, "loc": { "start": { "line": 900, @@ -104614,8 +105015,8 @@ "postfix": false, "binop": null }, - "start": 15630, - "end": 15631, + "start": 15645, + "end": 15646, "loc": { "start": { "line": 900, @@ -104640,8 +105041,8 @@ "binop": null }, "value": "v", - "start": 15631, - "end": 15632, + "start": 15646, + "end": 15647, "loc": { "start": { "line": 900, @@ -104666,8 +105067,8 @@ "binop": null, "updateContext": null }, - "start": 15632, - "end": 15633, + "start": 15647, + "end": 15648, "loc": { "start": { "line": 900, @@ -104692,8 +105093,8 @@ "binop": null }, "value": "x", - "start": 15633, - "end": 15634, + "start": 15648, + "end": 15649, "loc": { "start": { "line": 900, @@ -104719,8 +105120,8 @@ "updateContext": null }, "value": "-", - "start": 15635, - "end": 15636, + "start": 15650, + "end": 15651, "loc": { "start": { "line": 900, @@ -104747,8 +105148,8 @@ "updateContext": null }, "value": "this", - "start": 15637, - "end": 15641, + "start": 15652, + "end": 15656, "loc": { "start": { "line": 900, @@ -104773,8 +105174,8 @@ "binop": null, "updateContext": null }, - "start": 15641, - "end": 15642, + "start": 15656, + "end": 15657, "loc": { "start": { "line": 900, @@ -104799,8 +105200,8 @@ "binop": null }, "value": "x", - "start": 15642, - "end": 15643, + "start": 15657, + "end": 15658, "loc": { "start": { "line": 900, @@ -104824,8 +105225,8 @@ "postfix": false, "binop": null }, - "start": 15643, - "end": 15644, + "start": 15658, + "end": 15659, "loc": { "start": { "line": 900, @@ -104851,8 +105252,8 @@ "updateContext": null }, "value": "*", - "start": 15645, - "end": 15646, + "start": 15660, + "end": 15661, "loc": { "start": { "line": 900, @@ -104877,8 +105278,8 @@ "binop": null }, "value": "alpha", - "start": 15647, - "end": 15652, + "start": 15662, + "end": 15667, "loc": { "start": { "line": 900, @@ -104903,8 +105304,8 @@ "binop": null, "updateContext": null }, - "start": 15652, - "end": 15653, + "start": 15667, + "end": 15668, "loc": { "start": { "line": 900, @@ -104931,8 +105332,8 @@ "updateContext": null }, "value": "this", - "start": 15657, - "end": 15661, + "start": 15672, + "end": 15676, "loc": { "start": { "line": 901, @@ -104957,8 +105358,8 @@ "binop": null, "updateContext": null }, - "start": 15661, - "end": 15662, + "start": 15676, + "end": 15677, "loc": { "start": { "line": 901, @@ -104983,8 +105384,8 @@ "binop": null }, "value": "y", - "start": 15662, - "end": 15663, + "start": 15677, + "end": 15678, "loc": { "start": { "line": 901, @@ -105010,8 +105411,8 @@ "updateContext": null }, "value": "+=", - "start": 15664, - "end": 15666, + "start": 15679, + "end": 15681, "loc": { "start": { "line": 901, @@ -105035,8 +105436,8 @@ "postfix": false, "binop": null }, - "start": 15667, - "end": 15668, + "start": 15682, + "end": 15683, "loc": { "start": { "line": 901, @@ -105061,8 +105462,8 @@ "binop": null }, "value": "v", - "start": 15668, - "end": 15669, + "start": 15683, + "end": 15684, "loc": { "start": { "line": 901, @@ -105087,8 +105488,8 @@ "binop": null, "updateContext": null }, - "start": 15669, - "end": 15670, + "start": 15684, + "end": 15685, "loc": { "start": { "line": 901, @@ -105113,8 +105514,8 @@ "binop": null }, "value": "y", - "start": 15670, - "end": 15671, + "start": 15685, + "end": 15686, "loc": { "start": { "line": 901, @@ -105140,8 +105541,8 @@ "updateContext": null }, "value": "-", - "start": 15672, - "end": 15673, + "start": 15687, + "end": 15688, "loc": { "start": { "line": 901, @@ -105168,8 +105569,8 @@ "updateContext": null }, "value": "this", - "start": 15674, - "end": 15678, + "start": 15689, + "end": 15693, "loc": { "start": { "line": 901, @@ -105194,8 +105595,8 @@ "binop": null, "updateContext": null }, - "start": 15678, - "end": 15679, + "start": 15693, + "end": 15694, "loc": { "start": { "line": 901, @@ -105220,8 +105621,8 @@ "binop": null }, "value": "y", - "start": 15679, - "end": 15680, + "start": 15694, + "end": 15695, "loc": { "start": { "line": 901, @@ -105245,8 +105646,8 @@ "postfix": false, "binop": null }, - "start": 15680, - "end": 15681, + "start": 15695, + "end": 15696, "loc": { "start": { "line": 901, @@ -105272,8 +105673,8 @@ "updateContext": null }, "value": "*", - "start": 15682, - "end": 15683, + "start": 15697, + "end": 15698, "loc": { "start": { "line": 901, @@ -105298,8 +105699,8 @@ "binop": null }, "value": "alpha", - "start": 15684, - "end": 15689, + "start": 15699, + "end": 15704, "loc": { "start": { "line": 901, @@ -105324,8 +105725,8 @@ "binop": null, "updateContext": null }, - "start": 15689, - "end": 15690, + "start": 15704, + "end": 15705, "loc": { "start": { "line": 901, @@ -105352,8 +105753,8 @@ "updateContext": null }, "value": "this", - "start": 15694, - "end": 15698, + "start": 15709, + "end": 15713, "loc": { "start": { "line": 902, @@ -105378,8 +105779,8 @@ "binop": null, "updateContext": null }, - "start": 15698, - "end": 15699, + "start": 15713, + "end": 15714, "loc": { "start": { "line": 902, @@ -105404,8 +105805,8 @@ "binop": null }, "value": "z", - "start": 15699, - "end": 15700, + "start": 15714, + "end": 15715, "loc": { "start": { "line": 902, @@ -105431,8 +105832,8 @@ "updateContext": null }, "value": "+=", - "start": 15701, - "end": 15703, + "start": 15716, + "end": 15718, "loc": { "start": { "line": 902, @@ -105456,8 +105857,8 @@ "postfix": false, "binop": null }, - "start": 15704, - "end": 15705, + "start": 15719, + "end": 15720, "loc": { "start": { "line": 902, @@ -105482,8 +105883,8 @@ "binop": null }, "value": "v", - "start": 15705, - "end": 15706, + "start": 15720, + "end": 15721, "loc": { "start": { "line": 902, @@ -105508,8 +105909,8 @@ "binop": null, "updateContext": null }, - "start": 15706, - "end": 15707, + "start": 15721, + "end": 15722, "loc": { "start": { "line": 902, @@ -105534,8 +105935,8 @@ "binop": null }, "value": "z", - "start": 15707, - "end": 15708, + "start": 15722, + "end": 15723, "loc": { "start": { "line": 902, @@ -105561,8 +105962,8 @@ "updateContext": null }, "value": "-", - "start": 15709, - "end": 15710, + "start": 15724, + "end": 15725, "loc": { "start": { "line": 902, @@ -105589,8 +105990,8 @@ "updateContext": null }, "value": "this", - "start": 15711, - "end": 15715, + "start": 15726, + "end": 15730, "loc": { "start": { "line": 902, @@ -105615,8 +106016,8 @@ "binop": null, "updateContext": null }, - "start": 15715, - "end": 15716, + "start": 15730, + "end": 15731, "loc": { "start": { "line": 902, @@ -105641,8 +106042,8 @@ "binop": null }, "value": "z", - "start": 15716, - "end": 15717, + "start": 15731, + "end": 15732, "loc": { "start": { "line": 902, @@ -105666,8 +106067,8 @@ "postfix": false, "binop": null }, - "start": 15717, - "end": 15718, + "start": 15732, + "end": 15733, "loc": { "start": { "line": 902, @@ -105693,8 +106094,8 @@ "updateContext": null }, "value": "*", - "start": 15719, - "end": 15720, + "start": 15734, + "end": 15735, "loc": { "start": { "line": 902, @@ -105719,8 +106120,8 @@ "binop": null }, "value": "alpha", - "start": 15721, - "end": 15726, + "start": 15736, + "end": 15741, "loc": { "start": { "line": 902, @@ -105745,8 +106146,8 @@ "binop": null, "updateContext": null }, - "start": 15726, - "end": 15727, + "start": 15741, + "end": 15742, "loc": { "start": { "line": 902, @@ -105773,8 +106174,8 @@ "updateContext": null }, "value": "return", - "start": 15733, - "end": 15739, + "start": 15748, + "end": 15754, "loc": { "start": { "line": 904, @@ -105801,8 +106202,8 @@ "updateContext": null }, "value": "this", - "start": 15740, - "end": 15744, + "start": 15755, + "end": 15759, "loc": { "start": { "line": 904, @@ -105827,8 +106228,8 @@ "binop": null, "updateContext": null }, - "start": 15744, - "end": 15745, + "start": 15759, + "end": 15760, "loc": { "start": { "line": 904, @@ -105852,8 +106253,8 @@ "postfix": false, "binop": null }, - "start": 15750, - "end": 15751, + "start": 15765, + "end": 15766, "loc": { "start": { "line": 906, @@ -105868,8 +106269,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Sets this vector to the lerp result of the given vectors.\r\n\t *\r\n\t * @param {Vector3} v1 - A base vector.\r\n\t * @param {Vector3} v2 - The target vector.\r\n\t * @param {Number} alpha - The lerp factor.\r\n\t * @return {Vector3} This vector.\r\n\t ", - "start": 15756, - "end": 16003, + "start": 15771, + "end": 16018, "loc": { "start": { "line": 908, @@ -105894,8 +106295,8 @@ "binop": null }, "value": "lerpVectors", - "start": 16008, - "end": 16019, + "start": 16023, + "end": 16034, "loc": { "start": { "line": 917, @@ -105919,8 +106320,8 @@ "postfix": false, "binop": null }, - "start": 16019, - "end": 16020, + "start": 16034, + "end": 16035, "loc": { "start": { "line": 917, @@ -105945,8 +106346,8 @@ "binop": null }, "value": "v1", - "start": 16020, - "end": 16022, + "start": 16035, + "end": 16037, "loc": { "start": { "line": 917, @@ -105971,8 +106372,8 @@ "binop": null, "updateContext": null }, - "start": 16022, - "end": 16023, + "start": 16037, + "end": 16038, "loc": { "start": { "line": 917, @@ -105997,8 +106398,8 @@ "binop": null }, "value": "v2", - "start": 16024, - "end": 16026, + "start": 16039, + "end": 16041, "loc": { "start": { "line": 917, @@ -106023,8 +106424,8 @@ "binop": null, "updateContext": null }, - "start": 16026, - "end": 16027, + "start": 16041, + "end": 16042, "loc": { "start": { "line": 917, @@ -106049,8 +106450,8 @@ "binop": null }, "value": "alpha", - "start": 16028, - "end": 16033, + "start": 16043, + "end": 16048, "loc": { "start": { "line": 917, @@ -106074,8 +106475,8 @@ "postfix": false, "binop": null }, - "start": 16033, - "end": 16034, + "start": 16048, + "end": 16049, "loc": { "start": { "line": 917, @@ -106099,8 +106500,8 @@ "postfix": false, "binop": null }, - "start": 16035, - "end": 16036, + "start": 16050, + "end": 16051, "loc": { "start": { "line": 917, @@ -106127,8 +106528,8 @@ "updateContext": null }, "value": "return", - "start": 16042, - "end": 16048, + "start": 16057, + "end": 16063, "loc": { "start": { "line": 919, @@ -106155,8 +106556,8 @@ "updateContext": null }, "value": "this", - "start": 16049, - "end": 16053, + "start": 16064, + "end": 16068, "loc": { "start": { "line": 919, @@ -106181,8 +106582,8 @@ "binop": null, "updateContext": null }, - "start": 16053, - "end": 16054, + "start": 16068, + "end": 16069, "loc": { "start": { "line": 919, @@ -106207,8 +106608,8 @@ "binop": null }, "value": "subVectors", - "start": 16054, - "end": 16064, + "start": 16069, + "end": 16079, "loc": { "start": { "line": 919, @@ -106232,8 +106633,8 @@ "postfix": false, "binop": null }, - "start": 16064, - "end": 16065, + "start": 16079, + "end": 16080, "loc": { "start": { "line": 919, @@ -106258,8 +106659,8 @@ "binop": null }, "value": "v2", - "start": 16065, - "end": 16067, + "start": 16080, + "end": 16082, "loc": { "start": { "line": 919, @@ -106284,8 +106685,8 @@ "binop": null, "updateContext": null }, - "start": 16067, - "end": 16068, + "start": 16082, + "end": 16083, "loc": { "start": { "line": 919, @@ -106310,8 +106711,8 @@ "binop": null }, "value": "v1", - "start": 16069, - "end": 16071, + "start": 16084, + "end": 16086, "loc": { "start": { "line": 919, @@ -106335,8 +106736,8 @@ "postfix": false, "binop": null }, - "start": 16071, - "end": 16072, + "start": 16086, + "end": 16087, "loc": { "start": { "line": 919, @@ -106361,8 +106762,8 @@ "binop": null, "updateContext": null }, - "start": 16072, - "end": 16073, + "start": 16087, + "end": 16088, "loc": { "start": { "line": 919, @@ -106387,8 +106788,8 @@ "binop": null }, "value": "multiplyScalar", - "start": 16073, - "end": 16087, + "start": 16088, + "end": 16102, "loc": { "start": { "line": 919, @@ -106412,8 +106813,8 @@ "postfix": false, "binop": null }, - "start": 16087, - "end": 16088, + "start": 16102, + "end": 16103, "loc": { "start": { "line": 919, @@ -106438,8 +106839,8 @@ "binop": null }, "value": "alpha", - "start": 16088, - "end": 16093, + "start": 16103, + "end": 16108, "loc": { "start": { "line": 919, @@ -106463,8 +106864,8 @@ "postfix": false, "binop": null }, - "start": 16093, - "end": 16094, + "start": 16108, + "end": 16109, "loc": { "start": { "line": 919, @@ -106489,8 +106890,8 @@ "binop": null, "updateContext": null }, - "start": 16094, - "end": 16095, + "start": 16109, + "end": 16110, "loc": { "start": { "line": 919, @@ -106515,8 +106916,8 @@ "binop": null }, "value": "add", - "start": 16095, - "end": 16098, + "start": 16110, + "end": 16113, "loc": { "start": { "line": 919, @@ -106540,8 +106941,8 @@ "postfix": false, "binop": null }, - "start": 16098, - "end": 16099, + "start": 16113, + "end": 16114, "loc": { "start": { "line": 919, @@ -106566,8 +106967,8 @@ "binop": null }, "value": "v1", - "start": 16099, - "end": 16101, + "start": 16114, + "end": 16116, "loc": { "start": { "line": 919, @@ -106591,8 +106992,8 @@ "postfix": false, "binop": null }, - "start": 16101, - "end": 16102, + "start": 16116, + "end": 16117, "loc": { "start": { "line": 919, @@ -106617,8 +107018,8 @@ "binop": null, "updateContext": null }, - "start": 16102, - "end": 16103, + "start": 16117, + "end": 16118, "loc": { "start": { "line": 919, @@ -106642,8 +107043,8 @@ "postfix": false, "binop": null }, - "start": 16108, - "end": 16109, + "start": 16123, + "end": 16124, "loc": { "start": { "line": 921, @@ -106658,8 +107059,8 @@ { "type": "CommentBlock", "value": "*\r\n\t * Checks if this vector equals the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Boolean} Whether this vector equals the given one.\r\n\t ", - "start": 16114, - "end": 16278, + "start": 16129, + "end": 16293, "loc": { "start": { "line": 923, @@ -106684,8 +107085,8 @@ "binop": null }, "value": "equals", - "start": 16283, - "end": 16289, + "start": 16298, + "end": 16304, "loc": { "start": { "line": 930, @@ -106709,8 +107110,8 @@ "postfix": false, "binop": null }, - "start": 16289, - "end": 16290, + "start": 16304, + "end": 16305, "loc": { "start": { "line": 930, @@ -106735,8 +107136,8 @@ "binop": null }, "value": "v", - "start": 16290, - "end": 16291, + "start": 16305, + "end": 16306, "loc": { "start": { "line": 930, @@ -106760,8 +107161,8 @@ "postfix": false, "binop": null }, - "start": 16291, - "end": 16292, + "start": 16306, + "end": 16307, "loc": { "start": { "line": 930, @@ -106785,8 +107186,8 @@ "postfix": false, "binop": null }, - "start": 16293, - "end": 16294, + "start": 16308, + "end": 16309, "loc": { "start": { "line": 930, @@ -106813,8 +107214,8 @@ "updateContext": null }, "value": "return", - "start": 16300, - "end": 16306, + "start": 16315, + "end": 16321, "loc": { "start": { "line": 932, @@ -106838,8 +107239,8 @@ "postfix": false, "binop": null }, - "start": 16307, - "end": 16308, + "start": 16322, + "end": 16323, "loc": { "start": { "line": 932, @@ -106864,8 +107265,8 @@ "binop": null }, "value": "v", - "start": 16308, - "end": 16309, + "start": 16323, + "end": 16324, "loc": { "start": { "line": 932, @@ -106890,8 +107291,8 @@ "binop": null, "updateContext": null }, - "start": 16309, - "end": 16310, + "start": 16324, + "end": 16325, "loc": { "start": { "line": 932, @@ -106916,8 +107317,8 @@ "binop": null }, "value": "x", - "start": 16310, - "end": 16311, + "start": 16325, + "end": 16326, "loc": { "start": { "line": 932, @@ -106943,8 +107344,8 @@ "updateContext": null }, "value": "===", - "start": 16312, - "end": 16315, + "start": 16327, + "end": 16330, "loc": { "start": { "line": 932, @@ -106971,8 +107372,8 @@ "updateContext": null }, "value": "this", - "start": 16316, - "end": 16320, + "start": 16331, + "end": 16335, "loc": { "start": { "line": 932, @@ -106997,8 +107398,8 @@ "binop": null, "updateContext": null }, - "start": 16320, - "end": 16321, + "start": 16335, + "end": 16336, "loc": { "start": { "line": 932, @@ -107023,8 +107424,8 @@ "binop": null }, "value": "x", - "start": 16321, - "end": 16322, + "start": 16336, + "end": 16337, "loc": { "start": { "line": 932, @@ -107050,8 +107451,8 @@ "updateContext": null }, "value": "&&", - "start": 16323, - "end": 16325, + "start": 16338, + "end": 16340, "loc": { "start": { "line": 932, @@ -107076,8 +107477,8 @@ "binop": null }, "value": "v", - "start": 16326, - "end": 16327, + "start": 16341, + "end": 16342, "loc": { "start": { "line": 932, @@ -107102,8 +107503,8 @@ "binop": null, "updateContext": null }, - "start": 16327, - "end": 16328, + "start": 16342, + "end": 16343, "loc": { "start": { "line": 932, @@ -107128,8 +107529,8 @@ "binop": null }, "value": "y", - "start": 16328, - "end": 16329, + "start": 16343, + "end": 16344, "loc": { "start": { "line": 932, @@ -107155,8 +107556,8 @@ "updateContext": null }, "value": "===", - "start": 16330, - "end": 16333, + "start": 16345, + "end": 16348, "loc": { "start": { "line": 932, @@ -107183,8 +107584,8 @@ "updateContext": null }, "value": "this", - "start": 16334, - "end": 16338, + "start": 16349, + "end": 16353, "loc": { "start": { "line": 932, @@ -107209,8 +107610,8 @@ "binop": null, "updateContext": null }, - "start": 16338, - "end": 16339, + "start": 16353, + "end": 16354, "loc": { "start": { "line": 932, @@ -107235,8 +107636,8 @@ "binop": null }, "value": "y", - "start": 16339, - "end": 16340, + "start": 16354, + "end": 16355, "loc": { "start": { "line": 932, @@ -107262,8 +107663,8 @@ "updateContext": null }, "value": "&&", - "start": 16341, - "end": 16343, + "start": 16356, + "end": 16358, "loc": { "start": { "line": 932, @@ -107288,8 +107689,8 @@ "binop": null }, "value": "v", - "start": 16344, - "end": 16345, + "start": 16359, + "end": 16360, "loc": { "start": { "line": 932, @@ -107314,8 +107715,8 @@ "binop": null, "updateContext": null }, - "start": 16345, - "end": 16346, + "start": 16360, + "end": 16361, "loc": { "start": { "line": 932, @@ -107340,8 +107741,8 @@ "binop": null }, "value": "z", - "start": 16346, - "end": 16347, + "start": 16361, + "end": 16362, "loc": { "start": { "line": 932, @@ -107367,8 +107768,8 @@ "updateContext": null }, "value": "===", - "start": 16348, - "end": 16351, + "start": 16363, + "end": 16366, "loc": { "start": { "line": 932, @@ -107395,8 +107796,8 @@ "updateContext": null }, "value": "this", - "start": 16352, - "end": 16356, + "start": 16367, + "end": 16371, "loc": { "start": { "line": 932, @@ -107421,8 +107822,8 @@ "binop": null, "updateContext": null }, - "start": 16356, - "end": 16357, + "start": 16371, + "end": 16372, "loc": { "start": { "line": 932, @@ -107447,8 +107848,8 @@ "binop": null }, "value": "z", - "start": 16357, - "end": 16358, + "start": 16372, + "end": 16373, "loc": { "start": { "line": 932, @@ -107472,8 +107873,8 @@ "postfix": false, "binop": null }, - "start": 16358, - "end": 16359, + "start": 16373, + "end": 16374, "loc": { "start": { "line": 932, @@ -107498,8 +107899,8 @@ "binop": null, "updateContext": null }, - "start": 16359, - "end": 16360, + "start": 16374, + "end": 16375, "loc": { "start": { "line": 932, @@ -107523,8 +107924,8 @@ "postfix": false, "binop": null }, - "start": 16365, - "end": 16366, + "start": 16380, + "end": 16381, "loc": { "start": { "line": 934, @@ -107548,8 +107949,8 @@ "postfix": false, "binop": null }, - "start": 16370, - "end": 16371, + "start": 16385, + "end": 16386, "loc": { "start": { "line": 936, @@ -107574,8 +107975,8 @@ "binop": null, "updateContext": null }, - "start": 16373, - "end": 16373, + "start": 16388, + "end": 16388, "loc": { "start": { "line": 937, diff --git a/docs/class/src/Vector2.js~Vector2.html b/docs/class/src/Vector2.js~Vector2.html index ddd5cd7..3c5b54e 100644 --- a/docs/class/src/Vector2.js~Vector2.html +++ b/docs/class/src/Vector2.js~Vector2.html @@ -2992,7 +2992,7 @@

- source + source

@@ -3318,7 +3318,7 @@

- source + source

@@ -3399,7 +3399,7 @@

- source + source

@@ -4085,7 +4085,7 @@

- source + source

diff --git a/docs/file/src/Vector2.js.html b/docs/file/src/Vector2.js.html index c148113..967d775 100644 --- a/docs/file/src/Vector2.js.html +++ b/docs/file/src/Vector2.js.html @@ -674,15 +674,7 @@ angle() { - let angle = Math.atan2(this.y, this.x); - - if(angle < 0) { - - angle += 2 * Math.PI; - - } - - return angle; + return Math.atan2(-this.y, -this.x) + Math.PI; } diff --git a/docs/file/src/Vector3.js.html b/docs/file/src/Vector3.js.html index 0b04c73..9f66a76 100644 --- a/docs/file/src/Vector3.js.html +++ b/docs/file/src/Vector3.js.html @@ -730,10 +730,10 @@ angleTo(v) { - const theta = this.dot(v) / (Math.sqrt(this.lengthSquared() * v.lengthSquared())); + const denominator = Math.sqrt(this.lengthSquared() * v.lengthSquared()); - // Clamp to avoid numerical problems. - return Math.acos(Math.min(Math.max(theta, -1), 1)); + return (denominator === 0.0) ? (Math.PI * 0.5) : + Math.acos(Math.min(Math.max(this.dot(v) / denominator, -1), 1)); } diff --git a/docs/index.json b/docs/index.json index 1055c4a..7a7c3bc 100644 --- a/docs/index.json +++ b/docs/index.json @@ -11087,7 +11087,7 @@ "__docId__": 542, "kind": "file", "name": "src/Vector2.js", - "content": "/**\r\n * A vector with two components.\r\n */\r\n\r\nexport class Vector2 {\r\n\r\n\t/**\r\n\t * Constructs a new vector.\r\n\t *\r\n\t * @param {Number} [x=0] - The X component.\r\n\t * @param {Number} [y=0] - The Y component.\r\n\t */\r\n\r\n\tconstructor(x = 0, y = 0) {\r\n\r\n\t\t/**\r\n\t\t * The X component.\r\n\t\t *\r\n\t\t * @type {Number}\r\n\t\t */\r\n\r\n\t\tthis.x = x;\r\n\r\n\t\t/**\r\n\t\t * The Y component.\r\n\t\t *\r\n\t\t * @type {Number}\r\n\t\t */\r\n\r\n\t\tthis.y = y;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * The width. This is an alias for X.\r\n\t *\r\n\t * @type {Number}\r\n\t */\r\n\r\n\tget width() {\r\n\r\n\t\treturn this.x;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the width.\r\n\t *\r\n\t * @type {Number}\r\n\t */\r\n\r\n\tset width(value) {\r\n\r\n\t\treturn this.x = value;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * The height. This is an alias for Y.\r\n\t *\r\n\t * @type {Number}\r\n\t */\r\n\r\n\tget height() {\r\n\r\n\t\treturn this.y;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the height.\r\n\t *\r\n\t * @type {Number}\r\n\t */\r\n\r\n\tset height(value) {\r\n\r\n\t\treturn this.y = value;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the values of this vector\r\n\t *\r\n\t * @param {Number} x - The X component.\r\n\t * @param {Number} y - The Y component.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tset(x, y) {\r\n\r\n\t\tthis.x = x;\r\n\t\tthis.y = y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Randomizes the values of this vector\r\n\t *\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\trandom() {\r\n\r\n\t\tthis.x = Math.random();\r\n\t\tthis.y = Math.random();\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Copies the values of another vector.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tcopy(v) {\r\n\r\n\t\tthis.x = v.x;\r\n\t\tthis.y = v.y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Clones this vector.\r\n\t *\r\n\t * @return {Vector2} A clone of this vector.\r\n\t */\r\n\r\n\tclone() {\r\n\r\n\t\treturn new this.constructor(this.x, this.y);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Copies values from an array.\r\n\t *\r\n\t * @param {Number[]} array - An array.\r\n\t * @param {Number} offset - An offset.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tfromArray(array, offset = 0) {\r\n\r\n\t\tthis.x = array[offset];\r\n\t\tthis.y = array[offset + 1];\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Stores this vector in an array.\r\n\t *\r\n\t * @param {Array} [array] - A target array.\r\n\t * @param {Number} offset - An offset.\r\n\t * @return {Number[]} The array.\r\n\t */\r\n\r\n\ttoArray(array = [], offset = 0) {\r\n\r\n\t\tarray[offset] = this.x;\r\n\t\tarray[offset + 1] = this.y;\r\n\r\n\t\treturn array;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Adds a vector to this one.\r\n\t *\r\n\t * @param {Vector2} v - The vector to add.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tadd(v) {\r\n\r\n\t\tthis.x += v.x;\r\n\t\tthis.y += v.y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Adds a scalar to this vector.\r\n\t *\r\n\t * @param {Number} s - The scalar to add.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\taddScalar(s) {\r\n\r\n\t\tthis.x += s;\r\n\t\tthis.y += s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets this vector to the sum of two given vectors.\r\n\t *\r\n\t * @param {Vector2} a - A vector.\r\n\t * @param {Vector2} b - Another vector.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\taddVectors(a, b) {\r\n\r\n\t\tthis.x = a.x + b.x;\r\n\t\tthis.y = a.y + b.y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Adds a scaled vector to this one.\r\n\t *\r\n\t * @param {Vector2} v - The vector to scale and add.\r\n\t * @param {Number} s - A scalar.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\taddScaledVector(v, s) {\r\n\r\n\t\tthis.x += v.x * s;\r\n\t\tthis.y += v.y * s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Subtracts a vector from this vector.\r\n\t *\r\n\t * @param {Vector2} v - The vector to subtract.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tsub(v) {\r\n\r\n\t\tthis.x -= v.x;\r\n\t\tthis.y -= v.y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Subtracts a scalar from this vector.\r\n\t *\r\n\t * @param {Number} s - The scalar to subtract.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tsubScalar(s) {\r\n\r\n\t\tthis.x -= s;\r\n\t\tthis.y -= s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets this vector to the difference between two given vectors.\r\n\t *\r\n\t * @param {Vector2} a - A vector.\r\n\t * @param {Vector2} b - A second vector.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tsubVectors(a, b) {\r\n\r\n\t\tthis.x = a.x - b.x;\r\n\t\tthis.y = a.y - b.y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Multiplies this vector with another vector.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tmultiply(v) {\r\n\r\n\t\tthis.x *= v.x;\r\n\t\tthis.y *= v.y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Multiplies this vector with a given scalar.\r\n\t *\r\n\t * @param {Number} s - A scalar.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tmultiplyScalar(s) {\r\n\r\n\t\tthis.x *= s;\r\n\t\tthis.y *= s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Divides this vector by another vector.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tdivide(v) {\r\n\r\n\t\tthis.x /= v.x;\r\n\t\tthis.y /= v.y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Divides this vector by a given scalar.\r\n\t *\r\n\t * @param {Number} s - A scalar.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tdivideScalar(s) {\r\n\r\n\t\tthis.x /= s;\r\n\t\tthis.y /= s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Applies the given matrix to this vector.\r\n\t *\r\n\t * @param {Matrix3} m - A matrix.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tapplyMatrix3(m) {\r\n\r\n\t\tconst x = this.x, y = this.y;\r\n\t\tconst e = m.elements;\r\n\r\n\t\tthis.x = e[0] * x + e[3] * y + e[6];\r\n\t\tthis.y = e[1] * x + e[4] * y + e[7];\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the dot product with another vector.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Number} The dot product.\r\n\t */\r\n\r\n\tdot(v) {\r\n\r\n\t\treturn this.x * v.x + this.y * v.y;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the cross product with another vector.\r\n\t *\r\n\t * This method calculates a scalar that would result from a regular 3D cross\r\n\t * product of the input vectors, while taking their Z values implicitly as 0.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Number} The cross product.\r\n\t */\r\n\r\n\tcross(v) {\r\n\r\n\t\treturn this.x * v.y - this.y * v.x;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the Manhattan length of this vector.\r\n\t *\r\n\t * @return {Number} The length.\r\n\t */\r\n\r\n\tmanhattanLength() {\r\n\r\n\t\treturn Math.abs(this.x) + Math.abs(this.y);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the squared length of this vector.\r\n\t *\r\n\t * @return {Number} The squared length.\r\n\t */\r\n\r\n\tlengthSquared() {\r\n\r\n\t\treturn this.x * this.x + this.y * this.y;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the length of this vector.\r\n\t *\r\n\t * @return {Number} The length.\r\n\t */\r\n\r\n\tlength() {\r\n\r\n\t\treturn Math.sqrt(this.x * this.x + this.y * this.y);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the Manhattan distance to a given vector.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Number} The squared distance.\r\n\t */\r\n\r\n\tmanhattanDistanceTo(v) {\r\n\r\n\t\treturn Math.abs(this.x - v.x) + Math.abs(this.y - v.y);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the squared distance to a given vector.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Number} The squared distance.\r\n\t */\r\n\r\n\tdistanceToSquared(v) {\r\n\r\n\t\tconst dx = this.x - v.x;\r\n\t\tconst dy = this.y - v.y;\r\n\r\n\t\treturn dx * dx + dy * dy;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the distance to a given vector.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Number} The distance.\r\n\t */\r\n\r\n\tdistanceTo(v) {\r\n\r\n\t\treturn Math.sqrt(this.distanceToSquared(v));\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Normalizes this vector.\r\n\t *\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tnormalize() {\r\n\r\n\t\treturn this.divideScalar(this.length());\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the length of this vector.\r\n\t *\r\n\t * @param {Number} length - The new length.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tsetLength(length) {\r\n\r\n\t\treturn this.normalize().multiplyScalar(length);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Adopts the min value for each component of this vector and the given one.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tmin(v) {\r\n\r\n\t\tthis.x = Math.min(this.x, v.x);\r\n\t\tthis.y = Math.min(this.y, v.y);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * adopts the max value for each component of this vector and the given one.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tmax(v) {\r\n\r\n\t\tthis.x = Math.max(this.x, v.x);\r\n\t\tthis.y = Math.max(this.y, v.y);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Clamps this vector.\r\n\t *\r\n\t * @param {Vector2} min - A vector, assumed to be smaller than max.\r\n\t * @param {Vector2} max - A vector, assumed to be greater than min.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tclamp(min, max) {\r\n\r\n\t\tthis.x = Math.max(min.x, Math.min(max.x, this.x));\r\n\t\tthis.y = Math.max(min.y, Math.min(max.y, this.y));\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Floors this vector.\r\n\t *\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tfloor() {\r\n\r\n\t\tthis.x = Math.floor(this.x);\r\n\t\tthis.y = Math.floor(this.y);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Ceils this vector.\r\n\t *\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tceil() {\r\n\r\n\t\tthis.x = Math.ceil(this.x);\r\n\t\tthis.y = Math.ceil(this.y);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Rounds this vector.\r\n\t *\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tround() {\r\n\r\n\t\tthis.x = Math.round(this.x);\r\n\t\tthis.y = Math.round(this.y);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Negates this vector.\r\n\t *\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tnegate() {\r\n\r\n\t\tthis.x = -this.x;\r\n\t\tthis.y = -this.y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Computes the angle in radians with respect to the positive X-axis.\r\n\t *\r\n\t * @return {Number} The angle.\r\n\t */\r\n\r\n\tangle() {\r\n\r\n\t\tlet angle = Math.atan2(this.y, this.x);\r\n\r\n\t\tif(angle < 0) {\r\n\r\n\t\t\tangle += 2 * Math.PI;\r\n\r\n\t\t}\r\n\r\n\t\treturn angle;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Lerps towards the given vector.\r\n\t *\r\n\t * @param {Vector2} v - The target vector.\r\n\t * @param {Number} alpha - The lerp factor.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tlerp(v, alpha) {\r\n\r\n\t\tthis.x += (v.x - this.x) * alpha;\r\n\t\tthis.y += (v.y - this.y) * alpha;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets this vector to the lerp result of the given vectors.\r\n\t *\r\n\t * @param {Vector2} v1 - A base vector.\r\n\t * @param {Vector2} v2 - The target vector.\r\n\t * @param {Number} alpha - The lerp factor.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tlerpVectors(v1, v2, alpha) {\r\n\r\n\t\treturn this.subVectors(v2, v1).multiplyScalar(alpha).add(v1);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Rotates this vector around a given center.\r\n\t *\r\n\t * @param {Vector2} center - The center.\r\n\t * @param {Number} angle - The rotation in radians.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\trotateAround(center, angle) {\r\n\r\n\t\tconst c = Math.cos(angle), s = Math.sin(angle);\r\n\r\n\t\tconst x = this.x - center.x;\r\n\t\tconst y = this.y - center.y;\r\n\r\n\t\tthis.x = x * c - y * s + center.x;\r\n\t\tthis.y = x * s + y * c + center.y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Checks if this vector equals the given one.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Boolean} Whether this vector equals the given one.\r\n\t */\r\n\r\n\tequals(v) {\r\n\r\n\t\treturn (v.x === this.x && v.y === this.y);\r\n\r\n\t}\r\n\r\n}\r\n", + "content": "/**\r\n * A vector with two components.\r\n */\r\n\r\nexport class Vector2 {\r\n\r\n\t/**\r\n\t * Constructs a new vector.\r\n\t *\r\n\t * @param {Number} [x=0] - The X component.\r\n\t * @param {Number} [y=0] - The Y component.\r\n\t */\r\n\r\n\tconstructor(x = 0, y = 0) {\r\n\r\n\t\t/**\r\n\t\t * The X component.\r\n\t\t *\r\n\t\t * @type {Number}\r\n\t\t */\r\n\r\n\t\tthis.x = x;\r\n\r\n\t\t/**\r\n\t\t * The Y component.\r\n\t\t *\r\n\t\t * @type {Number}\r\n\t\t */\r\n\r\n\t\tthis.y = y;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * The width. This is an alias for X.\r\n\t *\r\n\t * @type {Number}\r\n\t */\r\n\r\n\tget width() {\r\n\r\n\t\treturn this.x;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the width.\r\n\t *\r\n\t * @type {Number}\r\n\t */\r\n\r\n\tset width(value) {\r\n\r\n\t\treturn this.x = value;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * The height. This is an alias for Y.\r\n\t *\r\n\t * @type {Number}\r\n\t */\r\n\r\n\tget height() {\r\n\r\n\t\treturn this.y;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the height.\r\n\t *\r\n\t * @type {Number}\r\n\t */\r\n\r\n\tset height(value) {\r\n\r\n\t\treturn this.y = value;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the values of this vector\r\n\t *\r\n\t * @param {Number} x - The X component.\r\n\t * @param {Number} y - The Y component.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tset(x, y) {\r\n\r\n\t\tthis.x = x;\r\n\t\tthis.y = y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Randomizes the values of this vector\r\n\t *\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\trandom() {\r\n\r\n\t\tthis.x = Math.random();\r\n\t\tthis.y = Math.random();\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Copies the values of another vector.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tcopy(v) {\r\n\r\n\t\tthis.x = v.x;\r\n\t\tthis.y = v.y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Clones this vector.\r\n\t *\r\n\t * @return {Vector2} A clone of this vector.\r\n\t */\r\n\r\n\tclone() {\r\n\r\n\t\treturn new this.constructor(this.x, this.y);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Copies values from an array.\r\n\t *\r\n\t * @param {Number[]} array - An array.\r\n\t * @param {Number} offset - An offset.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tfromArray(array, offset = 0) {\r\n\r\n\t\tthis.x = array[offset];\r\n\t\tthis.y = array[offset + 1];\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Stores this vector in an array.\r\n\t *\r\n\t * @param {Array} [array] - A target array.\r\n\t * @param {Number} offset - An offset.\r\n\t * @return {Number[]} The array.\r\n\t */\r\n\r\n\ttoArray(array = [], offset = 0) {\r\n\r\n\t\tarray[offset] = this.x;\r\n\t\tarray[offset + 1] = this.y;\r\n\r\n\t\treturn array;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Adds a vector to this one.\r\n\t *\r\n\t * @param {Vector2} v - The vector to add.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tadd(v) {\r\n\r\n\t\tthis.x += v.x;\r\n\t\tthis.y += v.y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Adds a scalar to this vector.\r\n\t *\r\n\t * @param {Number} s - The scalar to add.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\taddScalar(s) {\r\n\r\n\t\tthis.x += s;\r\n\t\tthis.y += s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets this vector to the sum of two given vectors.\r\n\t *\r\n\t * @param {Vector2} a - A vector.\r\n\t * @param {Vector2} b - Another vector.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\taddVectors(a, b) {\r\n\r\n\t\tthis.x = a.x + b.x;\r\n\t\tthis.y = a.y + b.y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Adds a scaled vector to this one.\r\n\t *\r\n\t * @param {Vector2} v - The vector to scale and add.\r\n\t * @param {Number} s - A scalar.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\taddScaledVector(v, s) {\r\n\r\n\t\tthis.x += v.x * s;\r\n\t\tthis.y += v.y * s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Subtracts a vector from this vector.\r\n\t *\r\n\t * @param {Vector2} v - The vector to subtract.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tsub(v) {\r\n\r\n\t\tthis.x -= v.x;\r\n\t\tthis.y -= v.y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Subtracts a scalar from this vector.\r\n\t *\r\n\t * @param {Number} s - The scalar to subtract.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tsubScalar(s) {\r\n\r\n\t\tthis.x -= s;\r\n\t\tthis.y -= s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets this vector to the difference between two given vectors.\r\n\t *\r\n\t * @param {Vector2} a - A vector.\r\n\t * @param {Vector2} b - A second vector.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tsubVectors(a, b) {\r\n\r\n\t\tthis.x = a.x - b.x;\r\n\t\tthis.y = a.y - b.y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Multiplies this vector with another vector.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tmultiply(v) {\r\n\r\n\t\tthis.x *= v.x;\r\n\t\tthis.y *= v.y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Multiplies this vector with a given scalar.\r\n\t *\r\n\t * @param {Number} s - A scalar.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tmultiplyScalar(s) {\r\n\r\n\t\tthis.x *= s;\r\n\t\tthis.y *= s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Divides this vector by another vector.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tdivide(v) {\r\n\r\n\t\tthis.x /= v.x;\r\n\t\tthis.y /= v.y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Divides this vector by a given scalar.\r\n\t *\r\n\t * @param {Number} s - A scalar.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tdivideScalar(s) {\r\n\r\n\t\tthis.x /= s;\r\n\t\tthis.y /= s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Applies the given matrix to this vector.\r\n\t *\r\n\t * @param {Matrix3} m - A matrix.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tapplyMatrix3(m) {\r\n\r\n\t\tconst x = this.x, y = this.y;\r\n\t\tconst e = m.elements;\r\n\r\n\t\tthis.x = e[0] * x + e[3] * y + e[6];\r\n\t\tthis.y = e[1] * x + e[4] * y + e[7];\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the dot product with another vector.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Number} The dot product.\r\n\t */\r\n\r\n\tdot(v) {\r\n\r\n\t\treturn this.x * v.x + this.y * v.y;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the cross product with another vector.\r\n\t *\r\n\t * This method calculates a scalar that would result from a regular 3D cross\r\n\t * product of the input vectors, while taking their Z values implicitly as 0.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Number} The cross product.\r\n\t */\r\n\r\n\tcross(v) {\r\n\r\n\t\treturn this.x * v.y - this.y * v.x;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the Manhattan length of this vector.\r\n\t *\r\n\t * @return {Number} The length.\r\n\t */\r\n\r\n\tmanhattanLength() {\r\n\r\n\t\treturn Math.abs(this.x) + Math.abs(this.y);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the squared length of this vector.\r\n\t *\r\n\t * @return {Number} The squared length.\r\n\t */\r\n\r\n\tlengthSquared() {\r\n\r\n\t\treturn this.x * this.x + this.y * this.y;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the length of this vector.\r\n\t *\r\n\t * @return {Number} The length.\r\n\t */\r\n\r\n\tlength() {\r\n\r\n\t\treturn Math.sqrt(this.x * this.x + this.y * this.y);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the Manhattan distance to a given vector.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Number} The squared distance.\r\n\t */\r\n\r\n\tmanhattanDistanceTo(v) {\r\n\r\n\t\treturn Math.abs(this.x - v.x) + Math.abs(this.y - v.y);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the squared distance to a given vector.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Number} The squared distance.\r\n\t */\r\n\r\n\tdistanceToSquared(v) {\r\n\r\n\t\tconst dx = this.x - v.x;\r\n\t\tconst dy = this.y - v.y;\r\n\r\n\t\treturn dx * dx + dy * dy;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the distance to a given vector.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Number} The distance.\r\n\t */\r\n\r\n\tdistanceTo(v) {\r\n\r\n\t\treturn Math.sqrt(this.distanceToSquared(v));\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Normalizes this vector.\r\n\t *\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tnormalize() {\r\n\r\n\t\treturn this.divideScalar(this.length());\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the length of this vector.\r\n\t *\r\n\t * @param {Number} length - The new length.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tsetLength(length) {\r\n\r\n\t\treturn this.normalize().multiplyScalar(length);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Adopts the min value for each component of this vector and the given one.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tmin(v) {\r\n\r\n\t\tthis.x = Math.min(this.x, v.x);\r\n\t\tthis.y = Math.min(this.y, v.y);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * adopts the max value for each component of this vector and the given one.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tmax(v) {\r\n\r\n\t\tthis.x = Math.max(this.x, v.x);\r\n\t\tthis.y = Math.max(this.y, v.y);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Clamps this vector.\r\n\t *\r\n\t * @param {Vector2} min - A vector, assumed to be smaller than max.\r\n\t * @param {Vector2} max - A vector, assumed to be greater than min.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tclamp(min, max) {\r\n\r\n\t\tthis.x = Math.max(min.x, Math.min(max.x, this.x));\r\n\t\tthis.y = Math.max(min.y, Math.min(max.y, this.y));\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Floors this vector.\r\n\t *\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tfloor() {\r\n\r\n\t\tthis.x = Math.floor(this.x);\r\n\t\tthis.y = Math.floor(this.y);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Ceils this vector.\r\n\t *\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tceil() {\r\n\r\n\t\tthis.x = Math.ceil(this.x);\r\n\t\tthis.y = Math.ceil(this.y);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Rounds this vector.\r\n\t *\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tround() {\r\n\r\n\t\tthis.x = Math.round(this.x);\r\n\t\tthis.y = Math.round(this.y);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Negates this vector.\r\n\t *\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tnegate() {\r\n\r\n\t\tthis.x = -this.x;\r\n\t\tthis.y = -this.y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Computes the angle in radians with respect to the positive X-axis.\r\n\t *\r\n\t * @return {Number} The angle.\r\n\t */\r\n\r\n\tangle() {\r\n\r\n\t\treturn Math.atan2(-this.y, -this.x) + Math.PI;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Lerps towards the given vector.\r\n\t *\r\n\t * @param {Vector2} v - The target vector.\r\n\t * @param {Number} alpha - The lerp factor.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tlerp(v, alpha) {\r\n\r\n\t\tthis.x += (v.x - this.x) * alpha;\r\n\t\tthis.y += (v.y - this.y) * alpha;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets this vector to the lerp result of the given vectors.\r\n\t *\r\n\t * @param {Vector2} v1 - A base vector.\r\n\t * @param {Vector2} v2 - The target vector.\r\n\t * @param {Number} alpha - The lerp factor.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\tlerpVectors(v1, v2, alpha) {\r\n\r\n\t\treturn this.subVectors(v2, v1).multiplyScalar(alpha).add(v1);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Rotates this vector around a given center.\r\n\t *\r\n\t * @param {Vector2} center - The center.\r\n\t * @param {Number} angle - The rotation in radians.\r\n\t * @return {Vector2} This vector.\r\n\t */\r\n\r\n\trotateAround(center, angle) {\r\n\r\n\t\tconst c = Math.cos(angle), s = Math.sin(angle);\r\n\r\n\t\tconst x = this.x - center.x;\r\n\t\tconst y = this.y - center.y;\r\n\r\n\t\tthis.x = x * c - y * s + center.x;\r\n\t\tthis.y = x * s + y * c + center.y;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Checks if this vector equals the given one.\r\n\t *\r\n\t * @param {Vector2} v - A vector.\r\n\t * @return {Boolean} Whether this vector equals the given one.\r\n\t */\r\n\r\n\tequals(v) {\r\n\r\n\t\treturn (v.x === this.x && v.y === this.y);\r\n\r\n\t}\r\n\r\n}\r\n", "static": true, "longname": "D:/Sourcecode/JavaScript/math-ds/src/Vector2.js", "access": "public", @@ -12418,7 +12418,7 @@ "longname": "src/Vector2.js~Vector2#lerp", "access": "public", "description": "Lerps towards the given vector.", - "lineNumber": 643, + "lineNumber": 635, "params": [ { "nullable": null, @@ -12461,7 +12461,7 @@ "longname": "src/Vector2.js~Vector2#lerpVectors", "access": "public", "description": "Sets this vector to the lerp result of the given vectors.", - "lineNumber": 661, + "lineNumber": 653, "params": [ { "nullable": null, @@ -12514,7 +12514,7 @@ "longname": "src/Vector2.js~Vector2#rotateAround", "access": "public", "description": "Rotates this vector around a given center.", - "lineNumber": 675, + "lineNumber": 667, "params": [ { "nullable": null, @@ -12557,7 +12557,7 @@ "longname": "src/Vector2.js~Vector2#equals", "access": "public", "description": "Checks if this vector equals the given one.", - "lineNumber": 696, + "lineNumber": 688, "params": [ { "nullable": null, @@ -12583,7 +12583,7 @@ "__docId__": 641, "kind": "file", "name": "src/Vector3.js", - "content": "/**\r\n * A vector with three components.\r\n */\r\n\r\nexport class Vector3 {\r\n\r\n\t/**\r\n\t * Constructs a new vector.\r\n\t *\r\n\t * @param {Number} [x=0] - The X component.\r\n\t * @param {Number} [y=0] - The Y component.\r\n\t * @param {Number} [z=0] - The Z component.\r\n\t */\r\n\r\n\tconstructor(x = 0, y = 0, z = 0) {\r\n\r\n\t\t/**\r\n\t\t * The X component.\r\n\t\t *\r\n\t\t * @type {Number}\r\n\t\t */\r\n\r\n\t\tthis.x = x;\r\n\r\n\t\t/**\r\n\t\t * The Y component.\r\n\t\t *\r\n\t\t * @type {Number}\r\n\t\t */\r\n\r\n\t\tthis.y = y;\r\n\r\n\t\t/**\r\n\t\t * The Z component.\r\n\t\t *\r\n\t\t * @type {Number}\r\n\t\t */\r\n\r\n\t\tthis.z = z;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the values of this vector\r\n\t *\r\n\t * @param {Number} x - The X component.\r\n\t * @param {Number} y - The Y component.\r\n\t * @param {Number} z - The Z component.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tset(x, y, z) {\r\n\r\n\t\tthis.x = x;\r\n\t\tthis.y = y;\r\n\t\tthis.z = z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Randomizes the values of this vector\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\trandom() {\r\n\r\n\t\tthis.x = Math.random();\r\n\t\tthis.y = Math.random();\r\n\t\tthis.z = Math.random();\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Copies the values of another vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tcopy(v) {\r\n\r\n\t\tthis.x = v.x;\r\n\t\tthis.y = v.y;\r\n\t\tthis.z = v.z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Clones this vector.\r\n\t *\r\n\t * @return {Vector3} A clone of this vector.\r\n\t */\r\n\r\n\tclone() {\r\n\r\n\t\treturn new this.constructor(this.x, this.y, this.z);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Copies values from an array.\r\n\t *\r\n\t * @param {Number[]} array - An array.\r\n\t * @param {Number} offset - An offset.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tfromArray(array, offset = 0) {\r\n\r\n\t\tthis.x = array[offset];\r\n\t\tthis.y = array[offset + 1];\r\n\t\tthis.z = array[offset + 2];\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Stores this vector in an array.\r\n\t *\r\n\t * @param {Array} [array] - A target array.\r\n\t * @param {Number} offset - An offset.\r\n\t * @return {Number[]} The array.\r\n\t */\r\n\r\n\ttoArray(array = [], offset = 0) {\r\n\r\n\t\tarray[offset] = this.x;\r\n\t\tarray[offset + 1] = this.y;\r\n\t\tarray[offset + 2] = this.z;\r\n\r\n\t\treturn array;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the values of this vector based on a spherical description.\r\n\t *\r\n\t * @param {Spherical} s - A spherical description.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsetFromSpherical(s) {\r\n\r\n\t\treturn this.setFromSphericalCoords(s.radius, s.phi, s.theta);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the values of this vector based on spherical coordinates.\r\n\t *\r\n\t * @param {Number} radius - The radius.\r\n\t * @param {Number} phi - The polar angle.\r\n\t * @param {Number} theta - The angle around the equator of the sphere.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsetFromSphericalCoords(radius, phi, theta) {\r\n\r\n\t\tconst sinPhiRadius = Math.sin(phi) * radius;\r\n\r\n\t\tthis.x = sinPhiRadius * Math.sin(theta);\r\n\t\tthis.y = Math.cos(phi) * radius;\r\n\t\tthis.z = sinPhiRadius * Math.cos(theta);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the values of this vector based on a cylindrical description.\r\n\t *\r\n\t * @param {Cylindrical} c - A cylindrical description.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsetFromCylindrical(c) {\r\n\r\n\t\treturn this.setFromCylindricalCoords(c.radius, c.theta, c.y);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the values of this vector based on cylindrical coordinates.\r\n\t *\r\n\t * @param {Number} radius - The radius.\r\n\t * @param {Number} theta - Theta.\r\n\t * @param {Number} y - The height.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsetFromCylindricalCoords(radius, theta, y) {\r\n\r\n\t\tthis.x = radius * Math.sin(theta);\r\n\t\tthis.y = y;\r\n\t\tthis.z = radius * Math.cos(theta);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Copies the values of a matrix column.\r\n\t *\r\n\t * @param {Matrix4} m - A 3x3 matrix.\r\n\t * @param {Number} index - A column index of the range [0, 2].\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsetFromMatrix3Column(m, index) {\r\n\r\n\t\treturn this.fromArray(m.elements, index * 3);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Copies the values of a matrix column.\r\n\t *\r\n\t * @param {Matrix4} m - A 4x4 matrix.\r\n\t * @param {Number} index - A column index of the range [0, 3].\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsetFromMatrixColumn(m, index) {\r\n\r\n\t\treturn this.fromArray(m.elements, index * 4);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Extracts the position from a matrix.\r\n\t *\r\n\t * @param {Matrix4} m - A 4x4 matrix.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsetFromMatrixPosition(m) {\r\n\r\n\t\tconst me = m.elements;\r\n\r\n\t\tthis.x = me[12];\r\n\t\tthis.y = me[13];\r\n\t\tthis.z = me[14];\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Extracts the scale from a matrix.\r\n\t *\r\n\t * @param {Matrix4} m - A 4x4 matrix.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsetFromMatrixScale(m) {\r\n\r\n\t\tconst sx = this.setFromMatrixColumn(m, 0).length();\r\n\t\tconst sy = this.setFromMatrixColumn(m, 1).length();\r\n\t\tconst sz = this.setFromMatrixColumn(m, 2).length();\r\n\r\n\t\tthis.x = sx;\r\n\t\tthis.y = sy;\r\n\t\tthis.z = sz;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Adds a vector to this one.\r\n\t *\r\n\t * @param {Vector3} v - The vector to add.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tadd(v) {\r\n\r\n\t\tthis.x += v.x;\r\n\t\tthis.y += v.y;\r\n\t\tthis.z += v.z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Adds a scalar to this vector.\r\n\t *\r\n\t * @param {Number} s - The scalar to add.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\taddScalar(s) {\r\n\r\n\t\tthis.x += s;\r\n\t\tthis.y += s;\r\n\t\tthis.z += s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets this vector to the sum of two given vectors.\r\n\t *\r\n\t * @param {Vector3} a - A vector.\r\n\t * @param {Vector3} b - Another vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\taddVectors(a, b) {\r\n\r\n\t\tthis.x = a.x + b.x;\r\n\t\tthis.y = a.y + b.y;\r\n\t\tthis.z = a.z + b.z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Adds a scaled vector to this one.\r\n\t *\r\n\t * @param {Vector3} v - The vector to scale and add.\r\n\t * @param {Number} s - A scalar.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\taddScaledVector(v, s) {\r\n\r\n\t\tthis.x += v.x * s;\r\n\t\tthis.y += v.y * s;\r\n\t\tthis.z += v.z * s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Subtracts a vector from this vector.\r\n\t *\r\n\t * @param {Vector3} v - The vector to subtract.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsub(v) {\r\n\r\n\t\tthis.x -= v.x;\r\n\t\tthis.y -= v.y;\r\n\t\tthis.z -= v.z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Subtracts a scalar from this vector.\r\n\t *\r\n\t * @param {Number} s - The scalar to subtract.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsubScalar(s) {\r\n\r\n\t\tthis.x -= s;\r\n\t\tthis.y -= s;\r\n\t\tthis.z -= s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets this vector to the difference between two given vectors.\r\n\t *\r\n\t * @param {Vector3} a - A vector.\r\n\t * @param {Vector3} b - A second vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsubVectors(a, b) {\r\n\r\n\t\tthis.x = a.x - b.x;\r\n\t\tthis.y = a.y - b.y;\r\n\t\tthis.z = a.z - b.z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Multiplies this vector with another vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tmultiply(v) {\r\n\r\n\t\tthis.x *= v.x;\r\n\t\tthis.y *= v.y;\r\n\t\tthis.z *= v.z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Multiplies this vector with a given scalar.\r\n\t *\r\n\t * @param {Number} s - A scalar.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tmultiplyScalar(s) {\r\n\r\n\t\tthis.x *= s;\r\n\t\tthis.y *= s;\r\n\t\tthis.z *= s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets this vector to the product of two given vectors.\r\n\t *\r\n\t * @param {Vector3} a - A vector.\r\n\t * @param {Vector3} b - Another vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tmultiplyVectors(a, b) {\r\n\r\n\t\tthis.x = a.x * b.x;\r\n\t\tthis.y = a.y * b.y;\r\n\t\tthis.z = a.z * b.z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Divides this vector by another vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tdivide(v) {\r\n\r\n\t\tthis.x /= v.x;\r\n\t\tthis.y /= v.y;\r\n\t\tthis.z /= v.z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Divides this vector by a given scalar.\r\n\t *\r\n\t * @param {Number} s - A scalar.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tdivideScalar(s) {\r\n\r\n\t\tthis.x /= s;\r\n\t\tthis.y /= s;\r\n\t\tthis.z /= s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets this vector to the cross product of the given vectors.\r\n\t *\r\n\t * @param {Vector3} a - A vector.\r\n\t * @param {Vector3} b - Another vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tcrossVectors(a, b) {\r\n\r\n\t\tconst ax = a.x, ay = a.y, az = a.z;\r\n\t\tconst bx = b.x, by = b.y, bz = b.z;\r\n\r\n\t\tthis.x = ay * bz - az * by;\r\n\t\tthis.y = az * bx - ax * bz;\r\n\t\tthis.z = ax * by - ay * bx;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the cross product of this vector and the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tcross(v) {\r\n\r\n\t\treturn this.crossVectors(this, v);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Applies a matrix to this direction vector.\r\n\t *\r\n\t * @param {Matrix4} m - A matrix.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\ttransformDirection(m) {\r\n\r\n\t\tconst x = this.x, y = this.y, z = this.z;\r\n\t\tconst e = m.elements;\r\n\r\n\t\tthis.x = e[0] * x + e[4] * y + e[8] * z;\r\n\t\tthis.y = e[1] * x + e[5] * y + e[9] * z;\r\n\t\tthis.z = e[2] * x + e[6] * y + e[10] * z;\r\n\r\n\t\treturn this.normalize();\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Applies a matrix to this vector.\r\n\t *\r\n\t * @param {Matrix3} m - A matrix.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tapplyMatrix3(m) {\r\n\r\n\t\tconst x = this.x, y = this.y, z = this.z;\r\n\t\tconst e = m.elements;\r\n\r\n\t\tthis.x = e[0] * x + e[3] * y + e[6] * z;\r\n\t\tthis.y = e[1] * x + e[4] * y + e[7] * z;\r\n\t\tthis.z = e[2] * x + e[5] * y + e[8] * z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Applies a normal matrix to this vector and normalizes it.\r\n\t *\r\n\t * @param {Matrix3} m - A normal matrix.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tapplyNormalMatrix(m) {\r\n\r\n\t\treturn this.applyMatrix3(m).normalize();\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Applies a matrix to this vector.\r\n\t *\r\n\t * @param {Matrix4} m - A matrix.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tapplyMatrix4(m) {\r\n\r\n\t\tconst x = this.x, y = this.y, z = this.z;\r\n\t\tconst e = m.elements;\r\n\r\n\t\tthis.x = e[0] * x + e[4] * y + e[8] * z + e[12];\r\n\t\tthis.y = e[1] * x + e[5] * y + e[9] * z + e[13];\r\n\t\tthis.z = e[2] * x + e[6] * y + e[10] * z + e[14];\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Applies a quaternion to this vector.\r\n\t *\r\n\t * @param {Quaternion} q - A quaternion.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tapplyQuaternion(q) {\r\n\r\n\t\tconst x = this.x, y = this.y, z = this.z;\r\n\t\tconst qx = q.x, qy = q.y, qz = q.z, qw = q.w;\r\n\r\n\t\t// Calculate: quaternion * vector.\r\n\t\tconst ix = qw * x + qy * z - qz * y;\r\n\t\tconst iy = qw * y + qz * x - qx * z;\r\n\t\tconst iz = qw * z + qx * y - qy * x;\r\n\t\tconst iw = -qx * x - qy * y - qz * z;\r\n\r\n\t\t// Calculate: result * inverse quaternion.\r\n\t\tthis.x = ix * qw + iw * -qx + iy * -qz - iz * -qy;\r\n\t\tthis.y = iy * qw + iw * -qy + iz * -qx - ix * -qz;\r\n\t\tthis.z = iz * qw + iw * -qz + ix * -qy - iy * -qx;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Negates this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tnegate() {\r\n\r\n\t\tthis.x = -this.x;\r\n\t\tthis.y = -this.y;\r\n\t\tthis.z = -this.z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the dot product with another vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The dot product.\r\n\t */\r\n\r\n\tdot(v) {\r\n\r\n\t\treturn this.x * v.x + this.y * v.y + this.z * v.z;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Reflects this vector. The given plane normal is assumed to be normalized.\r\n\t *\r\n\t * @param {Vector3} n - A normal.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\treflect(n) {\r\n\r\n\t\tconst nx = n.x;\r\n\t\tconst ny = n.y;\r\n\t\tconst nz = n.z;\r\n\r\n\t\tthis.sub(n.multiplyScalar(2 * this.dot(n)));\r\n\r\n\t\t// Restore the normal.\r\n\t\tn.set(nx, ny, nz);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Computes the angle to the given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The angle in radians.\r\n\t */\r\n\r\n\tangleTo(v) {\r\n\r\n\t\tconst theta = this.dot(v) / (Math.sqrt(this.lengthSquared() * v.lengthSquared()));\r\n\r\n\t\t// Clamp to avoid numerical problems.\r\n\t\treturn Math.acos(Math.min(Math.max(theta, -1), 1));\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the Manhattan length of this vector.\r\n\t *\r\n\t * @return {Number} The length.\r\n\t */\r\n\r\n\tmanhattanLength() {\r\n\r\n\t\treturn Math.abs(this.x) + Math.abs(this.y) + Math.abs(this.z);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the squared length of this vector.\r\n\t *\r\n\t * @return {Number} The squared length.\r\n\t */\r\n\r\n\tlengthSquared() {\r\n\r\n\t\treturn this.x * this.x + this.y * this.y + this.z * this.z;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the length of this vector.\r\n\t *\r\n\t * @return {Number} The length.\r\n\t */\r\n\r\n\tlength() {\r\n\r\n\t\treturn Math.sqrt(this.x * this.x + this.y * this.y + this.z * this.z);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the Manhattan distance to a given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The distance.\r\n\t */\r\n\r\n\tmanhattanDistanceTo(v) {\r\n\r\n\t\treturn Math.abs(this.x - v.x) + Math.abs(this.y - v.y) + Math.abs(this.z - v.z);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the squared distance to a given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The squared distance.\r\n\t */\r\n\r\n\tdistanceToSquared(v) {\r\n\r\n\t\tconst dx = this.x - v.x;\r\n\t\tconst dy = this.y - v.y;\r\n\t\tconst dz = this.z - v.z;\r\n\r\n\t\treturn dx * dx + dy * dy + dz * dz;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the distance to a given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The distance.\r\n\t */\r\n\r\n\tdistanceTo(v) {\r\n\r\n\t\treturn Math.sqrt(this.distanceToSquared(v));\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Normalizes this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tnormalize() {\r\n\r\n\t\treturn this.divideScalar(this.length());\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the length of this vector.\r\n\t *\r\n\t * @param {Number} length - The new length.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsetLength(length) {\r\n\r\n\t\treturn this.normalize().multiplyScalar(length);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Adopts the min value for each component of this vector and the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tmin(v) {\r\n\r\n\t\tthis.x = Math.min(this.x, v.x);\r\n\t\tthis.y = Math.min(this.y, v.y);\r\n\t\tthis.z = Math.min(this.z, v.z);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Adopts the max value for each component of this vector and the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tmax(v) {\r\n\r\n\t\tthis.x = Math.max(this.x, v.x);\r\n\t\tthis.y = Math.max(this.y, v.y);\r\n\t\tthis.z = Math.max(this.z, v.z);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Clamps this vector.\r\n\t *\r\n\t * @param {Vector3} min - The lower bounds. Assumed to be smaller than max.\r\n\t * @param {Vector3} max - The upper bounds. Assumed to be greater than min.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tclamp(min, max) {\r\n\r\n\t\tthis.x = Math.max(min.x, Math.min(max.x, this.x));\r\n\t\tthis.y = Math.max(min.y, Math.min(max.y, this.y));\r\n\t\tthis.z = Math.max(min.z, Math.min(max.z, this.z));\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Floors this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tfloor() {\r\n\r\n\t\tthis.x = Math.floor(this.x);\r\n\t\tthis.y = Math.floor(this.y);\r\n\t\tthis.z = Math.floor(this.z);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Ceils this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tceil() {\r\n\r\n\t\tthis.x = Math.ceil(this.x);\r\n\t\tthis.y = Math.ceil(this.y);\r\n\t\tthis.z = Math.ceil(this.z);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Rounds this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tround() {\r\n\r\n\t\tthis.x = Math.round(this.x);\r\n\t\tthis.y = Math.round(this.y);\r\n\t\tthis.z = Math.round(this.z);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Lerps towards the given vector.\r\n\t *\r\n\t * @param {Vector3} v - The target vector.\r\n\t * @param {Number} alpha - The lerp factor.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tlerp(v, alpha) {\r\n\r\n\t\tthis.x += (v.x - this.x) * alpha;\r\n\t\tthis.y += (v.y - this.y) * alpha;\r\n\t\tthis.z += (v.z - this.z) * alpha;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets this vector to the lerp result of the given vectors.\r\n\t *\r\n\t * @param {Vector3} v1 - A base vector.\r\n\t * @param {Vector3} v2 - The target vector.\r\n\t * @param {Number} alpha - The lerp factor.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tlerpVectors(v1, v2, alpha) {\r\n\r\n\t\treturn this.subVectors(v2, v1).multiplyScalar(alpha).add(v1);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Checks if this vector equals the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Boolean} Whether this vector equals the given one.\r\n\t */\r\n\r\n\tequals(v) {\r\n\r\n\t\treturn (v.x === this.x && v.y === this.y && v.z === this.z);\r\n\r\n\t}\r\n\r\n}\r\n", + "content": "/**\r\n * A vector with three components.\r\n */\r\n\r\nexport class Vector3 {\r\n\r\n\t/**\r\n\t * Constructs a new vector.\r\n\t *\r\n\t * @param {Number} [x=0] - The X component.\r\n\t * @param {Number} [y=0] - The Y component.\r\n\t * @param {Number} [z=0] - The Z component.\r\n\t */\r\n\r\n\tconstructor(x = 0, y = 0, z = 0) {\r\n\r\n\t\t/**\r\n\t\t * The X component.\r\n\t\t *\r\n\t\t * @type {Number}\r\n\t\t */\r\n\r\n\t\tthis.x = x;\r\n\r\n\t\t/**\r\n\t\t * The Y component.\r\n\t\t *\r\n\t\t * @type {Number}\r\n\t\t */\r\n\r\n\t\tthis.y = y;\r\n\r\n\t\t/**\r\n\t\t * The Z component.\r\n\t\t *\r\n\t\t * @type {Number}\r\n\t\t */\r\n\r\n\t\tthis.z = z;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the values of this vector\r\n\t *\r\n\t * @param {Number} x - The X component.\r\n\t * @param {Number} y - The Y component.\r\n\t * @param {Number} z - The Z component.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tset(x, y, z) {\r\n\r\n\t\tthis.x = x;\r\n\t\tthis.y = y;\r\n\t\tthis.z = z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Randomizes the values of this vector\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\trandom() {\r\n\r\n\t\tthis.x = Math.random();\r\n\t\tthis.y = Math.random();\r\n\t\tthis.z = Math.random();\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Copies the values of another vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tcopy(v) {\r\n\r\n\t\tthis.x = v.x;\r\n\t\tthis.y = v.y;\r\n\t\tthis.z = v.z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Clones this vector.\r\n\t *\r\n\t * @return {Vector3} A clone of this vector.\r\n\t */\r\n\r\n\tclone() {\r\n\r\n\t\treturn new this.constructor(this.x, this.y, this.z);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Copies values from an array.\r\n\t *\r\n\t * @param {Number[]} array - An array.\r\n\t * @param {Number} offset - An offset.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tfromArray(array, offset = 0) {\r\n\r\n\t\tthis.x = array[offset];\r\n\t\tthis.y = array[offset + 1];\r\n\t\tthis.z = array[offset + 2];\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Stores this vector in an array.\r\n\t *\r\n\t * @param {Array} [array] - A target array.\r\n\t * @param {Number} offset - An offset.\r\n\t * @return {Number[]} The array.\r\n\t */\r\n\r\n\ttoArray(array = [], offset = 0) {\r\n\r\n\t\tarray[offset] = this.x;\r\n\t\tarray[offset + 1] = this.y;\r\n\t\tarray[offset + 2] = this.z;\r\n\r\n\t\treturn array;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the values of this vector based on a spherical description.\r\n\t *\r\n\t * @param {Spherical} s - A spherical description.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsetFromSpherical(s) {\r\n\r\n\t\treturn this.setFromSphericalCoords(s.radius, s.phi, s.theta);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the values of this vector based on spherical coordinates.\r\n\t *\r\n\t * @param {Number} radius - The radius.\r\n\t * @param {Number} phi - The polar angle.\r\n\t * @param {Number} theta - The angle around the equator of the sphere.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsetFromSphericalCoords(radius, phi, theta) {\r\n\r\n\t\tconst sinPhiRadius = Math.sin(phi) * radius;\r\n\r\n\t\tthis.x = sinPhiRadius * Math.sin(theta);\r\n\t\tthis.y = Math.cos(phi) * radius;\r\n\t\tthis.z = sinPhiRadius * Math.cos(theta);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the values of this vector based on a cylindrical description.\r\n\t *\r\n\t * @param {Cylindrical} c - A cylindrical description.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsetFromCylindrical(c) {\r\n\r\n\t\treturn this.setFromCylindricalCoords(c.radius, c.theta, c.y);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the values of this vector based on cylindrical coordinates.\r\n\t *\r\n\t * @param {Number} radius - The radius.\r\n\t * @param {Number} theta - Theta.\r\n\t * @param {Number} y - The height.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsetFromCylindricalCoords(radius, theta, y) {\r\n\r\n\t\tthis.x = radius * Math.sin(theta);\r\n\t\tthis.y = y;\r\n\t\tthis.z = radius * Math.cos(theta);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Copies the values of a matrix column.\r\n\t *\r\n\t * @param {Matrix4} m - A 3x3 matrix.\r\n\t * @param {Number} index - A column index of the range [0, 2].\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsetFromMatrix3Column(m, index) {\r\n\r\n\t\treturn this.fromArray(m.elements, index * 3);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Copies the values of a matrix column.\r\n\t *\r\n\t * @param {Matrix4} m - A 4x4 matrix.\r\n\t * @param {Number} index - A column index of the range [0, 3].\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsetFromMatrixColumn(m, index) {\r\n\r\n\t\treturn this.fromArray(m.elements, index * 4);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Extracts the position from a matrix.\r\n\t *\r\n\t * @param {Matrix4} m - A 4x4 matrix.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsetFromMatrixPosition(m) {\r\n\r\n\t\tconst me = m.elements;\r\n\r\n\t\tthis.x = me[12];\r\n\t\tthis.y = me[13];\r\n\t\tthis.z = me[14];\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Extracts the scale from a matrix.\r\n\t *\r\n\t * @param {Matrix4} m - A 4x4 matrix.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsetFromMatrixScale(m) {\r\n\r\n\t\tconst sx = this.setFromMatrixColumn(m, 0).length();\r\n\t\tconst sy = this.setFromMatrixColumn(m, 1).length();\r\n\t\tconst sz = this.setFromMatrixColumn(m, 2).length();\r\n\r\n\t\tthis.x = sx;\r\n\t\tthis.y = sy;\r\n\t\tthis.z = sz;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Adds a vector to this one.\r\n\t *\r\n\t * @param {Vector3} v - The vector to add.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tadd(v) {\r\n\r\n\t\tthis.x += v.x;\r\n\t\tthis.y += v.y;\r\n\t\tthis.z += v.z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Adds a scalar to this vector.\r\n\t *\r\n\t * @param {Number} s - The scalar to add.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\taddScalar(s) {\r\n\r\n\t\tthis.x += s;\r\n\t\tthis.y += s;\r\n\t\tthis.z += s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets this vector to the sum of two given vectors.\r\n\t *\r\n\t * @param {Vector3} a - A vector.\r\n\t * @param {Vector3} b - Another vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\taddVectors(a, b) {\r\n\r\n\t\tthis.x = a.x + b.x;\r\n\t\tthis.y = a.y + b.y;\r\n\t\tthis.z = a.z + b.z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Adds a scaled vector to this one.\r\n\t *\r\n\t * @param {Vector3} v - The vector to scale and add.\r\n\t * @param {Number} s - A scalar.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\taddScaledVector(v, s) {\r\n\r\n\t\tthis.x += v.x * s;\r\n\t\tthis.y += v.y * s;\r\n\t\tthis.z += v.z * s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Subtracts a vector from this vector.\r\n\t *\r\n\t * @param {Vector3} v - The vector to subtract.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsub(v) {\r\n\r\n\t\tthis.x -= v.x;\r\n\t\tthis.y -= v.y;\r\n\t\tthis.z -= v.z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Subtracts a scalar from this vector.\r\n\t *\r\n\t * @param {Number} s - The scalar to subtract.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsubScalar(s) {\r\n\r\n\t\tthis.x -= s;\r\n\t\tthis.y -= s;\r\n\t\tthis.z -= s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets this vector to the difference between two given vectors.\r\n\t *\r\n\t * @param {Vector3} a - A vector.\r\n\t * @param {Vector3} b - A second vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsubVectors(a, b) {\r\n\r\n\t\tthis.x = a.x - b.x;\r\n\t\tthis.y = a.y - b.y;\r\n\t\tthis.z = a.z - b.z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Multiplies this vector with another vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tmultiply(v) {\r\n\r\n\t\tthis.x *= v.x;\r\n\t\tthis.y *= v.y;\r\n\t\tthis.z *= v.z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Multiplies this vector with a given scalar.\r\n\t *\r\n\t * @param {Number} s - A scalar.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tmultiplyScalar(s) {\r\n\r\n\t\tthis.x *= s;\r\n\t\tthis.y *= s;\r\n\t\tthis.z *= s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets this vector to the product of two given vectors.\r\n\t *\r\n\t * @param {Vector3} a - A vector.\r\n\t * @param {Vector3} b - Another vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tmultiplyVectors(a, b) {\r\n\r\n\t\tthis.x = a.x * b.x;\r\n\t\tthis.y = a.y * b.y;\r\n\t\tthis.z = a.z * b.z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Divides this vector by another vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tdivide(v) {\r\n\r\n\t\tthis.x /= v.x;\r\n\t\tthis.y /= v.y;\r\n\t\tthis.z /= v.z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Divides this vector by a given scalar.\r\n\t *\r\n\t * @param {Number} s - A scalar.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tdivideScalar(s) {\r\n\r\n\t\tthis.x /= s;\r\n\t\tthis.y /= s;\r\n\t\tthis.z /= s;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets this vector to the cross product of the given vectors.\r\n\t *\r\n\t * @param {Vector3} a - A vector.\r\n\t * @param {Vector3} b - Another vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tcrossVectors(a, b) {\r\n\r\n\t\tconst ax = a.x, ay = a.y, az = a.z;\r\n\t\tconst bx = b.x, by = b.y, bz = b.z;\r\n\r\n\t\tthis.x = ay * bz - az * by;\r\n\t\tthis.y = az * bx - ax * bz;\r\n\t\tthis.z = ax * by - ay * bx;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the cross product of this vector and the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tcross(v) {\r\n\r\n\t\treturn this.crossVectors(this, v);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Applies a matrix to this direction vector.\r\n\t *\r\n\t * @param {Matrix4} m - A matrix.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\ttransformDirection(m) {\r\n\r\n\t\tconst x = this.x, y = this.y, z = this.z;\r\n\t\tconst e = m.elements;\r\n\r\n\t\tthis.x = e[0] * x + e[4] * y + e[8] * z;\r\n\t\tthis.y = e[1] * x + e[5] * y + e[9] * z;\r\n\t\tthis.z = e[2] * x + e[6] * y + e[10] * z;\r\n\r\n\t\treturn this.normalize();\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Applies a matrix to this vector.\r\n\t *\r\n\t * @param {Matrix3} m - A matrix.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tapplyMatrix3(m) {\r\n\r\n\t\tconst x = this.x, y = this.y, z = this.z;\r\n\t\tconst e = m.elements;\r\n\r\n\t\tthis.x = e[0] * x + e[3] * y + e[6] * z;\r\n\t\tthis.y = e[1] * x + e[4] * y + e[7] * z;\r\n\t\tthis.z = e[2] * x + e[5] * y + e[8] * z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Applies a normal matrix to this vector and normalizes it.\r\n\t *\r\n\t * @param {Matrix3} m - A normal matrix.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tapplyNormalMatrix(m) {\r\n\r\n\t\treturn this.applyMatrix3(m).normalize();\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Applies a matrix to this vector.\r\n\t *\r\n\t * @param {Matrix4} m - A matrix.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tapplyMatrix4(m) {\r\n\r\n\t\tconst x = this.x, y = this.y, z = this.z;\r\n\t\tconst e = m.elements;\r\n\r\n\t\tthis.x = e[0] * x + e[4] * y + e[8] * z + e[12];\r\n\t\tthis.y = e[1] * x + e[5] * y + e[9] * z + e[13];\r\n\t\tthis.z = e[2] * x + e[6] * y + e[10] * z + e[14];\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Applies a quaternion to this vector.\r\n\t *\r\n\t * @param {Quaternion} q - A quaternion.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tapplyQuaternion(q) {\r\n\r\n\t\tconst x = this.x, y = this.y, z = this.z;\r\n\t\tconst qx = q.x, qy = q.y, qz = q.z, qw = q.w;\r\n\r\n\t\t// Calculate: quaternion * vector.\r\n\t\tconst ix = qw * x + qy * z - qz * y;\r\n\t\tconst iy = qw * y + qz * x - qx * z;\r\n\t\tconst iz = qw * z + qx * y - qy * x;\r\n\t\tconst iw = -qx * x - qy * y - qz * z;\r\n\r\n\t\t// Calculate: result * inverse quaternion.\r\n\t\tthis.x = ix * qw + iw * -qx + iy * -qz - iz * -qy;\r\n\t\tthis.y = iy * qw + iw * -qy + iz * -qx - ix * -qz;\r\n\t\tthis.z = iz * qw + iw * -qz + ix * -qy - iy * -qx;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Negates this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tnegate() {\r\n\r\n\t\tthis.x = -this.x;\r\n\t\tthis.y = -this.y;\r\n\t\tthis.z = -this.z;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the dot product with another vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The dot product.\r\n\t */\r\n\r\n\tdot(v) {\r\n\r\n\t\treturn this.x * v.x + this.y * v.y + this.z * v.z;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Reflects this vector. The given plane normal is assumed to be normalized.\r\n\t *\r\n\t * @param {Vector3} n - A normal.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\treflect(n) {\r\n\r\n\t\tconst nx = n.x;\r\n\t\tconst ny = n.y;\r\n\t\tconst nz = n.z;\r\n\r\n\t\tthis.sub(n.multiplyScalar(2 * this.dot(n)));\r\n\r\n\t\t// Restore the normal.\r\n\t\tn.set(nx, ny, nz);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Computes the angle to the given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The angle in radians.\r\n\t */\r\n\r\n\tangleTo(v) {\r\n\r\n\t\tconst denominator = Math.sqrt(this.lengthSquared() * v.lengthSquared());\r\n\r\n\t\treturn (denominator === 0.0) ? (Math.PI * 0.5) :\r\n\t\t\tMath.acos(Math.min(Math.max(this.dot(v) / denominator, -1), 1));\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the Manhattan length of this vector.\r\n\t *\r\n\t * @return {Number} The length.\r\n\t */\r\n\r\n\tmanhattanLength() {\r\n\r\n\t\treturn Math.abs(this.x) + Math.abs(this.y) + Math.abs(this.z);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the squared length of this vector.\r\n\t *\r\n\t * @return {Number} The squared length.\r\n\t */\r\n\r\n\tlengthSquared() {\r\n\r\n\t\treturn this.x * this.x + this.y * this.y + this.z * this.z;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the length of this vector.\r\n\t *\r\n\t * @return {Number} The length.\r\n\t */\r\n\r\n\tlength() {\r\n\r\n\t\treturn Math.sqrt(this.x * this.x + this.y * this.y + this.z * this.z);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the Manhattan distance to a given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The distance.\r\n\t */\r\n\r\n\tmanhattanDistanceTo(v) {\r\n\r\n\t\treturn Math.abs(this.x - v.x) + Math.abs(this.y - v.y) + Math.abs(this.z - v.z);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the squared distance to a given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The squared distance.\r\n\t */\r\n\r\n\tdistanceToSquared(v) {\r\n\r\n\t\tconst dx = this.x - v.x;\r\n\t\tconst dy = this.y - v.y;\r\n\t\tconst dz = this.z - v.z;\r\n\r\n\t\treturn dx * dx + dy * dy + dz * dz;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Calculates the distance to a given vector.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Number} The distance.\r\n\t */\r\n\r\n\tdistanceTo(v) {\r\n\r\n\t\treturn Math.sqrt(this.distanceToSquared(v));\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Normalizes this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tnormalize() {\r\n\r\n\t\treturn this.divideScalar(this.length());\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets the length of this vector.\r\n\t *\r\n\t * @param {Number} length - The new length.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tsetLength(length) {\r\n\r\n\t\treturn this.normalize().multiplyScalar(length);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Adopts the min value for each component of this vector and the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tmin(v) {\r\n\r\n\t\tthis.x = Math.min(this.x, v.x);\r\n\t\tthis.y = Math.min(this.y, v.y);\r\n\t\tthis.z = Math.min(this.z, v.z);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Adopts the max value for each component of this vector and the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tmax(v) {\r\n\r\n\t\tthis.x = Math.max(this.x, v.x);\r\n\t\tthis.y = Math.max(this.y, v.y);\r\n\t\tthis.z = Math.max(this.z, v.z);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Clamps this vector.\r\n\t *\r\n\t * @param {Vector3} min - The lower bounds. Assumed to be smaller than max.\r\n\t * @param {Vector3} max - The upper bounds. Assumed to be greater than min.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tclamp(min, max) {\r\n\r\n\t\tthis.x = Math.max(min.x, Math.min(max.x, this.x));\r\n\t\tthis.y = Math.max(min.y, Math.min(max.y, this.y));\r\n\t\tthis.z = Math.max(min.z, Math.min(max.z, this.z));\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Floors this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tfloor() {\r\n\r\n\t\tthis.x = Math.floor(this.x);\r\n\t\tthis.y = Math.floor(this.y);\r\n\t\tthis.z = Math.floor(this.z);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Ceils this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tceil() {\r\n\r\n\t\tthis.x = Math.ceil(this.x);\r\n\t\tthis.y = Math.ceil(this.y);\r\n\t\tthis.z = Math.ceil(this.z);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Rounds this vector.\r\n\t *\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tround() {\r\n\r\n\t\tthis.x = Math.round(this.x);\r\n\t\tthis.y = Math.round(this.y);\r\n\t\tthis.z = Math.round(this.z);\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Lerps towards the given vector.\r\n\t *\r\n\t * @param {Vector3} v - The target vector.\r\n\t * @param {Number} alpha - The lerp factor.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tlerp(v, alpha) {\r\n\r\n\t\tthis.x += (v.x - this.x) * alpha;\r\n\t\tthis.y += (v.y - this.y) * alpha;\r\n\t\tthis.z += (v.z - this.z) * alpha;\r\n\r\n\t\treturn this;\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Sets this vector to the lerp result of the given vectors.\r\n\t *\r\n\t * @param {Vector3} v1 - A base vector.\r\n\t * @param {Vector3} v2 - The target vector.\r\n\t * @param {Number} alpha - The lerp factor.\r\n\t * @return {Vector3} This vector.\r\n\t */\r\n\r\n\tlerpVectors(v1, v2, alpha) {\r\n\r\n\t\treturn this.subVectors(v2, v1).multiplyScalar(alpha).add(v1);\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * Checks if this vector equals the given one.\r\n\t *\r\n\t * @param {Vector3} v - A vector.\r\n\t * @return {Boolean} Whether this vector equals the given one.\r\n\t */\r\n\r\n\tequals(v) {\r\n\r\n\t\treturn (v.x === this.x && v.y === this.y && v.z === this.z);\r\n\r\n\t}\r\n\r\n}\r\n", "static": true, "longname": "D:/Sourcecode/JavaScript/math-ds/src/Vector3.js", "access": "public", @@ -16090,7 +16090,7 @@ }, { "kind": "packageJSON", - "content": "{\r\n\t\"name\": \"math-ds\",\r\n\t\"version\": \"1.2.0\",\r\n\t\"description\": \"Mathematical data structures.\",\r\n\t\"homepage\": \"https://github.com/vanruesc/math-ds\",\r\n\t\"main\": \"build/math-ds.js\",\r\n\t\"module\": \"build/math-ds.esm.js\",\r\n\t\"exports\": {\r\n\t\t\".\": \"./build/math-ds.esm.js\"\r\n\t},\r\n\t\"sideEffects\": false,\r\n\t\"license\": \"Zlib\",\r\n\t\"keywords\": [\r\n\t\t\"mathematical\",\r\n\t\t\"data\",\r\n\t\t\"structures\",\r\n\t\t\"vector\",\r\n\t\t\"matrix\",\r\n\t\t\"aabb\",\r\n\t\t\"line\",\r\n\t\t\"euler\",\r\n\t\t\"frustum\",\r\n\t\t\"quaternion\",\r\n\t\t\"plane\",\r\n\t\t\"ray\",\r\n\t\t\"sphere\",\r\n\t\t\"spherical\",\r\n\t\t\"cylindrical\",\r\n\t\t\"2d\",\r\n\t\t\"3d\"\r\n\t],\r\n\t\"author\": {\r\n\t\t\"name\": \"Raoul van Rüschen\",\r\n\t\t\"email\": \"vanruesc@outlook.de\"\r\n\t},\r\n\t\"repository\": {\r\n\t\t\"type\": \"git\",\r\n\t\t\"url\": \"https://github.com/vanruesc/math-ds.git\"\r\n\t},\r\n\t\"bugs\": {\r\n\t\t\"url\": \"https://github.com/vanruesc/math-ds/issues\"\r\n\t},\r\n\t\"files\": [\r\n\t\t\"build\"\r\n\t],\r\n\t\"scripts\": {\r\n\t\t\"ava\": \"ava\",\r\n\t\t\"build\": \"rollup -c\",\r\n\t\t\"build:production\": \"cross-env NODE_ENV=production npm run build\",\r\n\t\t\"watch\": \"rollup -c -w\",\r\n\t\t\"doc\": \"rimraf docs && esdoc\",\r\n\t\t\"pretest\": \"npm run build:production\",\r\n\t\t\"test\": \"ava\",\r\n\t\t\"prepack\": \"npm test && npm run doc\"\r\n\t},\r\n\t\"ava\": {\r\n\t\t\"failFast\": true,\r\n\t\t\"files\": [\r\n\t\t\t\"test/**/*.js\"\r\n\t\t],\r\n\t\t\"require\": [\r\n\t\t\t\"esm\"\r\n\t\t]\r\n\t},\r\n\t\"eslintConfig\": {\r\n\t\t\"extends\": \"delta\"\r\n\t},\r\n\t\"devDependencies\": {\r\n\t\t\"@babel/core\": \"7.x.x\",\r\n\t\t\"@babel/preset-env\": \"7.x.x\",\r\n\t\t\"@rollup/plugin-babel\": \"5.x.x\",\r\n\t\t\"@rollup/plugin-node-resolve\": \"7.x.x\",\r\n\t\t\"ava\": \"3.x.x\",\r\n\t\t\"cross-env\": \"7.x.x\",\r\n\t\t\"esdoc\": \"1.x.x\",\r\n\t\t\"esdoc-importpath-plugin\": \"1.x.x\",\r\n\t\t\"esdoc-standard-plugin\": \"1.x.x\",\r\n\t\t\"eslint-config-delta\": \"1.x.x\",\r\n\t\t\"esm\": \"3.x.x\",\r\n\t\t\"rimraf\": \"3.x.x\",\r\n\t\t\"rollup\": \"2.x.x\",\r\n\t\t\"rollup-plugin-eslint\": \"6.x.x\",\r\n\t\t\"rollup-plugin-terser\": \"5.x.x\"\r\n\t}\r\n}\r\n", + "content": "{\r\n\t\"name\": \"math-ds\",\r\n\t\"version\": \"1.2.1\",\r\n\t\"description\": \"Mathematical data structures.\",\r\n\t\"homepage\": \"https://github.com/vanruesc/math-ds\",\r\n\t\"main\": \"build/math-ds.js\",\r\n\t\"module\": \"build/math-ds.esm.js\",\r\n\t\"exports\": {\r\n\t\t\".\": \"./build/math-ds.esm.js\"\r\n\t},\r\n\t\"sideEffects\": false,\r\n\t\"license\": \"Zlib\",\r\n\t\"keywords\": [\r\n\t\t\"mathematical\",\r\n\t\t\"data\",\r\n\t\t\"structures\",\r\n\t\t\"vector\",\r\n\t\t\"matrix\",\r\n\t\t\"aabb\",\r\n\t\t\"line\",\r\n\t\t\"euler\",\r\n\t\t\"frustum\",\r\n\t\t\"quaternion\",\r\n\t\t\"plane\",\r\n\t\t\"ray\",\r\n\t\t\"sphere\",\r\n\t\t\"spherical\",\r\n\t\t\"cylindrical\",\r\n\t\t\"2d\",\r\n\t\t\"3d\"\r\n\t],\r\n\t\"author\": {\r\n\t\t\"name\": \"Raoul van Rüschen\",\r\n\t\t\"email\": \"vanruesc@outlook.de\"\r\n\t},\r\n\t\"repository\": {\r\n\t\t\"type\": \"git\",\r\n\t\t\"url\": \"https://github.com/vanruesc/math-ds.git\"\r\n\t},\r\n\t\"bugs\": {\r\n\t\t\"url\": \"https://github.com/vanruesc/math-ds/issues\"\r\n\t},\r\n\t\"files\": [\r\n\t\t\"build\"\r\n\t],\r\n\t\"scripts\": {\r\n\t\t\"ava\": \"ava\",\r\n\t\t\"build\": \"rollup -c\",\r\n\t\t\"build:production\": \"cross-env NODE_ENV=production npm run build\",\r\n\t\t\"watch\": \"rollup -c -w\",\r\n\t\t\"doc\": \"rimraf docs && esdoc\",\r\n\t\t\"pretest\": \"npm run build:production\",\r\n\t\t\"test\": \"ava\",\r\n\t\t\"prepack\": \"npm test && npm run doc\"\r\n\t},\r\n\t\"ava\": {\r\n\t\t\"failFast\": true,\r\n\t\t\"files\": [\r\n\t\t\t\"test/**/*.js\"\r\n\t\t],\r\n\t\t\"require\": [\r\n\t\t\t\"esm\"\r\n\t\t]\r\n\t},\r\n\t\"eslintConfig\": {\r\n\t\t\"extends\": \"delta\"\r\n\t},\r\n\t\"devDependencies\": {\r\n\t\t\"@babel/core\": \"7.x.x\",\r\n\t\t\"@babel/preset-env\": \"7.x.x\",\r\n\t\t\"@rollup/plugin-babel\": \"5.x.x\",\r\n\t\t\"@rollup/plugin-node-resolve\": \"7.x.x\",\r\n\t\t\"ava\": \"3.x.x\",\r\n\t\t\"cross-env\": \"7.x.x\",\r\n\t\t\"esdoc\": \"1.x.x\",\r\n\t\t\"esdoc-importpath-plugin\": \"1.x.x\",\r\n\t\t\"esdoc-standard-plugin\": \"1.x.x\",\r\n\t\t\"eslint-config-delta\": \"1.x.x\",\r\n\t\t\"esm\": \"3.x.x\",\r\n\t\t\"rimraf\": \"3.x.x\",\r\n\t\t\"rollup\": \"2.x.x\",\r\n\t\t\"rollup-plugin-eslint\": \"6.x.x\",\r\n\t\t\"rollup-plugin-terser\": \"5.x.x\"\r\n\t}\r\n}\r\n", "longname": "D:\\Sourcecode\\JavaScript\\math-ds\\package.json", "name": "package.json", "static": true, diff --git a/docs/source.html b/docs/source.html index 08d0c7e..99ff27a 100644 --- a/docs/source.html +++ b/docs/source.html @@ -190,17 +190,17 @@ src/Vector2.js Vector2 100 %48/48 - 10736 byte - 702 - 2020-05-06 11:44:38 (UTC) + 10668 byte + 694 + 2020-05-06 12:12:17 (UTC) src/Vector3.js Vector3 100 %59/59 - 16373 byte + 16388 byte 936 - 2020-05-06 11:44:28 (UTC) + 2020-05-06 12:11:17 (UTC) src/Vector4.js diff --git a/package.json b/package.json index aa9382b..59ed12c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "math-ds", - "version": "1.2.0", + "version": "1.2.1", "description": "Mathematical data structures.", "homepage": "https://github.com/vanruesc/math-ds", "main": "build/math-ds.js",