123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- import * as zrUtil from 'zrender/lib/core/util.js';
- import * as visualSolution from '../../visual/visualSolution.js';
- import VisualMapping from '../../visual/VisualMapping.js';
- import { getVisualFromData } from '../../visual/helper.js';
- export var visualMapEncodingHandlers = [{
- createOnAllSeries: true,
- reset: function (seriesModel, ecModel) {
- var resetDefines = [];
- ecModel.eachComponent('visualMap', function (visualMapModel) {
- var pipelineContext = seriesModel.pipelineContext;
- if (!visualMapModel.isTargetSeries(seriesModel) || pipelineContext && pipelineContext.large) {
- return;
- }
- resetDefines.push(visualSolution.incrementalApplyVisual(visualMapModel.stateList, visualMapModel.targetVisuals, zrUtil.bind(visualMapModel.getValueState, visualMapModel), visualMapModel.getDataDimensionIndex(seriesModel.getData())));
- });
- return resetDefines;
- }
- },
- {
- createOnAllSeries: true,
- reset: function (seriesModel, ecModel) {
- var data = seriesModel.getData();
- var visualMetaList = [];
- ecModel.eachComponent('visualMap', function (visualMapModel) {
- if (visualMapModel.isTargetSeries(seriesModel)) {
- var visualMeta = visualMapModel.getVisualMeta(zrUtil.bind(getColorVisual, null, seriesModel, visualMapModel)) || {
- stops: [],
- outerColors: []
- };
- var dimIdx = visualMapModel.getDataDimensionIndex(data);
- if (dimIdx >= 0) {
-
- visualMeta.dimension = dimIdx;
- visualMetaList.push(visualMeta);
- }
- }
- });
-
- seriesModel.getData().setVisual('visualMeta', visualMetaList);
- }
- }];
- function getColorVisual(seriesModel, visualMapModel, value, valueState) {
- var mappings = visualMapModel.targetVisuals[valueState];
- var visualTypes = VisualMapping.prepareVisualTypes(mappings);
- var resultVisual = {
- color: getVisualFromData(seriesModel.getData(), 'color')
- };
- for (var i = 0, len = visualTypes.length; i < len; i++) {
- var type = visualTypes[i];
- var mapping = mappings[type === 'opacity' ? '__alphaForOpacity' : type];
- mapping && mapping.applyVisual(value, getVisual, setVisual);
- }
- return resultVisual.color;
- function getVisual(key) {
- return resultVisual[key];
- }
- function setVisual(key, value) {
- resultVisual[key] = value;
- }
- }
|