mirror of
				https://github.com/jiawanlong/Cesium-Examples.git
				synced 2025-11-04 09:14:17 +00:00 
			
		
		
		
	
		
			
	
	
		
			422 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			422 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 
								 | 
							
								/*!
							 | 
						||
| 
								 | 
							
								 *     Copyright (c) 2016 @thinkinggis
							 | 
						||
| 
								 | 
							
								 *     Copyright© 2000-2017 SuperMap Software Co. Ltdnpm
							 | 
						||
| 
								 | 
							
								 *     echartsLayer.
							 | 
						||
| 
								 | 
							
								 *     github: https://github.com/SuperMap/echartsLayer
							 | 
						||
| 
								 | 
							
								 *     license: MIT
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								(function webpackUniversalModuleDefinition(root, factory) {
							 | 
						||
| 
								 | 
							
									if(typeof exports === 'object' && typeof module === 'object')
							 | 
						||
| 
								 | 
							
										module.exports = factory(require("echarts"));
							 | 
						||
| 
								 | 
							
									else if(typeof define === 'function' && define.amd)
							 | 
						||
| 
								 | 
							
										define(["echarts"], factory);
							 | 
						||
| 
								 | 
							
									else if(typeof exports === 'object')
							 | 
						||
| 
								 | 
							
										exports["EchartsLayer"] = factory(require("echarts"));
							 | 
						||
| 
								 | 
							
									else
							 | 
						||
| 
								 | 
							
										root["EchartsLayer"] = factory(root["echarts"]);
							 | 
						||
| 
								 | 
							
								})(window, function(__WEBPACK_EXTERNAL_MODULE__0__) {
							 | 
						||
| 
								 | 
							
								return /******/ (function(modules) { // webpackBootstrap
							 | 
						||
| 
								 | 
							
								/******/ 	// The module cache
							 | 
						||
| 
								 | 
							
								/******/ 	var installedModules = {};
							 | 
						||
| 
								 | 
							
								/******/
							 | 
						||
| 
								 | 
							
								/******/ 	// The require function
							 | 
						||
| 
								 | 
							
								/******/ 	function __webpack_require__(moduleId) {
							 | 
						||
| 
								 | 
							
								/******/
							 | 
						||
| 
								 | 
							
								/******/ 		// Check if module is in cache
							 | 
						||
| 
								 | 
							
								/******/ 		if(installedModules[moduleId]) {
							 | 
						||
| 
								 | 
							
								/******/ 			return installedModules[moduleId].exports;
							 | 
						||
| 
								 | 
							
								/******/ 		}
							 | 
						||
| 
								 | 
							
								/******/ 		// Create a new module (and put it into the cache)
							 | 
						||
| 
								 | 
							
								/******/ 		var module = installedModules[moduleId] = {
							 | 
						||
| 
								 | 
							
								/******/ 			i: moduleId,
							 | 
						||
| 
								 | 
							
								/******/ 			l: false,
							 | 
						||
| 
								 | 
							
								/******/ 			exports: {}
							 | 
						||
| 
								 | 
							
								/******/ 		};
							 | 
						||
| 
								 | 
							
								/******/
							 | 
						||
| 
								 | 
							
								/******/ 		// Execute the module function
							 | 
						||
| 
								 | 
							
								/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
							 | 
						||
| 
								 | 
							
								/******/
							 | 
						||
| 
								 | 
							
								/******/ 		// Flag the module as loaded
							 | 
						||
| 
								 | 
							
								/******/ 		module.l = true;
							 | 
						||
| 
								 | 
							
								/******/
							 | 
						||
| 
								 | 
							
								/******/ 		// Return the exports of the module
							 | 
						||
| 
								 | 
							
								/******/ 		return module.exports;
							 | 
						||
| 
								 | 
							
								/******/ 	}
							 | 
						||
| 
								 | 
							
								/******/
							 | 
						||
| 
								 | 
							
								/******/
							 | 
						||
| 
								 | 
							
								/******/ 	// expose the modules object (__webpack_modules__)
							 | 
						||
| 
								 | 
							
								/******/ 	__webpack_require__.m = modules;
							 | 
						||
| 
								 | 
							
								/******/
							 | 
						||
| 
								 | 
							
								/******/ 	// expose the module cache
							 | 
						||
| 
								 | 
							
								/******/ 	__webpack_require__.c = installedModules;
							 | 
						||
| 
								 | 
							
								/******/
							 | 
						||
| 
								 | 
							
								/******/ 	// define getter function for harmony exports
							 | 
						||
| 
								 | 
							
								/******/ 	__webpack_require__.d = function(exports, name, getter) {
							 | 
						||
| 
								 | 
							
								/******/ 		if(!__webpack_require__.o(exports, name)) {
							 | 
						||
| 
								 | 
							
								/******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter });
							 | 
						||
| 
								 | 
							
								/******/ 		}
							 | 
						||
| 
								 | 
							
								/******/ 	};
							 | 
						||
| 
								 | 
							
								/******/
							 | 
						||
| 
								 | 
							
								/******/ 	// define __esModule on exports
							 | 
						||
| 
								 | 
							
								/******/ 	__webpack_require__.r = function(exports) {
							 | 
						||
| 
								 | 
							
								/******/ 		if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
							 | 
						||
| 
								 | 
							
								/******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
							 | 
						||
| 
								 | 
							
								/******/ 		}
							 | 
						||
| 
								 | 
							
								/******/ 		Object.defineProperty(exports, '__esModule', { value: true });
							 | 
						||
| 
								 | 
							
								/******/ 	};
							 | 
						||
| 
								 | 
							
								/******/
							 | 
						||
| 
								 | 
							
								/******/ 	// create a fake namespace object
							 | 
						||
| 
								 | 
							
								/******/ 	// mode & 1: value is a module id, require it
							 | 
						||
| 
								 | 
							
								/******/ 	// mode & 2: merge all properties of value into the ns
							 | 
						||
| 
								 | 
							
								/******/ 	// mode & 4: return value when already ns object
							 | 
						||
| 
								 | 
							
								/******/ 	// mode & 8|1: behave like require
							 | 
						||
| 
								 | 
							
								/******/ 	__webpack_require__.t = function(value, mode) {
							 | 
						||
| 
								 | 
							
								/******/ 		if(mode & 1) value = __webpack_require__(value);
							 | 
						||
| 
								 | 
							
								/******/ 		if(mode & 8) return value;
							 | 
						||
| 
								 | 
							
								/******/ 		if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
							 | 
						||
| 
								 | 
							
								/******/ 		var ns = Object.create(null);
							 | 
						||
| 
								 | 
							
								/******/ 		__webpack_require__.r(ns);
							 | 
						||
| 
								 | 
							
								/******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value });
							 | 
						||
| 
								 | 
							
								/******/ 		if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
							 | 
						||
| 
								 | 
							
								/******/ 		return ns;
							 | 
						||
| 
								 | 
							
								/******/ 	};
							 | 
						||
| 
								 | 
							
								/******/
							 | 
						||
| 
								 | 
							
								/******/ 	// getDefaultExport function for compatibility with non-harmony modules
							 | 
						||
| 
								 | 
							
								/******/ 	__webpack_require__.n = function(module) {
							 | 
						||
| 
								 | 
							
								/******/ 		var getter = module && module.__esModule ?
							 | 
						||
| 
								 | 
							
								/******/ 			function getDefault() { return module['default']; } :
							 | 
						||
| 
								 | 
							
								/******/ 			function getModuleExports() { return module; };
							 | 
						||
| 
								 | 
							
								/******/ 		__webpack_require__.d(getter, 'a', getter);
							 | 
						||
| 
								 | 
							
								/******/ 		return getter;
							 | 
						||
| 
								 | 
							
								/******/ 	};
							 | 
						||
| 
								 | 
							
								/******/
							 | 
						||
| 
								 | 
							
								/******/ 	// Object.prototype.hasOwnProperty.call
							 | 
						||
| 
								 | 
							
								/******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
							 | 
						||
| 
								 | 
							
								/******/
							 | 
						||
| 
								 | 
							
								/******/ 	// __webpack_public_path__
							 | 
						||
| 
								 | 
							
								/******/ 	__webpack_require__.p = "";
							 | 
						||
| 
								 | 
							
								/******/
							 | 
						||
| 
								 | 
							
								/******/
							 | 
						||
| 
								 | 
							
								/******/ 	// Load entry module and return exports
							 | 
						||
| 
								 | 
							
								/******/ 	return __webpack_require__(__webpack_require__.s = 1);
							 | 
						||
| 
								 | 
							
								/******/ })
							 | 
						||
