bytev-charts
Version:
基于echarts和JavaScript及ES6封装的一个可以直接调用的图表组件库,内置主题设计,简单快捷,且支持用户自定义配置; npm 安装方式: npm install bytev-charts 若启动提示还需额外install插件,则运行 npm install @babel/runtime-corejs2 即可;
91 lines (79 loc) • 3.38 kB
JavaScript
import _Object$assign from "@babel/runtime-corejs2/core-js/object/assign";
import _Object$create from "@babel/runtime-corejs2/core-js/object/create";
import _Array$isArray from "@babel/runtime-corejs2/core-js/array/is-array";
console.warn("THREE.HDRCubeTextureLoader: As part of the transition to ES6 Modules, the files in 'examples/js' were deprecated in May 2020 (r117) and will be deleted in December 2020 (r124). You can find more information about developing using ES6 Modules in https://threejs.org/docs/#manual/en/introduction/Installation.");
THREE.HDRCubeTextureLoader = function (manager) {
THREE.Loader.call(this, manager);
this.hdrLoader = new THREE.RGBELoader();
this.type = THREE.UnsignedByteType;
};
THREE.HDRCubeTextureLoader.prototype = _Object$assign(_Object$create(THREE.Loader.prototype), {
constructor: THREE.HDRCubeTextureLoader,
load: function load(urls, onLoad, onProgress, onError) {
if (!_Array$isArray(urls)) {
console.warn('THREE.HDRCubeTextureLoader signature has changed. Use .setDataType() instead.');
this.setDataType(urls);
urls = onLoad;
onLoad = onProgress;
onProgress = onError;
onError = arguments[4];
}
var texture = new THREE.CubeTexture();
texture.type = this.type;
switch (texture.type) {
case THREE.UnsignedByteType:
texture.encoding = THREE.RGBEEncoding;
texture.format = THREE.RGBAFormat;
texture.minFilter = THREE.NearestFilter;
texture.magFilter = THREE.NearestFilter;
texture.generateMipmaps = false;
break;
case THREE.FloatType:
texture.encoding = THREE.LinearEncoding;
texture.format = THREE.RGBFormat;
texture.minFilter = THREE.LinearFilter;
texture.magFilter = THREE.LinearFilter;
texture.generateMipmaps = false;
break;
case THREE.HalfFloatType:
texture.encoding = THREE.LinearEncoding;
texture.format = THREE.RGBFormat;
texture.minFilter = THREE.LinearFilter;
texture.magFilter = THREE.LinearFilter;
texture.generateMipmaps = false;
break;
}
var scope = this;
var loaded = 0;
function loadHDRData(i, onLoad, onProgress, onError) {
new THREE.FileLoader(scope.manager).setPath(scope.path).setResponseType('arraybuffer').load(urls[i], function (buffer) {
loaded++;
var texData = scope.hdrLoader.parse(buffer);
if (!texData) return;
if (texData.data !== undefined) {
var dataTexture = new THREE.DataTexture(texData.data, texData.width, texData.height);
dataTexture.type = texture.type;
dataTexture.encoding = texture.encoding;
dataTexture.format = texture.format;
dataTexture.minFilter = texture.minFilter;
dataTexture.magFilter = texture.magFilter;
dataTexture.generateMipmaps = texture.generateMipmaps;
texture.images[i] = dataTexture;
}
if (loaded === 6) {
texture.needsUpdate = true;
if (onLoad) onLoad(texture);
}
}, onProgress, onError);
}
for (var i = 0; i < urls.length; i++) {
loadHDRData(i, onLoad, onProgress, onError);
}
return texture;
},
setDataType: function setDataType(value) {
this.type = value;
this.hdrLoader.setDataType(value);
return this;
}
});