three-stdlib 2.14.0 → 2.14.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,45 +1,45 @@
1
- import { Mesh, Vector3, InstancedInterleavedBuffer, InterleavedBufferAttribute } from 'three';
1
+ import { Vector3, Mesh, InstancedInterleavedBuffer, InterleavedBufferAttribute } from 'three';
2
2
  import { LineSegmentsGeometry } from './LineSegmentsGeometry.js';
3
3
  import { LineMaterial } from './LineMaterial.js';
4
4
 
5
- var Wireframe = function (geometry, material) {
6
- Mesh.call(this);
7
- this.type = 'Wireframe';
8
- this.geometry = geometry !== undefined ? geometry : new LineSegmentsGeometry();
9
- this.material = material !== undefined ? material : new LineMaterial({
5
+ const _start = new Vector3();
6
+
7
+ const _end = new Vector3();
8
+
9
+ class Wireframe extends Mesh {
10
+ constructor(geometry = new LineSegmentsGeometry(), material = new LineMaterial({
10
11
  color: Math.random() * 0xffffff
11
- });
12
- };
13
-
14
- Wireframe.prototype = Object.assign(Object.create(Mesh.prototype), {
15
- constructor: Wireframe,
16
- isWireframe: true,
17
- computeLineDistances: function () {
18
- // for backwards-compatability, but could be a method of LineSegmentsGeometry...
19
- var start = new Vector3();
20
- var end = new Vector3();
21
- return function computeLineDistances() {
22
- var geometry = this.geometry;
23
- var instanceStart = geometry.attributes.instanceStart;
24
- var instanceEnd = geometry.attributes.instanceEnd;
25
- var lineDistances = new Float32Array(2 * instanceStart.data.count);
26
-
27
- for (let i = 0, j = 0, l = instanceStart.data.count; i < l; i++, j += 2) {
28
- start.fromBufferAttribute(instanceStart, i);
29
- end.fromBufferAttribute(instanceEnd, i);
30
- lineDistances[j] = j === 0 ? 0 : lineDistances[j - 1];
31
- lineDistances[j + 1] = lineDistances[j] + start.distanceTo(end);
32
- }
33
-
34
- var instanceDistanceBuffer = new InstancedInterleavedBuffer(lineDistances, 2, 1); // d0, d1
35
-
36
- geometry.setAttribute('instanceDistanceStart', new InterleavedBufferAttribute(instanceDistanceBuffer, 1, 0)); // d0
37
-
38
- geometry.setAttribute('instanceDistanceEnd', new InterleavedBufferAttribute(instanceDistanceBuffer, 1, 1)); // d1
39
-
40
- return this;
41
- };
42
- }()
43
- });
12
+ })) {
13
+ super(geometry, material);
14
+ this.isWireframe = true;
15
+ this.type = 'Wireframe';
16
+ } // for backwards-compatibility, but could be a method of LineSegmentsGeometry...
17
+
18
+
19
+ computeLineDistances() {
20
+ const geometry = this.geometry;
21
+ const instanceStart = geometry.attributes.instanceStart;
22
+ const instanceEnd = geometry.attributes.instanceEnd;
23
+ const lineDistances = new Float32Array(2 * instanceStart.count);
24
+
25
+ for (let i = 0, j = 0, l = instanceStart.count; i < l; i++, j += 2) {
26
+ _start.fromBufferAttribute(instanceStart, i);
27
+
28
+ _end.fromBufferAttribute(instanceEnd, i);
29
+
30
+ lineDistances[j] = j === 0 ? 0 : lineDistances[j - 1];
31
+ lineDistances[j + 1] = lineDistances[j] + _start.distanceTo(_end);
32
+ }
33
+
34
+ const instanceDistanceBuffer = new InstancedInterleavedBuffer(lineDistances, 2, 1); // d0, d1
35
+
36
+ geometry.setAttribute('instanceDistanceStart', new InterleavedBufferAttribute(instanceDistanceBuffer, 1, 0)); // d0
37
+
38
+ geometry.setAttribute('instanceDistanceEnd', new InterleavedBufferAttribute(instanceDistanceBuffer, 1, 1)); // d1
39
+
40
+ return this;
41
+ }
42
+
43
+ }
44
44
 