| 
								 | 
							
								/************************************************************************/
							 | 
						||
| 
								 | 
							
								/******/ ([
							 | 
						||
| 
								 | 
							
								/* 0 */
							 | 
						||
| 
								 | 
							
								/***/ (function(module, exports) {
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								module.exports = __WEBPACK_EXTERNAL_MODULE__0__;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/***/ }),
							 | 
						||
| 
								 | 
							
								/* 1 */
							 | 
						||
| 
								 | 
							
								/***/ (function(module, exports, __webpack_require__) {
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								__webpack_require__(2)
							 | 
						||
| 
								 | 
							
								var EchartsLayer=__webpack_require__(6)
							 | 
						||
| 
								 | 
							
								module.exports=EchartsLayer;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/***/ }),
							 | 
						||
| 
								 | 
							
								/* 2 */
							 | 
						||
| 
								 | 
							
								/***/ (function(module, exports, __webpack_require__) {
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								var __WEBPACK_AMD_DEFINE_RESULT__;/**
							 | 
						||
| 
								 | 
							
								 * GLMap component extension
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								!(__WEBPACK_AMD_DEFINE_RESULT__ = (function (require) {
							 | 
						||
| 
								 | 
							
								  __webpack_require__(0).registerCoordinateSystem(
							 | 
						||
| 
								 | 
							
								    'GLMap', __webpack_require__(3)
							 | 
						||
| 
								 | 
							
								  )
							 | 
						||
| 
								 | 
							
								  __webpack_require__(4)
							 | 
						||
| 
								 | 
							
								  __webpack_require__(5)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  // Action
							 | 
						||
| 
								 | 
							
								  __webpack_require__(0).registerAction({
							 | 
						||
| 
								 | 
							
								    type: 'GLMapRoam',
							 | 
						||
| 
								 | 
							
								    event: 'GLMapRoam',
							 | 
						||
| 
								 | 
							
								    update: 'updateLayout'
							 | 
						||
| 
								 | 
							
								  }, function (payload, ecModel) {})
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  return {
							 | 
						||
| 
								 | 
							
								    version: '1.0.0'
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								}).call(exports, __webpack_require__, exports, module),
							 | 
						||
| 
								 | 
							
												__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__))
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/***/ }),
							 | 
						||
| 
								 | 
							
								/* 3 */
							 | 
						||
| 
								 | 
							
								/***/ (function(module, exports, __webpack_require__) {
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								var __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_RESULT__ = (function (require) {
							 | 
						||
| 
								 | 
							
								    var echarts = __webpack_require__(0)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    function GLMapCoordSys(GLMap, api) {
							 | 
						||
| 
								 | 
							
								        this._GLMap = GLMap
							 | 
						||
| 
								 | 
							
								        this.dimensions = ['lng', 'lat']
							 | 
						||
| 
								 | 
							
								        this._mapOffset = [0, 0]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        this._api = api
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    GLMapCoordSys.prototype.dimensions = ['lng', 'lat']
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    GLMapCoordSys.prototype.setMapOffset = function (mapOffset) {
							 | 
						||
| 
								 | 
							
								        this._mapOffset = mapOffset
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    GLMapCoordSys.prototype.getBMap = function () {
							 | 
						||
| 
								 | 
							
								        return this._GLMap
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    GLMapCoordSys.prototype.fixLat=function(lat) {
							 | 
						||
| 
								 | 
							
								        if(lat>=90){
							 | 
						||
| 
								 | 
							
								            return 89.99999999999999;
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								        if(lat<=-90){
							 | 
						||
| 
								 | 
							
								            return -89.99999999999999;
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								        return  lat;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    GLMapCoordSys.prototype.dataToPoint = function (data) {
							 | 
						||
| 
								 | 
							
								        data[1]= this.fixLat(data[1]);
							 | 
						||
| 
								 | 
							
								        var px = this._GLMap.project(data)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        var mapOffset = this._mapOffset
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        return [px.x - mapOffset[0], px.y - mapOffset[1]]
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    GLMapCoordSys.prototype.pointToData = function (pt) {
							 | 
						||
| 
								 | 
							
								        var mapOffset = this._mapOffset
							 | 
						||
| 
								 | 
							
								        var pt = this._bmap.project(
							 | 
						||
| 
								 | 
							
								            [pt[0] + mapOffset[0],
							 | 
						||
| 
								 | 
							
								                pt[1] + mapOffset[1]]
							 | 
						||
| 
								 | 
							
								        )
							 | 
						||
| 
								 | 
							
								        return [pt.lng, pt.lat]
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    GLMapCoordSys.prototype.getViewRect = function () {
							 | 
						||
| 
								 | 
							
								        var api = this._api
							 | 
						||
| 
								 | 
							
								        return new echarts.graphic.BoundingRect(0, 0, api.getWidth(), api.getHeight())
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    GLMapCoordSys.prototype.getRoamTransform = function () {
							 | 
						||
| 
								 | 
							
								        return echarts.matrix.create()
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    GLMapCoordSys.prototype.prepareCustoms = function (data) {
							 | 
						||
| 
								 | 
							
								        var zrUtil = echarts.util;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        var rect = this.getViewRect();
							 | 
						||
| 
								 | 
							
								        return {
							 | 
						||
| 
								 | 
							
								            coordSys: {
							 | 
						||
| 
								 | 
							
								                // The name exposed to user is always 'cartesian2d' but not 'grid'.
							 | 
						||
| 
								 | 
							
								                type: 'GLMap',
							 | 
						||
| 
								 | 
							
								                x: rect.x,
							 | 
						||
| 
								 | 
							
								                y: rect.y,
							 | 
						||
| 
								 | 
							
								                width: rect.width,
							 | 
						||
| 
								 | 
							
								                height: rect.height
							 | 
						||
| 
								 | 
							
								            },
							 | 
						||
| 
								 | 
							
								            api: {
							 | 
						||
| 
								 | 
							
								                coord: zrUtil.bind(this.dataToPoint, this),
							 | 
						||
| 
								 | 
							
								                size: zrUtil.bind(dataToCoordSize, this)
							 | 
						||
| 
								 | 
							
								            }
							 | 
						||
| 
								 | 
							
								        };
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        function dataToCoordSize(dataSize, dataItem) {
							 | 
						||
| 
								 | 
							
								            dataItem = dataItem || [0, 0];
							 | 
						||
| 
								 | 
							
								            return zrUtil.map([0, 1], function (dimIdx) {
							 | 
						||
| 
								 | 
							
								                var val = dataItem[dimIdx];
							 | 
						||
| 
								 | 
							
								                var halfSize = dataSize[dimIdx] / 2;
							 | 
						||
| 
								 | 
							
								                var p1 = [];
							 | 
						||
| 
								 | 
							
								                var p2 = [];
							 | 
						||
| 
								 | 
							
								                p1[dimIdx] = val - halfSize;
							 | 
						||
| 
								 | 
							
								                p2[dimIdx] = val + halfSize;
							 | 
						||
| 
								 | 
							
								                p1[1 - dimIdx] = p2[1 - dimIdx] = dataItem[1 - dimIdx];
							 | 
						||
| 
								 | 
							
								                return Math.abs(this.dataToPoint(p1)[dimIdx] - this.dataToPoint(p2)[dimIdx]);
							 | 
						||
| 
								 | 
							
								            }, this);
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    // For deciding which dimensions to use when creating list data
							 | 
						||
| 
								 | 
							
								    GLMapCoordSys.dimensions = GLMapCoordSys.prototype.dimensions
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    GLMapCoordSys.create = function (ecModel, api) {
							 | 
						||
| 
								 | 
							
								        var coordSys;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        ecModel.eachComponent('GLMap', function (GLMapModel) {
							 | 
						||
| 
								 | 
							
								            var viewportRoot = api.getZr().painter.getViewportRoot()
							 | 
						||
| 
								 | 
							
								            var GLMap = echarts.glMap;
							 | 
						||
| 
								 | 
							
								            coordSys = new GLMapCoordSys(GLMap, api)
							 | 
						||
| 
								 | 
							
								            coordSys.setMapOffset(GLMapModel.__mapOffset || [0, 0])
							 | 
						||
| 
								 | 
							
								            GLMapModel.coordinateSystem = coordSys
							 | 
						||
| 
								 | 
							
								        })
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        ecModel.eachSeries(function (seriesModel) {
							 | 
						||
| 
								 | 
							
								            if (seriesModel.get('coordinateSystem') === 'GLMap') {
							 | 
						||
| 
								 | 
							
								                seriesModel.coordinateSystem = coordSys
							 | 
						||
| 
								 | 
							
								            }
							 | 
						||
| 
								 | 
							
								        })
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    return GLMapCoordSys
							 | 
						||
| 
								 | 
							
								}).call(exports, __webpack_require__, exports, module),
							 | 
						||
| 
								 | 
							
												__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__))
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/***/ }),
							 | 
						||
| 
								 | 
							
								/* 4 */
							 | 
						||
| 
								 | 
							
								/***/ (function(module, exports, __webpack_require__) {
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								var __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_RESULT__ = (function (require) {
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    return __webpack_require__(0).extendComponentModel({
							 | 
						||
| 
								 | 
							
								        type: 'GLMap',
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        getBMap: function () {
							 | 
						||
| 
								 | 
							
								            // __bmap is injected when creating BMapCoordSys
							 | 
						||
| 
								 | 
							
								            return this.__GLMap;
							 | 
						||
| 
								 | 
							
								        },
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        defaultOption: {
							 | 
						||
| 
								 | 
							
								            roam: false
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								    });
							 | 
						||
| 
								 | 
							
								}).call(exports, __webpack_require__, exports, module),
							 | 
						||
| 
								 | 
							
												__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/***/ }),
							 | 
						||
| 
								 | 
							
								/* 5 */
							 | 
						||
| 
								 | 
							
								/***/ (function(module, exports, __webpack_require__) {
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								var __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_RESULT__ = (function (require) {
							 | 
						||
| 
								 | 
							
								  return __webpack_require__(0).extendComponentView({
							 | 
						||
| 
								 | 
							
								    type: 'GLMap',
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    render: function (GLMapModel, ecModel, api) {
							 | 
						||
| 
								 | 
							
								      var rendering = true
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      var glMap = __webpack_require__(0).glMap
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      var viewportRoot = api.getZr().painter.getViewportRoot()
							 | 
						||
| 
								 | 
							
								      var coordSys = GLMapModel.coordinateSystem
							 | 
						||
| 
								 | 
							
								      var moveHandler = function (type, target) {
							 | 
						||
| 
								 | 
							
								        if (rendering) {
							 | 
						||
| 
								 | 
							
								          return
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								        // var offsetEl = viewportRoot.parentNode.parentNode.parentNode
							 | 
						||
| 
								 | 
							
								        var offsetEl = document.getElementsByClassName('mapboxgl-map')[0];
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        var mapOffset = [
							 | 
						||
| 
								 | 
							
								          -parseInt(offsetEl.style.left, 10) || 0,
							 | 
						||
| 
								 | 
							
								          -parseInt(offsetEl.style.top, 10) || 0
							 | 
						||
| 
								 | 
							
								        ]
							 | 
						||
| 
								 | 
							
								        viewportRoot.style.left = mapOffset[0] + 'px'
							 | 
						||
| 
								 | 
							
								        viewportRoot.style.top = mapOffset[1] + 'px'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        coordSys.setMapOffset(mapOffset)
							 | 
						||
| 
								 | 
							
								        GLMapModel.__mapOffset = mapOffset
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        api.dispatchAction({
							 | 
						||
| 
								 | 
							
								          type: 'GLMapRoam'
							 | 
						||
| 
								 | 
							
								        })
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      function zoomEndHandler () {
							 | 
						||
| 
								 | 
							
								        if (rendering) {
							 | 
						||
| 
								 | 
							
								          return
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								        api.dispatchAction({
							 | 
						||
| 
								 | 
							
								          type: 'GLMapRoam'
							 | 
						||
| 
								 | 
							
								        })
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      glMap.off('move', this._oldMoveHandler)
							 | 
						||
| 
								 | 
							
								      // FIXME
							 | 
						||
| 
								 | 
							
								      // Moveend may be triggered by centerAndZoom method when creating coordSys next time
							 | 
						||
| 
								 | 
							
								      // glMap.removeEventListener('moveend', this._oldMoveHandler)
							 | 
						||
| 
								 | 
							
								      glMap.off('zoomend', this._oldZoomEndHandler)
							 | 
						||
| 
								 | 
							
								      glMap.on('move', moveHandler)
							 | 
						||
| 
								 | 
							
								      // glMap.addEventListener('moveend', moveHandler)
							 | 
						||
| 
								 | 
							
								      glMap.on('zoomend', zoomEndHandler)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      this._oldMoveHandler = moveHandler
							 | 
						||
| 
								 | 
							
								      this._oldZoomEndHandler = zoomEndHandler
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      var roam = GLMapModel.get('roam')
							 | 
						||
| 
								 | 
							
								      if (roam && roam !== 'scale') {
							 | 
						||
| 
								 | 
							
								        // todo 允许拖拽
							 | 
						||
| 
								 | 
							
								      }else {
							 | 
						||
| 
								 | 
							
								        // todo 不允许拖拽
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								      if (roam && roam !== 'move') {
							 | 
						||
| 
								 | 
							
								        // todo 允许移动
							 | 
						||
| 
								 | 
							
								      }else {
							 | 
						||
| 
								 | 
							
								        // todo 不允许允许移动
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      rendering = false
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								  })
							 | 
						||
| 
								 | 
							
								}).call(exports, __webpack_require__, exports, module),
							 | 
						||
| 
								 | 
							
												__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__))
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/***/ }),
							 | 
						||
| 
								 | 
							
								/* 6 */
							 | 
						||
| 
								 | 
							
								/***/ (function(module, exports, __webpack_require__) {
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								function EchartsLayer(map) {
							 | 
						||
| 
								 | 
							
								  var echarts = __webpack_require__(0);
							 | 
						||
| 
								 | 
							
								  const mapContainer = map.getCanvasContainer();
							 | 
						||
| 
								 | 
							
								  this._container = document.createElement('div');
							 | 
						||
| 
								 | 
							
								  this._container.style.width = map.getCanvas().style.width;
							 | 
						||
| 
								 | 
							
								  this._container.style.height = map.getCanvas().style.height;
							 | 
						||
| 
								 | 
							
								  this._container.setAttribute('id', 'echarts');
							 | 
						||
| 
								 | 
							
								  this._container.setAttribute('class', 'echartMap');
							 | 
						||
| 
								 | 
							
								  this._map = map;
							 | 
						||
| 
								 | 
							
								  mapContainer.appendChild(this._container);
							 | 
						||
| 
								 | 
							
								  this.chart = echarts.init(this._container);
							 | 
						||
| 
								 | 
							
								  echarts.glMap = map;
							 | 
						||
| 
								 | 
							
								  this.resize();
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								EchartsLayer.prototype.remove = function() {
							 | 
						||
| 
								 | 
							
								  var _this = this;
							 | 
						||
| 
								 | 
							
								  this._map._listeners.move.forEach(function(element) {
							 | 
						||
| 
								 | 
							
								    if (element.name === 'moveHandler') {
							 | 
						||
| 
								 | 
							
								      _this._map.off('move', element);
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								  });
							 | 
						||
| 
								 | 
							
								  this._map._listeners.move.forEach(function(element) {
							 | 
						||
| 
								 | 
							
								    if (element.name === 'zoomEndHandler') {
							 | 
						||
| 
								 | 
							
								      _this._map.off('zoomend', element);
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								  });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  // this._map.off('move', this._map._listeners.move[1]);
							 | 
						||
| 
								 | 
							
								  // this._map.off('zoomend', this._map._listeners.moveend[1]);
							 | 
						||
| 
								 | 
							
								  this.chart.clear();
							 | 
						||
| 
								 | 
							
								  if(this._container.parentNode)
							 | 
						||
| 
								 | 
							
								  this._container.parentNode.removeChild(this._container);
							 | 
						||
| 
								 | 
							
								  this._map = undefined;
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								EchartsLayer.prototype.resize = function() {
							 | 
						||
| 
								 | 
							
								  const me = this;
							 | 
						||
| 
								 | 
							
								  window.onresize = function() {
							 | 
						||
| 
								 | 
							
								    me._container.style.width = me._map.getCanvas().style.width;
							 | 
						||
| 
								 | 
							
								    me._container.style.height = me._map.getCanvas().style.height;
							 | 
						||
| 
								 | 
							
								    me.chart.resize();
							 | 
						||
| 
								 | 
							
								  };
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								module.exports = EchartsLayer;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/***/ })
							 | 
						||
| 
								 | 
							
								/******/ ]);
							 | 
						||
| 
								 | 
							
								});
							 |