UNPKG

cione-comp-lib

Version:

`$ yarn add cione-comp-lib` 或者 `$ npm i cione-comp-lib -S`

84 lines (83 loc) 3.16 kB
import { __extends } from "../../../../tslib/tslib.es6.mjs"; import SymbolDraw from "../helper/SymbolDraw.mjs"; import LargeSymbolDraw from "../helper/LargeSymbolDraw.mjs"; import pointsLayout from "../../layout/points.mjs"; import ChartView from "../../view/Chart.mjs"; var ScatterView = function(_super) { __extends(ScatterView2, _super); function ScatterView2() { var _this = _super !== null && _super.apply(this, arguments) || this; _this.type = ScatterView2.type; return _this; } ScatterView2.prototype.render = function(seriesModel, ecModel, api) { var data = seriesModel.getData(); var symbolDraw = this._updateSymbolDraw(data, seriesModel); symbolDraw.updateData(data, { clipShape: this._getClipShape(seriesModel) }); this._finished = true; }; ScatterView2.prototype.incrementalPrepareRender = function(seriesModel, ecModel, api) { var data = seriesModel.getData(); var symbolDraw = this._updateSymbolDraw(data, seriesModel); symbolDraw.incrementalPrepareUpdate(data); this._finished = false; }; ScatterView2.prototype.incrementalRender = function(taskParams, seriesModel, ecModel) { this._symbolDraw.incrementalUpdate(taskParams, seriesModel.getData(), { clipShape: this._getClipShape(seriesModel) }); this._finished = taskParams.end === seriesModel.getData().count(); }; ScatterView2.prototype.updateTransform = function(seriesModel, ecModel, api) { var data = seriesModel.getData(); this.group.dirty(); if (!this._finished || data.count() > 1e4) { return { update: true }; } else { var res = pointsLayout("").reset(seriesModel, ecModel, api); if (res.progress) { res.progress({ start: 0, end: data.count(), count: data.count() }, data); } this._symbolDraw.updateLayout(data); } }; ScatterView2.prototype.eachRendered = function(cb) { this._symbolDraw && this._symbolDraw.eachRendered(cb); }; ScatterView2.prototype._getClipShape = function(seriesModel) { var coordSys = seriesModel.coordinateSystem; var clipArea = coordSys && coordSys.getArea && coordSys.getArea(); return seriesModel.get("clip", true) ? clipArea : null; }; ScatterView2.prototype._updateSymbolDraw = function(data, seriesModel) { var symbolDraw = this._symbolDraw; var pipelineContext = seriesModel.pipelineContext; var isLargeDraw = pipelineContext.large; if (!symbolDraw || isLargeDraw !== this._isLargeDraw) { symbolDraw && symbolDraw.remove(); symbolDraw = this._symbolDraw = isLargeDraw ? new LargeSymbolDraw() : new SymbolDraw(); this._isLargeDraw = isLargeDraw; this.group.removeAll(); } this.group.add(symbolDraw.group); return symbolDraw; }; ScatterView2.prototype.remove = function(ecModel, api) { this._symbolDraw && this._symbolDraw.remove(true); this._symbolDraw = null; }; ScatterView2.prototype.dispose = function() { }; ScatterView2.type = "scatter"; return ScatterView2; }(ChartView); var ScatterView$1 = ScatterView; export { ScatterView$1 as default };