!function e(t,r,n){function a(o,s){if(!r[o]){if(!t[o]){var c="function"==typeof require&&require;if(!s&&c)return c(o,!0);if(i)return i(o,!0);var u=new Error("Cannot find module '"+o+"'");throw u.code="MODULE_NOT_FOUND",u}var l=r[o]={exports:{}};t[o][0].call(l.exports,function(e){var r=t[o][1][e];return a(r||e)},l,l.exports,e,t,r,n)}return r[o].exports}for(var i="function"==typeof require&&require,o=0;o0,s="string"==typeof i.Content&&""!==i.Content;if(o||s){var c=function(e){var t,r=e.Content,n=e.RelativeFilename||e.Filename,a=n.slice(n.lastIndexOf(".")+1).toLowerCase();switch(a){case"bmp":t="image/bmp";break;case"jpg":case"jpeg":t="image/jpeg";break;case"png":t="image/png";break;case"tif":t="image/tiff";break;default:return void console.warn('FBXLoader: Image type "'+a+'" is not supported.')}if("string"==typeof r)return"data:"+t+";base64,"+r;var i=new Uint8Array(r);return window.URL.createObjectURL(new Blob([i],{type:t}))}(n[a]);r[i.Filename]=c}}}}for(var u in t){var l=t[u];void 0!==r[l]?t[u]=r[l]:t[u]=t[u].split("\\").pop()}return t}function r(e,t,r,n){var a=new Map;if("Texture"in e.Objects){var i=e.Objects.Texture;for(var o in i){var s=function(e,t,r,n){var a=function(e,t,r,n){var a,i=t.path,o=n.get(e.id).children;void 0!==o&&o.length>0&&void 0!==r[o[0].ID]&&(0!==(a=r[o[0].ID]).indexOf("blob:")&&0!==a.indexOf("data:")||t.setPath(void 0));var s=t.load(a);return t.setPath(i),s}(e,t,r,n);a.ID=e.id,a.name=e.attrName;var i=e.WrapModeU,o=e.WrapModeV,s=void 0!==i?i.value:0,c=void 0!==o?o.value:0;if(a.wrapS=0===s?THREE.RepeatWrapping:THREE.ClampToEdgeWrapping,a.wrapT=0===c?THREE.RepeatWrapping:THREE.ClampToEdgeWrapping,"Scaling"in e){var u=e.Scaling.value;a.repeat.x=u[0],a.repeat.y=u[1]}return a}(i[o],t,r,n);a.set(parseInt(o),s)}}return a}function n(e,t,r){var n=new Map;if("Material"in e.Objects){var o=e.Objects.Material;for(var s in o){var c=function(e,t,r,n){var o=t.id,s=t.attrName,c=t.ShadingModel;"object"===(void 0===c?"undefined":a(c))&&(c=c.value);if(!n.has(o))return null;var u,l=function(e,t,r,n,a){var o={};t.BumpFactor&&(o.bumpScale=t.BumpFactor.value);t.Diffuse&&(o.color=(new THREE.Color).fromArray(t.Diffuse.value));t.DisplacementFactor&&(o.displacementScale=t.DisplacementFactor.value);t.ReflectionFactor&&(o.reflectivity=t.ReflectionFactor.value);t.Specular&&(o.specular=(new THREE.Color).fromArray(t.Specular.value));t.Shininess&&(o.shininess=t.Shininess.value);t.Emissive&&(o.emissive=(new THREE.Color).fromArray(t.Emissive.value));t.EmissiveFactor&&(o.emissiveIntensity=parseFloat(t.EmissiveFactor.value));t.Opacity&&(o.opacity=parseFloat(t.Opacity.value));o.opacity<1&&(o.transparent=!0);return a.get(n).children.forEach(function(t){var n=t.relationship;switch(n){case"Bump":o.bumpMap=r.get(t.ID);break;case"DiffuseColor":o.map=i(e,r,t.ID,a);break;case"DisplacementColor":o.displacementMap=i(e,r,t.ID,a);break;case"EmissiveColor":o.emissiveMap=i(e,r,t.ID,a);break;case"NormalMap":o.normalMap=i(e,r,t.ID,a);break;case"ReflectionColor":o.envMap=i(e,r,t.ID,a),o.envMap.mapping=THREE.EquirectangularReflectionMapping;break;case"SpecularColor":o.specularMap=i(e,r,t.ID,a);break;case"TransparentColor":o.alphaMap=i(e,r,t.ID,a),o.transparent=!0;break;case"AmbientColor":case"ShininessExponent":case"SpecularFactor":case"VectorDisplacementColor":default:console.warn("THREE.FBXLoader: %s map is not supported in three.js, skipping texture.",n)}}),o}(e,t,r,o,n);switch(c.toLowerCase()){case"phong":u=new THREE.MeshPhongMaterial;break;case"lambert":u=new THREE.MeshLambertMaterial;break;default:console.warn('THREE.FBXLoader: unknown material type "%s". Defaulting to MeshPhongMaterial.',c),u=new THREE.MeshPhongMaterial({color:3342591})}return u.setValues(l),u.name=s,u}(e,o[s],t,r);null!==c&&n.set(parseInt(s),c)}}return n}function i(e,t,r,n){return"LayeredTexture"in e.Objects&&r in e.Objects.LayeredTexture&&(console.warn("THREE.FBXLoader: layered textures are not supported in three.js. Discarding all but first layer."),r=n.get(r).children[0].ID),t.get(r)}function o(e,t){var r={};if("Deformer"in e.Objects){var n=e.Objects.Deformer;for(var a in n){if("Skin"===n[a].attrType){var i=t.get(parseInt(a)),o=function(e,t){var r=[];return e.children.forEach(function(e){var n=t[e.ID];if("Cluster"===n.attrType){var a={ID:e.ID,indices:[],weights:[],transform:(new THREE.Matrix4).fromArray(n.Transform.a),transformLink:(new THREE.Matrix4).fromArray(n.TransformLink.a),linkMode:n.Mode};"Indexes"in n&&(a.indices=n.Indexes.a,a.weights=n.Weights.a),r.push(a)}}),{rawBones:r,bones:[]}}(i,n);o.ID=a,i.parents.length>1&&console.warn("THREE.FBXLoader: skeleton attached to more than one geometry is not supported."),o.geometryID=i.parents[0].ID,r[a]=o}}}return r}function s(e,t,r){var n=new Map;if("Geometry"in e.Objects){var a=e.Objects.Geometry;for(var i in a){var o=function(e,t,r,n){switch(r.attrType){case"Mesh":return function(e,t,r,n){var a=t.parents.map(function(t){return e.Objects.Model[t.ID]});if(0===a.length)return;var i=t.children.reduce(function(e,t){return void 0!==n[t.ID]&&(e=n[t.ID]),e},null),o=new THREE.Matrix4,s=a[0];if("GeometricRotation"in s){var u=s.GeometricRotation.value.map(THREE.Math.degToRad);u[3]="ZYX",o.makeRotationFromEuler((new THREE.Euler).fromArray(u))}"GeometricTranslation"in s&&o.setPosition((new THREE.Vector3).fromArray(s.GeometricTranslation.value));return function(e,t,r,n,a){var i=r.Vertices.a,o=r.PolygonVertexIndex.a,s=[],u=[],l=[],f=[],p=[],d=[],h=[];if(r.LayerElementColor)var m=function(e){var t=e.MappingInformationType,r=e.ReferenceInformationType,n=e.Colors.a,a=[];"IndexToDirect"===r&&(a=e.ColorIndex.a);return{dataSize:4,buffer:n,indices:a,mappingType:t,referenceType:r}}(r.LayerElementColor[0]);if(r.LayerElementMaterial)var v=function(e){var t=e.MappingInformationType,r=e.ReferenceInformationType;if("NoMappingInformation"===t)return{dataSize:1,buffer:[0],indices:[0],mappingType:"AllSame",referenceType:r};for(var n=e.Materials.a,a=[],i=0;i4){w||(console.warn("THREE.FBXLoader: Vertex has more than 4 skinning weights assigned to vertex. Deleting additional weights."),w=!0);var F=[0,0,0,0],C=[0,0,0,0];y.forEach(function(e,t){var r=e,n=a[t];C.forEach(function(e,t,a){if(r>e){a[t]=r,r=e;var i=F[t];F[t]=n,n=i}})}),a=F,y=C}for(;y.length<4;)y.push(0),a.push(0);for(N=0;N<4;++N)S.push(y[N]),x.push(a[N])}if(E){var D=c(t,b,e,E);L.push(D[0],D[1],D[2])}if(v&&"AllSame"!==v.mappingType)var O=c(t,b,e,v)[0];if(g&&g.forEach(function(r,n){var a=c(t,b,e,r);void 0===A[n]&&(A[n]=[]),A[n].push(a[0]),A[n].push(a[1])}),R++,r){for(var N=2;N0&&F.addAttribute("color",new THREE.Float32BufferAttribute(l,3));n&&(F.addAttribute("skinIndex",new THREE.Float32BufferAttribute(h,4)),F.addAttribute("skinWeight",new THREE.Float32BufferAttribute(d,4)),F.FBX_Deformer=n);if(u.length>0){var D=new THREE.Float32BufferAttribute(u,3);(new THREE.Matrix3).getNormalMatrix(a).applyToBufferAttribute(D),F.addAttribute("normal",D)}if(f.forEach(function(e,t){var r="uv"+(t+1).toString();0===t&&(r="uv"),F.addAttribute(r,new THREE.Float32BufferAttribute(f[t],2))}),v&&"AllSame"!==v.mappingType){var O=p[0],N=0;if(p.forEach(function(e,t){e!==O&&(F.addGroup(N,t-N,O),O=e,N=t)}),F.groups.length>0){var M=F.groups[F.groups.length-1],B=M.start+M.count;B!==p.length&&F.addGroup(B,p.length-B,O)}0===F.groups.length&&F.addGroup(0,p.length,p[0])}return F}(0,0,r,i,o)}(e,t,r,n);case"NurbsCurve":return function(e){if(void 0===THREE.NURBSCurve)return console.error("THREE.FBXLoader: The loader relies on THREE.NURBSCurve for any nurbs present in the model. Nurbs will show up as empty geometry."),new THREE.BufferGeometry;var t=parseInt(e.Order);if(isNaN(t))return console.error("THREE.FBXLoader: Invalid Order %s given for geometry ID: %s",e.Order,e.id),new THREE.BufferGeometry;for(var r=t-1,n=e.KnotVector.a,a=[],i=e.Points.a,o=0,s=i.length;o1?o=s:s.length>0?o=s[0]:(o=new THREE.MeshPhongMaterial({color:13421772}),s.push(o));"color"in i.attributes&&s.forEach(function(e){e.vertexColors=THREE.VertexColors});i.FBX_Deformer?(s.forEach(function(e){e.skinning=!0}),a=new THREE.SkinnedMesh(i,o)):a=new THREE.Mesh(i,o);return a}(0,l,r,n);break;case"NurbsCurve":f=function(e,t){var r=e.children.reduce(function(e,r){return t.has(r.ID)&&(e=t.get(r.ID)),e},null),n=new THREE.LineBasicMaterial({color:3342591,linewidth:1});return new THREE.Line(r,n)}(l,r);break;case"LimbNode":case"Null":default:f=new THREE.Group}f.name=THREE.PropertyBinding.sanitizeNodeName(u.attrName),f.ID=c}!function(e,t,r){if("RotationOrder"in r){var n=["XYZ","XZY","YZX","ZXY","YXZ","ZYX","SphericXYZ"],a=parseInt(r.RotationOrder.value,10);a>0&&a<6?console.warn("THREE.FBXLoader: unsupported Euler Order: %s. Currently only XYZ order is supported. Animations and rotations may be incorrect.",n[a]):6===a&&console.warn("THREE.FBXLoader: unsupported Euler Order: Spherical XYZ. Animations and rotations may be incorrect.")}"Lcl_Translation"in r&&t.position.fromArray(r.Lcl_Translation.value);if("Lcl_Rotation"in r){var i=r.Lcl_Rotation.value.map(THREE.Math.degToRad);i.push("ZYX"),t.rotation.fromArray(i)}"Lcl_Scaling"in r&&t.scale.fromArray(r.Lcl_Scaling.value);if("PreRotation"in r){var o=r.PreRotation.value.map(THREE.Math.degToRad);o[3]="ZYX";var s=(new THREE.Euler).fromArray(o);s=(new THREE.Quaternion).setFromEuler(s);var c=(new THREE.Quaternion).setFromEuler(t.rotation);s.multiply(c),t.rotation.setFromQuaternion(s,"ZYX")}}(0,f,u),i.set(c,f)}return i}(e,r,n,a,t),s=e.Objects.Model;return o.forEach(function(r){var n=s[r.ID];!function(e,t,r,n,a){if("LookAtProperty"in r){n.get(t.ID).children.forEach(function(r){if("LookAtProperty"===r.relationship){var n=e.Objects.Model[r.ID];if("Lcl_Translation"in n){var i=n.Lcl_Translation.value;void 0!==t.target?(t.target.position.fromArray(i),a.add(t.target)):t.lookAt((new THREE.Vector3).fromArray(i))}}})}}(e,r,n,t,i);t.get(r.ID).parents.forEach(function(e){var t=o.get(e.ID);void 0!==t&&t.add(r)}),null===r.parent&&i.add(r)}),function(e,t,r,n,a){var i=function(e){var t={};if("Pose"in e.Objects){var r=e.Objects.Pose;for(var n in r)if("BindPose"===r[n].attrType){var a=r[n].PoseNode;Array.isArray(a)?a.forEach(function(e){t[e.Node]=(new THREE.Matrix4).fromArray(e.Matrix.a)}):t[a.Node]=(new THREE.Matrix4).fromArray(a.Matrix.a)}}return t}(e);for(var o in t){var s=t[o];a.get(parseInt(s.ID)).parents.forEach(function(e){if(r.has(e.ID)){var t=e.ID;a.get(t).parents.forEach(function(e){if(n.has(e.ID)){n.get(e.ID).bind(new THREE.Skeleton(s.bones),i[e.ID])}})}})}}(e,r,n,o,t),function(e,t,r){r.animations=[];var n=function(e,t){if(void 0===e.Objects.AnimationCurve)return;var r=function(e){var t=e.Objects.AnimationCurveNode,r=new Map;for(var n in t){var a=t[n];if(null!==a.attrName.match(/S|R|T/)){var i={id:a.id,attr:a.attrName,curves:{}};r.set(i.id,i)}}return r}(e);!function(e,t,r){var n=e.Objects.AnimationCurve;for(var a in n){var i={id:n[a].id,times:n[a].KeyTime.a.map(g),values:n[a].KeyValueFloat.a},o=t.get(i.id);if(void 0!==o){var s=o.parents[0].ID,c=o.parents[0].relationship,u="";if(c.match(/X/))u="x";else if(c.match(/Y/))u="y";else{if(!c.match(/Z/))continue;u="z"}r.get(s).curves[u]=i}}}(e,t,r);var n=function(e,t,r){var n=e.Objects.AnimationLayer,a=new Map;for(var i in n){var o=[],s=t.get(parseInt(i));if(void 0!==s){s.children.forEach(function(n,a){if(r.has(n.ID)){var i=r.get(n.ID);if(void 0!==i.curves.x||void 0!==i.curves.y||void 0!==i.curves.z){if(void 0===o[a]){var s;t.get(n.ID).parents.forEach(function(e){void 0!==e.relationship&&(s=e.ID)});var c=e.Objects.Model[s.toString()],u={modelName:THREE.PropertyBinding.sanitizeNodeName(c.attrName),initialPosition:[0,0,0],initialRotation:[0,0,0],initialScale:[1,1,1]};"Lcl_Translation"in c&&(u.initialPosition=c.Lcl_Translation.value),"Lcl_Rotation"in c&&(u.initialRotation=c.Lcl_Rotation.value),"Lcl_Scaling"in c&&(u.initialScale=c.Lcl_Scaling.value),"PreRotation"in c&&(u.preRotations=c.PreRotation.value),o[a]=u}o[a][i.attr]=i}}}),a.set(parseInt(i),o)}}return a}(e,t,r);return function(e,t,r){var n=e.Objects.AnimationStack,a={};for(var i in n){var o=t.get(parseInt(i)).children;o.length>1&&console.warn("THREE.FBXLoader: Encountered an animation stack with multiple layers, this is currently not supported. Ignoring subsequent layers.");var s=r.get(o[0].ID);a[i]={name:n[i].attrName,layer:s}}return a}(e,t,n)}(e,t);if(void 0===n)return;for(var a in n){var i=function(e){var t=[];return e.layer.forEach(function(e){t=t.concat(function(e){var t=[];if(void 0!==e.T&&Object.keys(e.T.curves).length>0){var r=l(e.modelName,e.T.curves,e.initialPosition,"position");void 0!==r&&t.push(r)}if(void 0!==e.R&&Object.keys(e.R.curves).length>0){var n=function(e,t,r,n){void 0!==t.x&&(t.x.values=t.x.values.map(THREE.Math.degToRad)),void 0!==t.y&&(t.y.values=t.y.values.map(THREE.Math.degToRad)),void 0!==t.z&&(t.z.values=t.z.values.map(THREE.Math.degToRad));var a=p(t),i=f(a,t,r);void 0!==n&&((n=n.map(THREE.Math.degToRad)).push("ZYX"),n=(new THREE.Euler).fromArray(n),n=(new THREE.Quaternion).setFromEuler(n));for(var o=new THREE.Quaternion,s=new THREE.Euler,c=[],u=0;u0){var a=l(e.modelName,e.S.curves,e.initialScale,"scale");void 0!==a&&t.push(a)}return t}(e))}),new THREE.AnimationClip(e.name,-1,t)}(n[a]);r.animations.push(i)}}(e,t,i),function(e,t){if("GlobalSettings"in e&&"AmbientColor"in e.GlobalSettings){var r=e.GlobalSettings.AmbientColor.value,n=r[0],a=r[1],i=r[2];if(0!==n||0!==a||0!==i){var o=new THREE.Color(n,a,i);t.add(new THREE.AmbientLight(o,1))}}}(e,i),i}function l(e,t,r,n){var a=p(t),i=f(a,t,r);return new THREE.VectorKeyframeTrack(e+"."+n,a,i)}function f(e,t,r){var n=r,a=[],i=-1,o=-1,s=-1;return e.forEach(function(e){if(t.x&&(i=t.x.times.indexOf(e)),t.y&&(o=t.y.times.indexOf(e)),t.z&&(s=t.z.times.indexOf(e)),-1!==i){var r=t.x.values[i];a.push(r),n[0]=r}else a.push(n[0]);if(-1!==o){var c=t.y.values[o];a.push(c),n[1]=c}else a.push(n[1]);if(-1!==s){var u=t.z.values[s];a.push(u),n[2]=u}else a.push(n[2])}),a}function p(e){var t=[];return void 0!==e.x&&(t=t.concat(e.x.times)),void 0!==e.y&&(t=t.concat(e.y.times)),void 0!==e.z&&(t=t.concat(e.z.times)),t=t.sort(function(e,t){return e-t}).filter(function(e,t,r){return r.indexOf(e)==t})}function d(){}function h(){}function m(e,t){this.dv=new DataView(e),this.offset=0,this.littleEndian=void 0===t||t}function v(){}function E(e){var t=e.match(/FBXVersion: (\d+)/);if(t){return parseInt(t[1])}throw new Error("THREE.FBXLoader: Cannot find the version number for the file given.")}function g(e){return e/46186158e3}function y(e){return e.split(",").map(function(e){return parseFloat(e)})}function T(e,t,r){return void 0===t&&(t=0),void 0===r&&(r=e.byteLength),THREE.LoaderUtils.decodeText(new Uint8Array(e,t,r))}function b(e,t,r,n){for(var a=r,i=0;a=t.length&&t===T(e,0,t.length)}(t))i=(new h).parse(t);else{var c=T(t);if(!function(e){function t(t){var r=e[t-1];return e=e.slice(n+t),n++,r}for(var r=["K","a","y","d","a","r","a","\\","F","B","X","\\","B","i","n","a","r","y","\\","\\"],n=0,a=0;a1&&(r=e[1].replace(/^(\w+)::/,""),n=e[2]),{id:t,name:r,type:n}},parseNodeProperty:function(e,t,r){var n=t[1].replace(/^"/,"").replace(/"$/,"").trim(),a=t[2].replace(/^"/,"").replace(/"$/,"").trim();"Content"===n&&","===a&&(a=r.replace(/"/g,"").replace(/,$/,"").trim());var i=this.getCurrentNode();if("Properties70"!==i.name){if("C"===n){var o=a.split(",").slice(1),s=parseInt(o[0]),c=parseInt(o[1]),u=a.split(",").slice(3);n="connections",function(e,t){for(var r=0,n=e.length,a=t.length;r=e.size():e.getOffset()+160+16>=e.size()},parseNode:function(e,t){var r={},n=t>=7500?e.getUint64():e.getUint32(),a=t>=7500?e.getUint64():e.getUint32(),i=(t>=7500?e.getUint64():e.getUint32(),e.getUint8()),o=e.getString(i);if(0===n)return null;for(var s=[],c=0;c0?s[0]:"",l=s.length>1?s[1]:"",f=s.length>2?s[2]:"";for(r.singleProperty=1===a&&e.getOffset()===n;n>e.getOffset();){var p=this.parseNode(e,t);null!==p&&this.parseSubNode(o,r,p)}return r.propertyList=s,"number"==typeof u&&(r.id=u),""!==l&&(r.attrName=l),""!==f&&(r.attrType=f),""!==o&&(r.name=o),r},parseSubNode:function(e,t,r){if(!0===r.singleProperty){var n=r.propertyList[0];Array.isArray(n)?(t[r.name]=r,r.a=n):t[r.name]=n}else if("Connections"===e&&"C"===r.name){var a=[];r.propertyList.forEach(function(e,t){0!==t&&a.push(e)}),void 0===t.connections&&(t.connections=[]),t.connections.push(a)}else if("Properties70"===r.name){Object.keys(r).forEach(function(e){t[e]=r[e]})}else if("Properties70"===e&&"P"===r.name){var i,o=r.propertyList[0],s=r.propertyList[1],c=r.propertyList[2],u=r.propertyList[3];0===o.indexOf("Lcl ")&&(o=o.replace("Lcl ","Lcl_")),0===s.indexOf("Lcl ")&&(s=s.replace("Lcl ","Lcl_")),i="Color"===s||"ColorRGB"===s||"Vector"===s||"Vector3D"===s||0===s.indexOf("Lcl_")?[r.propertyList[4],r.propertyList[5],r.propertyList[6]]:r.propertyList[4],t[o]={type:s,type2:c,flag:u,value:i}}else void 0===t[r.name]?"number"==typeof r.id?(t[r.name]={},t[r.name][r.id]=r):t[r.name]=r:"PoseNode"===r.name?(Array.isArray(t[r.name])||(t[r.name]=[t[r.name]]),t[r.name].push(r)):void 0===t[r.name][r.id]&&(t[r.name][r.id]=r)},parseProperty:function(e){var t=e.getString(1);switch(t){case"C":return e.getBoolean();case"D":return e.getFloat64();case"F":return e.getFloat32();case"I":return e.getInt32();case"L":return e.getInt64();case"R":r=e.getUint32();return e.getArrayBuffer(r);case"S":var r=e.getUint32();return e.getString(r);case"Y":return e.getInt16();case"b":case"c":case"d":case"f":case"i":case"l":var n=e.getUint32(),a=e.getUint32(),i=e.getUint32();if(0===a)switch(t){case"b":case"c":return e.getBooleanArray(n);case"d":return e.getFloat64Array(n);case"f":return e.getFloat32Array(n);case"i":return e.getInt32Array(n);case"l":return e.getInt64Array(n)}void 0===window.Zlib&&console.error("THREE.FBXLoader: External library Inflate.min.js required, obtain or import from https://github.com/imaya/zlib.js");var o=new m(new Zlib.Inflate(new Uint8Array(e.getArrayBuffer(i))).decompress().buffer);switch(t){case"b":case"c":return o.getBooleanArray(n);case"d":return o.getFloat64Array(n);case"f":return o.getFloat32Array(n);case"i":return o.getInt32Array(n);case"l":return o.getInt64Array(n)}default:throw new Error("THREE.FBXLoader: Unknown property type "+t)}}}),Object.assign(m.prototype,{getOffset:function(){return this.offset},size:function(){return this.dv.buffer.byteLength},skip:function(e){this.offset+=e},getBoolean:function(){return 1==(1&this.getUint8())},getBooleanArray:function(e){for(var t=[],r=0;r=0&&(t=t.slice(0,n)),THREE.LoaderUtils.decodeText(t)}}),Object.assign(v.prototype,{add:function(e,t){this[e]=t}})}()},{}],3:[function(e,t,r){"use strict";t.exports=THREE.PLYLoader=function(e){this.manager=void 0!==e?e:THREE.DefaultLoadingManager,this.propertyNameMapping={}},THREE.PLYLoader.prototype={constructor:THREE.PLYLoader,load:function(e,t,r,n){var a=this,i=new THREE.XHRLoader(this.manager);i.setResponseType("arraybuffer"),i.load(e,function(e){t(a.parse(e))},r,n)},setPropertyNameMapping:function(e){this.propertyNameMapping=e},bin2str:function(e){for(var t=new Uint8Array(e),r="",n=0;n=n.elements[o].count&&(o++,s=0);var l=this.parseASCIIElement(n.elements[o].properties,u);this.handleElement(r,n.elements[o].name,l),s++}}return this.postProcess(r)},postProcess:function(e){if(e.useColor){for(var t=0;t