45
45
  export { Wireframe };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),r=require("./LineSegmentsGeometry.cjs.js");require("@babel/runtime/helpers/defineProperty");var t=function(t){r.LineSegmentsGeometry.call(this),this.type="WireframeGeometry2",this.fromWireframeGeometry(new e.WireframeGeometry(t))};t.prototype=Object.assign(Object.create(r.LineSegmentsGeometry.prototype),{constructor:t,isWireframeGeometry2:!0}),exports.WireframeGeometry2=t;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),r=require("./LineSegmentsGeometry.cjs.js");class t extends r.LineSegmentsGeometry{constructor(r){super(),this.isWireframeGeometry2=!0,this.type="WireframeGeometry2",this.fromWireframeGeometry(new e.WireframeGeometry(r))}}exports.WireframeGeometry2=t;
@@ -1,15 +1,14 @@
1
1
  import { WireframeGeometry } from 'three';
2
2
  import { LineSegmentsGeometry } from './LineSegmentsGeometry.js';
3
3
 
4
- var WireframeGeometry2 = function (geometry) {
5
- LineSegmentsGeometry.call(this);
6
- this.type = 'WireframeGeometry2';
7
- this.fromWireframeGeometry(new WireframeGeometry(geometry)); // set colors, maybe
8
- };
4
+ class WireframeGeometry2 extends LineSegmentsGeometry {
5
+ constructor(geometry) {
6
+ super();
7
+ this.isWireframeGeometry2 = true;
8
+ this.type = 'WireframeGeometry2';
9
+ this.fromWireframeGeometry(new WireframeGeometry(geometry)); // set colors, maybe
10
+ }
9
11
 
10
- WireframeGeometry2.prototype = Object.assign(Object.create(LineSegmentsGeometry.prototype), {
11
- constructor: WireframeGeometry2,
12
- isWireframeGeometry2: true
13
- });
12
+ }
14
13
 
