bytev-charts-beta
Version:
基于echarts和JavaScript及ES6封装的一个可以直接调用的图表组件库,内置主题设计,简单快捷,且支持用户自定义配置; npm 安装方式: npm install bytev-charts 若启动提示还需额外install插件,则运行 npm install @babel/runtime-corejs2 即可;
50 lines (46 loc) • 2.26 kB
JavaScript
import _Object$defineProperty from "@babel/runtime-corejs2/core-js/object/define-property";
import _Object$assign from "@babel/runtime-corejs2/core-js/object/assign";
import _Object$create from "@babel/runtime-corejs2/core-js/object/create";
console.warn("THREE.CubeTexturePass: 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.CubeTexturePass = function (camera, envMap, opacity) {
THREE.Pass.call(this);
this.camera = camera;
this.needsSwap = false;
this.cubeShader = THREE.ShaderLib['cube'];
this.cubeMesh = new THREE.Mesh(new THREE.BoxBufferGeometry(10, 10, 10), new THREE.ShaderMaterial({
uniforms: this.cubeShader.uniforms,
vertexShader: this.cubeShader.vertexShader,
fragmentShader: this.cubeShader.fragmentShader,
depthTest: false,
depthWrite: false,
side: THREE.BackSide
}));
_Object$defineProperty(this.cubeMesh.material, 'envMap', {
get: function get() {
return this.uniforms.envMap.value;
}
});
this.envMap = envMap;
this.opacity = opacity !== undefined ? opacity : 1.0;
this.cubeScene = new THREE.Scene();
this.cubeCamera = new THREE.PerspectiveCamera();
this.cubeScene.add(this.cubeMesh);
};
THREE.CubeTexturePass.prototype = _Object$assign(_Object$create(THREE.Pass.prototype), {
constructor: THREE.CubeTexturePass,
render: function render(renderer, writeBuffer, readBuffer
/*, deltaTime, maskActive*/
) {
var oldAutoClear = renderer.autoClear;
renderer.autoClear = false;
this.cubeCamera.projectionMatrix.copy(this.camera.projectionMatrix);
this.cubeCamera.quaternion.setFromRotationMatrix(this.camera.matrixWorld);
this.cubeMesh.material.uniforms.envMap.value = this.envMap;
this.cubeMesh.material.uniforms.opacity.value = this.opacity;
this.cubeMesh.material.transparent = this.opacity < 1.0;
renderer.setRenderTarget(this.renderToScreen ? null : readBuffer);
if (this.clear) renderer.clear();
renderer.render(this.cubeScene, this.cubeCamera);
renderer.autoClear = oldAutoClear;
}
});