123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136 |
- import { __extends } from "tslib";
- import * as zrUtil from 'zrender/lib/core/util.js';
- import * as visualSolution from '../../visual/visualSolution.js';
- import Model from '../../model/Model.js';
- import ComponentModel from '../../model/Component.js';
- var DEFAULT_OUT_OF_BRUSH_COLOR = '#ddd';
- var BrushModel = function (_super) {
- __extends(BrushModel, _super);
- function BrushModel() {
- var _this = _super !== null && _super.apply(this, arguments) || this;
- _this.type = BrushModel.type;
-
- _this.areas = [];
-
- _this.brushOption = {};
- return _this;
- }
- BrushModel.prototype.optionUpdated = function (newOption, isInit) {
- var thisOption = this.option;
- !isInit && visualSolution.replaceVisualOption(thisOption, newOption, ['inBrush', 'outOfBrush']);
- var inBrush = thisOption.inBrush = thisOption.inBrush || {};
-
- thisOption.outOfBrush = thisOption.outOfBrush || {
- color: DEFAULT_OUT_OF_BRUSH_COLOR
- };
- if (!inBrush.hasOwnProperty('liftZ')) {
-
-
- inBrush.liftZ = 5;
- }
- };
-
- BrushModel.prototype.setAreas = function (areas) {
- if (process.env.NODE_ENV !== 'production') {
- zrUtil.assert(zrUtil.isArray(areas));
- zrUtil.each(areas, function (area) {
- zrUtil.assert(area.brushType, 'Illegal areas');
- });
- }
-
-
-
- if (!areas) {
- return;
- }
- this.areas = zrUtil.map(areas, function (area) {
- return generateBrushOption(this.option, area);
- }, this);
- };
-
- BrushModel.prototype.setBrushOption = function (brushOption) {
- this.brushOption = generateBrushOption(this.option, brushOption);
- this.brushType = this.brushOption.brushType;
- };
- BrushModel.type = 'brush';
- BrushModel.dependencies = ['geo', 'grid', 'xAxis', 'yAxis', 'parallel', 'series'];
- BrushModel.defaultOption = {
- seriesIndex: 'all',
- brushType: 'rect',
- brushMode: 'single',
- transformable: true,
- brushStyle: {
- borderWidth: 1,
- color: 'rgba(210,219,238,0.3)',
- borderColor: '#D2DBEE'
- },
- throttleType: 'fixRate',
- throttleDelay: 0,
- removeOnClick: true,
- z: 10000
- };
- return BrushModel;
- }(ComponentModel);
- function generateBrushOption(option, brushOption) {
- return zrUtil.merge({
- brushType: option.brushType,
- brushMode: option.brushMode,
- transformable: option.transformable,
- brushStyle: new Model(option.brushStyle).getItemStyle(),
- removeOnClick: option.removeOnClick,
- z: option.z
- }, brushOption, true);
- }
- export default BrushModel;
|