UNPKG

bytev-charts-beta

Version:

基于echarts和JavaScript及ES6封装的一个可以直接调用的图表组件库,内置主题设计,简单快捷,且支持用户自定义配置; npm 安装方式: npm install bytev-charts 若启动提示还需额外install插件,则运行 npm install @babel/runtime-corejs2 即可;

61 lines (48 loc) 1.74 kB
import _classCallCheck from "@babel/runtime-corejs2/helpers/classCallCheck"; import _createClass from "@babel/runtime-corejs2/helpers/createClass"; import "core-js/modules/es.function.bind.js"; import _WeakMap from "@babel/runtime-corejs2/core-js/weak-map"; var WebGPUGeometries = /*#__PURE__*/function () { function WebGPUGeometries(attributes, info) { _classCallCheck(this, WebGPUGeometries); this.attributes = attributes; this.info = info; this.geometries = new _WeakMap(); } _createClass(WebGPUGeometries, [{ key: "update", value: function update(geometry) { if (this.geometries.has(geometry) === false) { var disposeCallback = onGeometryDispose.bind(this); this.geometries.set(geometry, disposeCallback); this.info.memory.geometries++; geometry.addEventListener('dispose', disposeCallback); } var geometryAttributes = geometry.attributes; for (var name in geometryAttributes) { this.attributes.update(geometryAttributes[name]); } var index = geometry.index; if (index !== null) { this.attributes.update(index, true); } } }]); return WebGPUGeometries; }(); function onGeometryDispose(event) { var geometry = event.target; var disposeCallback = this.geometries.get(geometry); this.geometries["delete"](geometry); this.info.memory.geometries--; geometry.removeEventListener('dispose', disposeCallback); // var index = geometry.index; var geometryAttributes = geometry.attributes; if (index !== null) { this.attributes.remove(index); } for (var name in geometryAttributes) { this.attributes.remove(geometryAttributes[name]); } } export default WebGPUGeometries;