15
14
  export { WireframeGeometry2 };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/defineProperty"),t=require("three");function s(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var r=s(e);class n extends t.Loader{constructor(e){super(e),r.default(this,"options",{lineHeight:1,letterSpacing:0})}load(e,s,r,n){const o=new t.FileLoader(this.manager);o.setPath(this.path),o.setRequestHeader(this.requestHeader),o.setWithCredentials(this.withCredentials),o.load(e,(e=>{if("string"!=typeof e)throw new Error("unsupported data type");const t=JSON.parse(e),r=this.parse(t);s&&s(r)}),r,n)}parse(e){return new o(e,this.options)}setOptions(e){Object.assign(this.options,e)}}class o{constructor(e,t){r.default(this,"data",void 0),r.default(this,"options",void 0),this.data=e,this.options=t}generateShapes(e,t=100){const s=[],r=function(e,t,s,r){const n=Array.from(e),o=t/s.resolution,i=(s.boundingBox.yMax-s.boundingBox.yMin+s.underlineThickness)*o,p=[];let l=0,h=0;for(let e=0;e<n.length;e++){const t=n[e];if("\n"===t)l=0,h-=i*r.lineHeight;else{const e=a(t,o,l,h,s);e&&(l+=e.offsetX+r.letterSpacing,p.push(e.path))}}return p}(e,t,this.data,this.options);for(let e=0,t=r.length;e<t;e++)Array.prototype.push.apply(s,r[e].toShapes(!1));return s}}function a(e,s,r,n,o){const a=o.glyphs[e]||o.glyphs["?"];if(!a)return void console.error('THREE.Font: character "'+e+'" does not exists in font family '+o.familyName+".");const i=new t.ShapePath;let p,l,h,u,c,d,f,y;if(a.o){const e=a._cachedOutline||(a._cachedOutline=a.o.split(" "));for(let t=0,o=e.length;t<o;){switch(e[t++]){case"m":p=parseInt(e[t++])*s+r,l=parseInt(e[t++])*s+n,i.moveTo(p,l);break;case"l":p=parseInt(e[t++])*s+r,l=parseInt(e[t++])*s+n,i.lineTo(p,l);break;case"q":h=parseInt(e[t++])*s+r,u=parseInt(e[t++])*s+n,c=parseInt(e[t++])*s+r,d=parseInt(e[t++])*s+n,i.quadraticCurveTo(c,d,h,u);break;case"b":h=parseInt(e[t++])*s+r,u=parseInt(e[t++])*s+n,c=parseInt(e[t++])*s+r,d=parseInt(e[t++])*s+n,f=parseInt(e[t++])*s+r,y=parseInt(e[t++])*s+n,i.bezierCurveTo(c,d,f,y,h,u)}}}return{offsetX:a.ha*s,path:i}}r.default(o,"isFont",void 0),r.default(o,"type",void 0),exports.Font=o,exports.FontLoader=n;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/defineProperty"),t=require("three");function r(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var s=r(e);class n extends t.Loader{constructor(e){super(e)}load(e,r,s,n){const a=new t.FileLoader(this.manager);a.setPath(this.path),a.setRequestHeader(this.requestHeader),a.setWithCredentials(this.withCredentials),a.load(e,(e=>{if("string"!=typeof e)throw new Error("unsupported data type");const t=JSON.parse(e),s=this.parse(t);r&&r(s)}),s,n)}parse(e){return new a(e)}}class a{constructor(e){s.default(this,"data",void 0),this.data=e}generateShapes(e,t=100,r){const s=[],n={letterSpacing:0,lineHeight:1,...r},a=function(e,t,r,s){const n=Array.from(e),a=t/r.resolution,i=(r.boundingBox.yMax-r.boundingBox.yMin+r.underlineThickness)*a,p=[];let l=0,u=0;for(let e=0;e<n.length;e++){const t=n[e];if("\n"===t)l=0,u-=i*s.lineHeight;else{const e=o(t,a,l,u,r);e&&(l+=e.offsetX+s.letterSpacing,p.push(e.path))}}return p}(e,t,this.data,n);for(let e=0,t=a.length;e<t;e++)Array.prototype.push.apply(s,a[e].toShapes(!1));return s}}function o(e,r,s,n,a){const o=a.glyphs[e]||a.glyphs["?"];if(!o)return void console.error('THREE.Font: character "'+e+'" does not exists in font family '+a.familyName+".");const i=new t.ShapePath;let p,l,u,c,h,d,f,y;if(o.o){const e=o._cachedOutline||(o._cachedOutline=o.o.split(" "));for(let t=0,a=e.length;t<a;){switch(e[t++]){case"m":p=parseInt(e[t++])*r+s,l=parseInt(e[t++])*r+n,i.moveTo(p,l);break;case"l":p=parseInt(e[t++])*r+s,l=parseInt(e[t++])*r+n,i.lineTo(p,l);break;case"q":u=parseInt(e[t++])*r+s,c=parseInt(e[t++])*r+n,h=parseInt(e[t++])*r+s,d=parseInt(e[t++])*r+n,i.quadraticCurveTo(h,d,u,c);break;case"b":u=parseInt(e[t++])*r+s,c=parseInt(e[t++])*r+n,h=parseInt(e[t++])*r+s,d=parseInt(e[t++])*r+n,f=parseInt(e[t++])*r+s,y=parseInt(e[t++])*r+n,i.bezierCurveTo(h,d,f,y,u,c)}}}return{offsetX:o.ha*r,path:i}}s.default(a,"isFont",void 0),s.default(a,"type",void 0),exports.Font=a,exports.FontLoader=n;
@@ -5,11 +5,9 @@ declare type Options = {
5
5
  letterSpacing: number;
6
6
  };
7
7
  export declare class FontLoader extends Loader {
8
- options: Options;
9
8
  constructor(manager?: LoadingManager);
10
9
  load(url: string, onLoad?: (responseFont: Font) => void, onProgress?: (event: ProgressEvent) => void, onError?: (event: ErrorEvent) => void): void;
11
10
  parse(json: FontData): Font;
12
- setOptions(options: Partial<Options>): void;
13
11
  }
14
12
  declare type Glyph = {
15
13
  _cachedOutline: string[];
@@ -30,10 +28,9 @@ declare type FontData = {
30
28
  };
31
29
  export declare class Font {
32
30
  data: FontData;
33
- options: Options;
34
31
  static isFont: true;
35
32
  static type: 'Font';
36
- constructor(data: FontData, options: Options);
37
- generateShapes(text: string, size?: number): Shape[];
33
+ constructor(data: FontData);
34
+ generateShapes(text: string, size?: number, _options?: Partial<Options>): Shape[];
38
35
  }
39
36
  export {};
@@ -4,11 +4,6 @@ import { Loader, FileLoader, ShapePath } from 'three';
4
4
  class FontLoader extends Loader {
5
5
  constructor(manager) {
6
6
  super(manager);
7
-
8
- _defineProperty(this, "options", {
9
- lineHeight: 1,
10
- letterSpacing: 0
11
- });
12
7
  }
13
8
 
14
9
  load(url, onLoad, onProgress, onError) {
@@ -25,27 +20,25 @@ class FontLoader extends Loader {
25
20
  }
26
21
 
27
22
  parse(json) {
28
- return new Font(json, this.options);
29
- }
30
-
31
- setOptions(options) {
32
- Object.assign(this.options, options);
23
+ return new Font(json);
33
24
  }
34
25
 
35
26
  }
36
27
  class Font {
37
- constructor(data, options) {
28
+ constructor(data) {
38
29
  _defineProperty(this, "data", void 0);
39
30
 
40
- _defineProperty(this, "options", void 0);
41
-
42
31
  this.data = data;
43
- this.options = options;
44
32
  }
45
33
 
46
- generateShapes(text, size = 100) {
34
+ generateShapes(text, size = 100, _options) {
47
35
  const shapes = [];
48
- const paths = createPaths(text, size, this.data, this.options);
36
+ const options = {
37
+ letterSpacing: 0,
38
+ lineHeight: 1,
39
+ ..._options
40
+ };
41
+ const paths = createPaths(text, size, this.data, options);
49
42
 
50
43
  for (let p = 0, pl = paths.length; p < pl; p++) {
51
44
  Array.prototype.push.apply(shapes, paths[p].toShapes(false));
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three");class t extends e.DataTextureLoader{constructor(t){super(t),this.type=e.HalfFloatType}parse(t){const r=function(e,t){switch(e){case 1:console.error("THREE.RGBELoader Read Error: "+(t||""));break;case 2:console.error("THREE.RGBELoader Write Error: "+(t||""));break;case 3:console.error("THREE.RGBELoader Bad File Format: "+(t||""));break;default:case 4:console.error("THREE.RGBELoader: Error: "+(t||""))}return-1},a=function(e,t,r){t=t||1024;let a=e.pos,n=-1,o=0,s="",i=String.fromCharCode.apply(null,new Uint16Array(e.subarray(a,a+128)));for(;0>(n=i.indexOf("\n"))&&o<t&&a<e.byteLength;)s+=i,o+=i.length,a+=128,i+=String.fromCharCode.apply(null,new Uint16Array(e.subarray(a,a+128)));return-1<n&&(!1!==r&&(e.pos+=o+n+1),s+i.slice(0,n))},n=function(e,t,r,a){const n=e[t+3],o=Math.pow(2,n-128)/255;r[a+0]=e[t+0]*o,r[a+1]=e[t+1]*o,r[a+2]=e[t+2]*o,r[a+3]=1},o=function(t,r,a,n){const o=t[r+3],s=Math.pow(2,o-128)/255;a[n+0]=e.DataUtils.toHalfFloat(Math.min(t[r+0]*s,65504)),a[n+1]=e.DataUtils.toHalfFloat(Math.min(t[r+1]*s,65504)),a[n+2]=e.DataUtils.toHalfFloat(Math.min(t[r+2]*s,65504)),a[n+3]=e.DataUtils.toHalfFloat(1)},s=new Uint8Array(t);s.pos=0;const i=function(e){const t=/^\s*GAMMA\s*=\s*(\d+(\.\d+)?)\s*$/,n=/^\s*EXPOSURE\s*=\s*(\d+(\.\d+)?)\s*$/,o=/^\s*FORMAT=(\S+)\s*$/,s=/^\s*\-Y\s+(\d+)\s+\+X\s+(\d+)\s*$/,i={valid:0,string:"",comments:"",programtype:"RGBE",format:"",gamma:1,exposure:1,width:0,height:0};let l,c;if(e.pos>=e.byteLength||!(l=a(e)))return r(1,"no header found");if(!(c=l.match(/^#\?(\S+)/)))return r(3,"bad initial token");for(i.valid|=1,i.programtype=c[1],i.string+=l+"\n";l=a(e),!1!==l;)if(i.string+=l+"\n","#"!==l.charAt(0)){if((c=l.match(t))&&(i.gamma=parseFloat(c[1])),(c=l.match(n))&&(i.exposure=parseFloat(c[1])),(c=l.match(o))&&(i.valid|=2,i.format=c[1]),(c=l.match(s))&&(i.valid|=4,i.height=parseInt(c[1],10),i.width=parseInt(c[2],10)),2&i.valid&&4&i.valid)break}else i.comments+=l+"\n";return 2&i.valid?4&i.valid?i:r(3,"missing image size specifier"):r(3,"missing format specifier")}(s);if(-1!==i){const t=i.width,a=i.height,l=function(e,t,a){const n=t;if(n<8||n>32767||2!==e[0]||2!==e[1]||128&e[2])return new Uint8Array(e);if(n!==(e[2]<<8|e[3]))return r(3,"wrong scanline width");const o=new Uint8Array(4*t*a);if(!o.length)return r(4,"unable to allocate buffer space");let s=0,i=0;const l=4*n,c=new Uint8Array(4),f=new Uint8Array(l);let p=a;for(;p>0&&i<e.byteLength;){if(i+4>e.byteLength)return r(1);if(c[0]=e[i++],c[1]=e[i++],c[2]=e[i++],c[3]=e[i++],2!=c[0]||2!=c[1]||(c[2]<<8|c[3])!=n)return r(3,"bad rgbe scanline format");let t,a=0;for(;a<l&&i<e.byteLength;){t=e[i++];const n=t>128;if(n&&(t-=128),0===t||a+t>l)return r(3,"bad scanline data");if(n){const r=e[i++];for(let e=0;e<t;e++)f[a++]=r}else f.set(e.subarray(i,i+t),a),a+=t,i+=t}const d=n;for(let e=0;e<d;e++){let t=0;o[s]=f[e+t],t+=n,o[s+1]=f[e+t],t+=n,o[s+2]=f[e+t],t+=n,o[s+3]=f[e+t],s+=4}p--}return o}(s.subarray(s.pos),t,a);if(-1!==l){let r,s,c,f;switch(this.type){case e.FloatType:f=l.length/4;const t=new Float32Array(4*f);for(let e=0;e<f;e++)n(l,4*e,t,4*e);r=t,c=e.FloatType;break;case e.HalfFloatType:f=l.length/4;const a=new Uint16Array(4*f);for(let e=0;e<f;e++)o(l,4*e,a,4*e);r=a,c=e.HalfFloatType;break;default:console.error("THREE.RGBELoader: unsupported type: ",this.type)}return{width:t,height:a,data:r,header:i.string,gamma:i.gamma,exposure:i.exposure,format:s,type:c}}}return null}setDataType(e){return this.type=e,this}load(t,r,a,n){return super.load(t,(function(t,a){switch(t.type){case e.FloatType:case e.HalfFloatType:t.encoding=e.LinearEncoding,t.minFilter=e.LinearFilter,t.magFilter=e.LinearFilter,t.generateMipmaps=!1,t.flipY=!0}r&&r(t,a)}),a,n)}}exports.RGBELoader=t;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three");class t extends e.DataTextureLoader{constructor(t){super(t),this.type=e.HalfFloatType}parse(t){const r=function(e,t){switch(e){case 1:console.error("THREE.RGBELoader Read Error: "+(t||""));break;case 2:console.error("THREE.RGBELoader Write Error: "+(t||""));break;case 3:console.error("THREE.RGBELoader Bad File Format: "+(t||""));break;default:case 4:console.error("THREE.RGBELoader: Error: "+(t||""))}return-1},a=function(e,t,r){t=t||1024;let a=e.pos,n=-1,o=0,s="",i=String.fromCharCode.apply(null,new Uint16Array(e.subarray(a,a+128)));for(;0>(n=i.indexOf("\n"))&&o<t&&a<e.byteLength;)s+=i,o+=i.length,a+=128,i+=String.fromCharCode.apply(null,new Uint16Array(e.subarray(a,a+128)));return-1<n&&(!1!==r&&(e.pos+=o+n+1),s+i.slice(0,n))},n=function(e,t,r,a){const n=e[t+3],o=Math.pow(2,n-128)/255;r[a+0]=e[t+0]*o,r[a+1]=e[t+1]*o,r[a+2]=e[t+2]*o,r[a+3]=1},o=function(t,r,a,n){const o=t[r+3],s=Math.pow(2,o-128)/255;a[n+0]=e.DataUtils.toHalfFloat(Math.min(t[r+0]*s,65504)),a[n+1]=e.DataUtils.toHalfFloat(Math.min(t[r+1]*s,65504)),a[n+2]=e.DataUtils.toHalfFloat(Math.min(t[r+2]*s,65504)),a[n+3]=e.DataUtils.toHalfFloat(1)},s=new Uint8Array(t);s.pos=0;const i=function(e){const t=/^\s*GAMMA\s*=\s*(\d+(\.\d+)?)\s*$/,n=/^\s*EXPOSURE\s*=\s*(\d+(\.\d+)?)\s*$/,o=/^\s*FORMAT=(\S+)\s*$/,s=/^\s*\-Y\s+(\d+)\s+\+X\s+(\d+)\s*$/,i={valid:0,string:"",comments:"",programtype:"RGBE",format:"",gamma:1,exposure:1,width:0,height:0};let l,c;if(e.pos>=e.byteLength||!(l=a(e)))return r(1,"no header found");if(!(c=l.match(/^#\?(\S+)/)))return r(3,"bad initial token");for(i.valid|=1,i.programtype=c[1],i.string+=l+"\n";l=a(e),!1!==l;)if(i.string+=l+"\n","#"!==l.charAt(0)){if((c=l.match(t))&&(i.gamma=parseFloat(c[1])),(c=l.match(n))&&(i.exposure=parseFloat(c[1])),(c=l.match(o))&&(i.valid|=2,i.format=c[1]),(c=l.match(s))&&(i.valid|=4,i.height=parseInt(c[1],10),i.width=parseInt(c[2],10)),2&i.valid&&4&i.valid)break}else i.comments+=l+"\n";return 2&i.valid?4&i.valid?i:r(3,"missing image size specifier"):r(3,"missing format specifier")}(s);if(-1!==i){const t=i.width,a=i.height,l=function(e,t,a){const n=t;if(n<8||n>32767||2!==e[0]||2!==e[1]||128&e[2])return new Uint8Array(e);if(n!==(e[2]<<8|e[3]))return r(3,"wrong scanline width");const o=new Uint8Array(4*t*a);if(!o.length)return r(4,"unable to allocate buffer space");let s=0,i=0;const l=4*n,c=new Uint8Array(4),f=new Uint8Array(l);let p=a;for(;p>0&&i<e.byteLength;){if(i+4>e.byteLength)return r(1);if(c[0]=e[i++],c[1]=e[i++],c[2]=e[i++],c[3]=e[i++],2!=c[0]||2!=c[1]||(c[2]<<8|c[3])!=n)return r(3,"bad rgbe scanline format");let t,a=0;for(;a<l&&i<e.byteLength;){t=e[i++];const n=t>128;if(n&&(t-=128),0===t||a+t>l)return r(3,"bad scanline data");if(n){const r=e[i++];for(let e=0;e<t;e++)f[a++]=r}else f.set(e.subarray(i,i+t),a),a+=t,i+=t}const d=n;for(let e=0;e<d;e++){let t=0;o[s]=f[e+t],t+=n,o[s+1]=f[e+t],t+=n,o[s+2]=f[e+t],t+=n,o[s+3]=f[e+t],s+=4}p--}return o}(s.subarray(s.pos),t,a);if(-1!==l){let r,s,c;switch(this.type){case e.FloatType:c=l.length/4;const t=new Float32Array(4*c);for(let e=0;e<c;e++)n(l,4*e,t,4*e);r=t,s=e.FloatType;break;case e.HalfFloatType:c=l.length/4;const a=new Uint16Array(4*c);for(let e=0;e<c;e++)o(l,4*e,a,4*e);r=a,s=e.HalfFloatType;break;default:console.error("THREE.RGBELoader: unsupported type: ",this.type)}return{width:t,height:a,data:r,header:i.string,gamma:i.gamma,exposure:i.exposure,type:s}}}return null}setDataType(e){return this.type=e,this}load(t,r,a,n){return super.load(t,(function(t,a){switch(t.type){case e.FloatType:case e.HalfFloatType:t.encoding=e.LinearEncoding,t.minFilter=e.LinearFilter,t.magFilter=e.LinearFilter,t.generateMipmaps=!1,t.flipY=!0}r&&r(t,a)}),a,n)}}exports.RGBELoader=t;
@@ -304,7 +304,7 @@ class RGBELoader extends DataTextureLoader {
304
304
  image_rgba_data = RGBE_ReadPixels_RLE(byteArray.subarray(byteArray.pos), w, h);
305
305
 
306
306
  if (RGBE_RETURN_FAILURE !== image_rgba_data) {
307
- let data, format, type;
307
+ let data, type;
308
308
  let numElements;
309
309
 
310
310
  switch (this.type) {
@@ -344,7 +344,6 @@ class RGBELoader extends DataTextureLoader {
344
344
  header: rgbe_header_info.string,
345
345
  gamma: rgbe_header_info.gamma,
346
346
  exposure: rgbe_header_info.exposure,
347
- format: format,
348
347
  type: type
349
348
  };
350
349
  }
@@ -362,13 +361,6 @@ class RGBELoader extends DataTextureLoader {
362
361
  function onLoadCallback(texture, texData) {
363
362
  switch (texture.type) {
364
363
  case FloatType:
365
- texture.encoding = LinearEncoding;
366
- texture.minFilter = LinearFilter;
367
- texture.magFilter = LinearFilter;
368
- texture.generateMipmaps = false;
369
- texture.flipY = true;
370
- break;
371
-
372
364
  case HalfFloatType:
373
365
  texture.encoding = LinearEncoding;
374
366
  texture.minFilter = LinearFilter;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "three-stdlib",
3
- "version": "2.14.0",
3
+ "version": "2.14.3",
4
4
  "private": false,
5
5
  "description": "stand-alone library of threejs examples",
6
6
  "main": "index.cjs.js",