this._vector.set(0,1,0))},translateZ:function(a){this.translate(a,this._vector.set(0,0,1))},lookAt:function(a){this.matrix.lookAt(a,this.position,this.up);this.rotationAutoUpdate&&this.rotation.setEulerFromRotationMatrix(this.matrix,this.eulerOrder)},add:function(a){if(a===this)console.warn("THREE.Object3D.add: An object can't be added as a child of itself.");elseif(ainstanceofTHREE.Object3D){a.parent!==void0&&a.parent.remove(a);a.parent=this;this.children.push(a);for(varb=this;b.parent!==void0;)b=
void0){console.warn("DEPRECATED: Camera hasn't been added to a Scene. Adding it...");a.add(f)}a.updateMatrixWorld();f.matrixWorldInverse.getInverse(f.matrixWorld);H.multiply(f.projectionMatrix,f.matrixWorldInverse);z.setFromMatrix(H);v=this.projectGraph(a,false);a=0;for(Q=v.objects.length;a<Q;a++){B=v.objects[a].object;L=B.matrixWorld;j=0;if(BinstanceofTHREE.Mesh){K=B.geometry;M=B.geometry.materials;S=K.vertices;R=K.faces;ja=K.faceVertexUvs;K=B.matrixRotationWorld.extractRotation(L);O=0;for(x=
THREE.Quaternion.slerp=function(a,b,c,d){vare=a.w*b.w+a.x*b.x+a.y*b.y+a.z*b.z;if(e<0){c.w=-b.w;c.x=-b.x;c.y=-b.y;c.z=-b.z;e=-e}elsec.copy(b);if(Math.abs(e)>=1){c.w=a.w;c.x=a.x;c.y=a.y;c.z=a.z;returnc}varb=Math.acos(e),f=Math.sqrt(1-e*e);if(Math.abs(f)<0.001){c.w=0.5*(a.w+c.w);c.x=0.5*(a.x+c.x);c.y=0.5*(a.y+c.y);c.z=0.5*(a.z+c.z);returnc}e=Math.sin((1-d)*b)/f;d=Math.sin(d*b)/f;c.w=a.w*e+c.w*d;c.x=a.x*e+c.x*d;c.y=a.y*e+c.y*d;c.z=a.z*e+c.z*d;returnc};THREE.Vertex=function(){console.warn("THREE.Vertex has been DEPRECATED. Use THREE.Vector3 instead.")};
void0){console.warn("DEPRECATED: Camera hasn't been added to a Scene. Adding it...");a.add(e)}a.updateMatrixWorld();e.matrixWorldInverse.getInverse(e.matrixWorld);F.multiply(e.projectionMatrix,e.matrixWorldInverse);z.setFromMatrix(F);w=this.projectGraph(a,false);a=0;for(Q=w.objects.length;a<Q;a++){C=w.objects[a].object;J=C.matrixWorld;k=0;if(CinstanceofTHREE.Mesh){I=C.geometry;K=C.geometry.materials;S=I.vertices;R=I.faces;ja=I.faceVertexUvs;I=C.matrixRotationWorld.extractRotation(J);O=0;for(y=
THREE.Quaternion.slerp=function(a,b,c,d){varf=a.w*b.w+a.x*b.x+a.y*b.y+a.z*b.z;if(f<0){c.w=-b.w;c.x=-b.x;c.y=-b.y;c.z=-b.z;f=-f}elsec.copy(b);if(Math.abs(f)>=1){c.w=a.w;c.x=a.x;c.y=a.y;c.z=a.z;returnc}varb=Math.acos(f),e=Math.sqrt(1-f*f);if(Math.abs(e)<0.001){c.w=0.5*(a.w+c.w);c.x=0.5*(a.x+c.x);c.y=0.5*(a.y+c.y);c.z=0.5*(a.z+c.z);returnc}f=Math.sin((1-d)*b)/e;d=Math.sin(d*b)/e;c.w=a.w*f+c.w*d;c.x=a.x*f+c.x*d;c.y=a.y*f+c.y*d;c.z=a.z*f+c.z*d;returnc};THREE.Vertex=function(){console.warn("THREE.Vertex has been DEPRECATED. Use THREE.Vector3 instead.")};
THREE.JSONLoader.prototype.loadAjaxJSON=function(a,b,c,d,e){varf=newXMLHttpRequest,g=0;f.onreadystatechange=function(){if(f.readyState===f.DONE)if(f.status===200||f.status===0){if(f.responseText){vari=JSON.parse(f.responseText);a.createModel(i,c,d)}elseconsole.warn("THREE.JSONLoader: ["+b+"] seems to be unreachable or file there is empty");a.onLoadComplete()}elseconsole.error("THREE.JSONLoader: Couldn't load ["+b+"] ["+f.status+"]");elseif(f.readyState===f.LOADING){if(e){g===0&&(g=f.getResponseHeader("Content-Length"));
THREE.JSONLoader.prototype.loadAjaxJSON=function(a,b,c,d,f){vare=newXMLHttpRequest,g=0;e.onreadystatechange=function(){if(e.readyState===e.DONE)if(e.status===200||e.status===0){if(e.responseText){varm=JSON.parse(e.responseText);a.createModel(m,c,d)}elseconsole.warn("THREE.JSONLoader: ["+b+"] seems to be unreachable or file there is empty");a.onLoadComplete()}elseconsole.error("THREE.JSONLoader: Couldn't load ["+b+"] ["+e.status+"]");elseif(e.readyState===e.LOADING){if(f){g===0&&(g=e.getResponseHeader("Content-Length"));