@vtx/cs-map 1.0.18 → 1.0.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/_util/mapTool.js +0 -1
- package/lib/_util/mapTool.js.map +1 -1
- package/lib/assets/base-img-1.png +0 -0
- package/lib/assets/base-img-2.png +0 -0
- package/lib/assets/base-img-3.png +0 -0
- package/lib/assets/base-img-4.png +0 -0
- package/lib/assets/base-img-5.png +0 -0
- package/lib/assets/base-img.png +0 -0
- package/lib/cesium-tiles-layer/index.js +18 -4
- package/lib/cesium-tiles-layer/index.js.map +1 -1
- package/lib/feature-layer/FeatureLayer.js +12 -1
- package/lib/feature-layer/FeatureLayer.js.map +1 -1
- package/lib/gif-dom-layer/GifDomLayer.js +105 -0
- package/lib/gif-dom-layer/GifDomLayer.js.map +1 -0
- package/lib/gif-dom-layer/index.js +44 -0
- package/lib/gif-dom-layer/index.js.map +1 -0
- package/lib/gif-dom-layer/style/css.js +4 -0
- package/lib/gif-dom-layer/style/css.js.map +1 -0
- package/lib/gif-dom-layer/style/index.css +0 -0
- package/lib/gif-dom-layer/style/index.js +4 -0
- package/lib/gif-dom-layer/style/index.js.map +1 -0
- package/lib/gif-dom-layer/style/index.less +0 -0
- package/lib/gradation-line-layer/GradationLineLayer.js +0 -1
- package/lib/gradation-line-layer/GradationLineLayer.js.map +1 -1
- package/lib/highlight-layer/HighlightLayer.js +6 -5
- package/lib/highlight-layer/HighlightLayer.js.map +1 -1
- package/lib/index.js +7 -0
- package/lib/index.js.map +1 -1
- package/lib/map/Layers.js +5 -1
- package/lib/map/Layers.js.map +1 -1
- package/lib/map/base/imagery/baidu/BaiduImageryProvider.js +3 -0
- package/lib/map/base/imagery/baidu/BaiduImageryProvider.js.map +1 -1
- package/lib/map/base/imagery/baidu/BaiduMercatorProjection.js +38 -66
- package/lib/map/base/imagery/baidu/BaiduMercatorProjection.js.map +1 -1
- package/lib/map/base/imagery/baidu/BaiduMercatorTilingScheme.js +40 -45
- package/lib/map/base/imagery/baidu/BaiduMercatorTilingScheme.js.map +1 -1
- package/lib/map/base/imagery/geoq/GeoQImageryProvider.js +5 -4
- package/lib/map/base/imagery/geoq/GeoQImageryProvider.js.map +1 -1
- package/lib/map/base/imagery/tdt/TdtImageryProvider.js +2 -2
- package/lib/map/base/imagery/tdt/TdtImageryProvider.js.map +1 -1
- package/lib/map/base/index.js +187 -3
- package/lib/map/base/index.js.map +1 -1
- package/lib/map/index.js +60 -33
- package/lib/map/index.js.map +1 -1
- package/lib/marker/Marker.js +29 -18
- package/lib/marker/Marker.js.map +1 -1
- package/lib/marker/index.js +3 -3
- package/lib/marker/index.js.map +1 -1
- package/lib/tools/base-map-switch/index.js +103 -0
- package/lib/tools/base-map-switch/index.js.map +1 -0
- package/lib/tools/dimension-switch/index.js +37 -0
- package/lib/tools/dimension-switch/index.js.map +1 -0
- package/lib/tools/index.js +13 -1
- package/lib/tools/index.js.map +1 -1
- package/lib/tools/style/index.css +56 -0
- package/lib/tools/style/index.less +72 -0
- package/lib/weather/Weather.js +1 -1
- package/lib/weather/Weather.js.map +1 -1
- package/package.json +1 -1
- package/lib/tools/base-map-switch/base/imagery/amap/AmapImageryProvider.js +0 -52
- package/lib/tools/base-map-switch/base/imagery/amap/AmapImageryProvider.js.map +0 -1
- package/lib/tools/base-map-switch/base/imagery/amap/AmapMercatorTilingScheme.js +0 -52
- package/lib/tools/base-map-switch/base/imagery/amap/AmapMercatorTilingScheme.js.map +0 -1
- package/lib/tools/base-map-switch/base/imagery/baidu/BaiduImageryProvider.js +0 -152
- package/lib/tools/base-map-switch/base/imagery/baidu/BaiduImageryProvider.js.map +0 -1
- package/lib/tools/base-map-switch/base/imagery/baidu/BaiduMercatorProjection.js +0 -383
- package/lib/tools/base-map-switch/base/imagery/baidu/BaiduMercatorProjection.js.map +0 -1
- package/lib/tools/base-map-switch/base/imagery/baidu/BaiduMercatorTilingScheme.js +0 -125
- package/lib/tools/base-map-switch/base/imagery/baidu/BaiduMercatorTilingScheme.js.map +0 -1
- package/lib/tools/base-map-switch/base/imagery/geoq/GeoQImageryProvider.js +0 -53
- package/lib/tools/base-map-switch/base/imagery/geoq/GeoQImageryProvider.js.map +0 -1
- package/lib/tools/base-map-switch/base/imagery/google/GoogleImageryProvider.js +0 -47
- package/lib/tools/base-map-switch/base/imagery/google/GoogleImageryProvider.js.map +0 -1
- package/lib/tools/base-map-switch/base/imagery/tdt/TdtImageryProvider.js +0 -44
- package/lib/tools/base-map-switch/base/imagery/tdt/TdtImageryProvider.js.map +0 -1
- package/lib/tools/base-map-switch/base/imagery/tencent/TencentImageryProvider.js +0 -57
- package/lib/tools/base-map-switch/base/imagery/tencent/TencentImageryProvider.js.map +0 -1
- package/lib/tools/base-map-switch/base/index.js +0 -23
- package/lib/tools/base-map-switch/base/index.js.map +0 -1
- package/lib/tools/base-map-switch/base/transform/CoordTransform.js +0 -179
- package/lib/tools/base-map-switch/base/transform/CoordTransform.js.map +0 -1
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports["default"] = void 0;
|
|
7
|
-
var Cesium = _interopRequireWildcard(require("cesium"));
|
|
8
|
-
var _BaiduMercatorTilingScheme = _interopRequireDefault(require("./BaiduMercatorTilingScheme"));
|
|
9
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
10
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
11
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
12
|
-
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
13
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
14
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
15
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
16
|
-
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
17
|
-
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } /**
|
|
18
|
-
* @Author: Caven
|
|
19
|
-
* @Date: 2020-01-15 20:27:27
|
|
20
|
-
*/
|
|
21
|
-
var URL = {
|
|
22
|
-
IMG: 'http://shangetu{s}.map.bdimg.com/it/u=x={x};y={y};z={z};v=009;type=sate&fm=46',
|
|
23
|
-
VEC: 'http://online{s}.map.bdimg.com/tile/?qt=tile&x={x}&y={y}&z={z}&styles=sl&v=020',
|
|
24
|
-
CUSTOM: 'http://api{s}.map.bdimg.com/customimage/tile?&x={x}&y={y}&z={z}&scale=1&customid={style}'
|
|
25
|
-
};
|
|
26
|
-
var BaiduImageryProvider = /*#__PURE__*/function () {
|
|
27
|
-
function BaiduImageryProvider() {
|
|
28
|
-
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
29
|
-
_classCallCheck(this, BaiduImageryProvider);
|
|
30
|
-
this._url = options.url || URL[options.style || 'CUSTOM'];
|
|
31
|
-
this._tileWidth = 256;
|
|
32
|
-
this._tileHeight = 256;
|
|
33
|
-
this._maximumLevel = 18;
|
|
34
|
-
this._crs = options.crs || 'BD09';
|
|
35
|
-
if (options.crs === 'WGS84') {
|
|
36
|
-
var resolutions = [];
|
|
37
|
-
for (var i = 0; i < 19; i++) {
|
|
38
|
-
resolutions[i] = 256 * Math.pow(2, 18 - i);
|
|
39
|
-
}
|
|
40
|
-
this._tilingScheme = new _BaiduMercatorTilingScheme["default"]({
|
|
41
|
-
resolutions: resolutions,
|
|
42
|
-
rectangleSouthwestInMeters: new Cesium.Cartesian2(-20037726.37, -12474104.17),
|
|
43
|
-
rectangleNortheastInMeters: new Cesium.Cartesian2(20037726.37, 12474104.17)
|
|
44
|
-
});
|
|
45
|
-
} else {
|
|
46
|
-
this._tilingScheme = new Cesium.WebMercatorTilingScheme({
|
|
47
|
-
rectangleSouthwestInMeters: new Cesium.Cartesian2(-33554054, -33746824),
|
|
48
|
-
rectangleNortheastInMeters: new Cesium.Cartesian2(33554054, 33746824)
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
this._rectangle = this._tilingScheme.rectangle;
|
|
52
|
-
this._credit = undefined;
|
|
53
|
-
this._style = options.style || 'normal';
|
|
54
|
-
}
|
|
55
|
-
_createClass(BaiduImageryProvider, [{
|
|
56
|
-
key: "url",
|
|
57
|
-
get: function get() {
|
|
58
|
-
return this._url;
|
|
59
|
-
}
|
|
60
|
-
}, {
|
|
61
|
-
key: "token",
|
|
62
|
-
get: function get() {
|
|
63
|
-
return this._token;
|
|
64
|
-
}
|
|
65
|
-
}, {
|
|
66
|
-
key: "tileWidth",
|
|
67
|
-
get: function get() {
|
|
68
|
-
if (!this.ready) {
|
|
69
|
-
throw new Cesium.DeveloperError('tileWidth must not be called before the imagery provider is ready.');
|
|
70
|
-
}
|
|
71
|
-
return this._tileWidth;
|
|
72
|
-
}
|
|
73
|
-
}, {
|
|
74
|
-
key: "tileHeight",
|
|
75
|
-
get: function get() {
|
|
76
|
-
if (!this.ready) {
|
|
77
|
-
throw new Cesium.DeveloperError('tileHeight must not be called before the imagery provider is ready.');
|
|
78
|
-
}
|
|
79
|
-
return this._tileHeight;
|
|
80
|
-
}
|
|
81
|
-
}, {
|
|
82
|
-
key: "maximumLevel",
|
|
83
|
-
get: function get() {
|
|
84
|
-
if (!this.ready) {
|
|
85
|
-
throw new Cesium.DeveloperError('maximumLevel must not be called before the imagery provider is ready.');
|
|
86
|
-
}
|
|
87
|
-
return this._maximumLevel;
|
|
88
|
-
}
|
|
89
|
-
}, {
|
|
90
|
-
key: "minimumLevel",
|
|
91
|
-
get: function get() {
|
|
92
|
-
if (!this.ready) {
|
|
93
|
-
throw new Cesium.DeveloperError('minimumLevel must not be called before the imagery provider is ready.');
|
|
94
|
-
}
|
|
95
|
-
return 0;
|
|
96
|
-
}
|
|
97
|
-
}, {
|
|
98
|
-
key: "tilingScheme",
|
|
99
|
-
get: function get() {
|
|
100
|
-
if (!this.ready) {
|
|
101
|
-
throw new Cesium.DeveloperError('tilingScheme must not be called before the imagery provider is ready.');
|
|
102
|
-
}
|
|
103
|
-
return this._tilingScheme;
|
|
104
|
-
}
|
|
105
|
-
}, {
|
|
106
|
-
key: "rectangle",
|
|
107
|
-
get: function get() {
|
|
108
|
-
if (!this.ready) {
|
|
109
|
-
throw new Cesium.DeveloperError('rectangle must not be called before the imagery provider is ready.');
|
|
110
|
-
}
|
|
111
|
-
return this._rectangle;
|
|
112
|
-
}
|
|
113
|
-
}, {
|
|
114
|
-
key: "ready",
|
|
115
|
-
get: function get() {
|
|
116
|
-
return !!this._url;
|
|
117
|
-
}
|
|
118
|
-
}, {
|
|
119
|
-
key: "credit",
|
|
120
|
-
get: function get() {
|
|
121
|
-
return this._credit;
|
|
122
|
-
}
|
|
123
|
-
}, {
|
|
124
|
-
key: "hasAlphaChannel",
|
|
125
|
-
get: function get() {
|
|
126
|
-
return true;
|
|
127
|
-
}
|
|
128
|
-
}, {
|
|
129
|
-
key: "getTileCredits",
|
|
130
|
-
value: function getTileCredits(x, y, level) {}
|
|
131
|
-
}, {
|
|
132
|
-
key: "requestImage",
|
|
133
|
-
value: function requestImage(x, y, level) {
|
|
134
|
-
if (!this.ready) {
|
|
135
|
-
throw new Cesium.DeveloperError('requestImage must not be called before the imagery provider is ready.');
|
|
136
|
-
}
|
|
137
|
-
var xTiles = this._tilingScheme.getNumberOfXTilesAtLevel(level);
|
|
138
|
-
var yTiles = this._tilingScheme.getNumberOfYTilesAtLevel(level);
|
|
139
|
-
var url = this._url.replace('{z}', level).replace('{s}', String(1)).replace('{style}', this._style);
|
|
140
|
-
if (this._crs === 'WGS84') {
|
|
141
|
-
url = url.replace('{x}', String(x)).replace('{y}', String(-y));
|
|
142
|
-
} else {
|
|
143
|
-
url = url.replace('{x}', String(x - xTiles / 2)).replace('{y}', String(yTiles / 2 - y - 1));
|
|
144
|
-
}
|
|
145
|
-
return Cesium.ImageryProvider.loadImage(this, url);
|
|
146
|
-
}
|
|
147
|
-
}]);
|
|
148
|
-
return BaiduImageryProvider;
|
|
149
|
-
}();
|
|
150
|
-
var _default = BaiduImageryProvider;
|
|
151
|
-
exports["default"] = _default;
|
|
152
|
-
//# sourceMappingURL=BaiduImageryProvider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BaiduImageryProvider.js","names":["Cesium","_interopRequireWildcard","require","_BaiduMercatorTilingScheme","_interopRequireDefault","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","o","Symbol","iterator","constructor","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","_toPropertyKey","_createClass","protoProps","staticProps","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","URL","IMG","VEC","CUSTOM","BaiduImageryProvider","options","arguments","_url","url","style","_tileWidth","_tileHeight","_maximumLevel","_crs","crs","resolutions","Math","pow","_tilingScheme","BaiduMercatorTilingScheme","rectangleSouthwestInMeters","Cartesian2","rectangleNortheastInMeters","WebMercatorTilingScheme","_rectangle","rectangle","_credit","_style","_token","ready","DeveloperError","value","getTileCredits","x","y","level","requestImage","xTiles","getNumberOfXTilesAtLevel","yTiles","getNumberOfYTilesAtLevel","replace","ImageryProvider","loadImage","_default","exports"],"sources":["tools/base-map-switch/base/imagery/baidu/BaiduImageryProvider.js"],"sourcesContent":["/**\n * @Author: Caven\n * @Date: 2020-01-15 20:27:27\n */\nimport * as Cesium from 'cesium';\n\nimport BaiduMercatorTilingScheme from './BaiduMercatorTilingScheme'\n\nlet URL = {\n IMG: 'http://shangetu{s}.map.bdimg.com/it/u=x={x};y={y};z={z};v=009;type=sate&fm=46',\n VEC: 'http://online{s}.map.bdimg.com/tile/?qt=tile&x={x}&y={y}&z={z}&styles=sl&v=020',\n CUSTOM: 'http://api{s}.map.bdimg.com/customimage/tile?&x={x}&y={y}&z={z}&scale=1&customid={style}',\n}\n\nclass BaiduImageryProvider {\n constructor(options = {}) {\n this._url = options.url || URL[options.style || 'CUSTOM']\n this._tileWidth = 256\n this._tileHeight = 256\n this._maximumLevel = 18\n this._crs = options.crs || 'BD09'\n if (options.crs === 'WGS84') {\n let resolutions = []\n for (let i = 0; i < 19; i++) {\n resolutions[i] = 256 * Math.pow(2, 18 - i)\n }\n this._tilingScheme = new BaiduMercatorTilingScheme({\n resolutions,\n rectangleSouthwestInMeters: new Cesium.Cartesian2(\n -20037726.37,\n -12474104.17\n ),\n rectangleNortheastInMeters: new Cesium.Cartesian2(\n 20037726.37,\n 12474104.17\n )\n })\n } else {\n this._tilingScheme = new Cesium.WebMercatorTilingScheme({\n rectangleSouthwestInMeters: new Cesium.Cartesian2(-33554054, -33746824),\n rectangleNortheastInMeters: new Cesium.Cartesian2(33554054, 33746824)\n })\n }\n this._rectangle = this._tilingScheme.rectangle\n this._credit = undefined\n this._style = options.style || 'normal'\n }\n\n get url() {\n return this._url\n }\n\n get token() {\n return this._token\n }\n\n get tileWidth() {\n if (!this.ready) {\n throw new Cesium.DeveloperError(\n 'tileWidth must not be called before the imagery provider is ready.'\n )\n }\n return this._tileWidth\n }\n\n get tileHeight() {\n if (!this.ready) {\n throw new Cesium.DeveloperError(\n 'tileHeight must not be called before the imagery provider is ready.'\n )\n }\n return this._tileHeight\n }\n\n get maximumLevel() {\n if (!this.ready) {\n throw new Cesium.DeveloperError(\n 'maximumLevel must not be called before the imagery provider is ready.'\n )\n }\n return this._maximumLevel\n }\n\n get minimumLevel() {\n if (!this.ready) {\n throw new Cesium.DeveloperError(\n 'minimumLevel must not be called before the imagery provider is ready.'\n )\n }\n return 0\n }\n\n get tilingScheme() {\n if (!this.ready) {\n throw new Cesium.DeveloperError(\n 'tilingScheme must not be called before the imagery provider is ready.'\n )\n }\n return this._tilingScheme\n }\n\n get rectangle() {\n if (!this.ready) {\n throw new Cesium.DeveloperError(\n 'rectangle must not be called before the imagery provider is ready.'\n )\n }\n return this._rectangle\n }\n\n get ready() {\n return !!this._url\n }\n\n get credit() {\n return this._credit\n }\n\n get hasAlphaChannel() {\n return true\n }\n\n getTileCredits(x, y, level) {}\n\n requestImage(x, y, level) {\n if (!this.ready) {\n throw new Cesium.DeveloperError(\n 'requestImage must not be called before the imagery provider is ready.'\n )\n }\n let xTiles = this._tilingScheme.getNumberOfXTilesAtLevel(level)\n let yTiles = this._tilingScheme.getNumberOfYTilesAtLevel(level)\n let url = this._url\n .replace('{z}', level)\n .replace('{s}', String(1))\n .replace('{style}', this._style)\n if (this._crs === 'WGS84') {\n url = url.replace('{x}', String(x)).replace('{y}', String(-y))\n } else {\n url = url\n .replace('{x}', String(x - xTiles / 2))\n .replace('{y}', String(yTiles / 2 - y - 1))\n }\n return Cesium.ImageryProvider.loadImage(this, url)\n }\n}\n\nexport default BaiduImageryProvider\n"],"mappings":"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"}
|
|
@@ -1,383 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports["default"] = void 0;
|
|
7
|
-
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
8
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
9
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
10
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
11
|
-
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
12
|
-
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
13
|
-
/**
|
|
14
|
-
* @Author: Caven
|
|
15
|
-
* @Date: 2021-01-30 22:41:41
|
|
16
|
-
*/
|
|
17
|
-
|
|
18
|
-
var EARTH_RADIUS = 6370996.81;
|
|
19
|
-
var MC_BAND = [12890594.86, 8362377.87, 5591021, 3481989.83, 1678043.12, 0];
|
|
20
|
-
var LL_BAND = [75, 60, 45, 30, 15, 0];
|
|
21
|
-
var MC2LL = [[1.410526172116255e-8, 8.98305509648872e-6, -1.9939833816331, 2.009824383106796e2, -1.872403703815547e2, 91.6087516669843, -23.38765649603339, 2.57121317296198, -0.03801003308653, 1.73379812e7], [-7.435856389565537e-9, 8.983055097726239e-6, -0.78625201886289, 96.32687599759846, -1.85204757529826, -59.36935905485877, 47.40033549296737, -16.50741931063887, 2.28786674699375, 1.026014486e7], [-3.030883460898826e-8, 8.98305509983578e-6, 0.30071316287616, 59.74293618442277, 7.357984074871, -25.38371002664745, 13.45380521110908, -3.29883767235584, 0.32710905363475, 6.85681737e6], [-1.981981304930552e-8, 8.983055099779535e-6, 0.03278182852591, 40.31678527705744, 0.65659298677277, -4.44255534477492, 0.85341911805263, 0.12923347998204, -0.04625736007561, 4.48277706e6], [3.09191371068437e-9, 8.983055096812155e-6, 0.00006995724062, 23.10934304144901, -0.00023663490511, -0.6321817810242, -0.00663494467273, 0.03430082397953, -0.00466043876332, 2.5551644e6], [2.890871144776878e-9, 8.983055095805407e-6, -0.00000003068298, 7.47137025468032, -0.00000353937994, -0.02145144861037, -0.00001234426596, 0.00010322952773, -0.00000323890364, 8.260885e5]];
|
|
22
|
-
var LL2MC = [[-0.0015702102444, 1.113207020616939e5, 1.704480524535203e15, -1.033898737604234e16, 2.611266785660388e16, -3.51496691766537e16, 2.659570071840392e16, -1.072501245418824e16, 1.800819912950474e15, 82.5], [8.277824516172526e-4, 1.113207020463578e5, 6.477955746671608e8, -4.082003173641316e9, 1.077490566351142e10, -1.517187553151559e10, 1.205306533862167e10, -5.124939663577472e9, 9.133119359512032e8, 67.5], [0.00337398766765, 1.113207020202162e5, 4.481351045890365e6, -2.339375119931662e7, 7.968221547186455e7, -1.159649932797253e8, 9.723671115602145e7, -4.366194633752821e7, 8.477230501135234e6, 52.5], [0.00220636496208, 1.113207020209128e5, 5.175186112841131e4, 3.796837749470245e6, 9.920137397791013e5, -1.22195221711287e6, 1.340652697009075e6, -6.209436990984312e5, 1.444169293806241e5, 37.5], [-3.441963504368392e-4, 1.113207020576856e5, 2.782353980772752e2, 2.485758690035394e6, 6.070750963243378e3, 5.482118345352118e4, 9.540606633304236e3, -2.71055326746645e3, 1.405483844121726e3, 22.5], [-3.218135878613132e-4, 1.113207020701615e5, 0.00369383431289, 8.237256402795718e5, 0.46104986909093, 2.351343141331292e3, 1.58060784298199, 8.77738589078284, 0.37238884252424, 7.45]];
|
|
23
|
-
var BaiduMercatorProjection = /*#__PURE__*/function () {
|
|
24
|
-
function BaiduMercatorProjection() {
|
|
25
|
-
_classCallCheck(this, BaiduMercatorProjection);
|
|
26
|
-
this.isWgs84 = false;
|
|
27
|
-
}
|
|
28
|
-
_createClass(BaiduMercatorProjection, [{
|
|
29
|
-
key: "getDistanceByMC",
|
|
30
|
-
value: function getDistanceByMC(point1, point2) {
|
|
31
|
-
if (!point1 || !point2) {
|
|
32
|
-
return 0;
|
|
33
|
-
}
|
|
34
|
-
point1 = this.convertMC2LL(point1);
|
|
35
|
-
if (!point1) {
|
|
36
|
-
return 0;
|
|
37
|
-
}
|
|
38
|
-
var x1 = this.toRadians(point1['lng']);
|
|
39
|
-
var y1 = this.toRadians(point1['lat']);
|
|
40
|
-
point2 = this.convertMC2LL(point2);
|
|
41
|
-
if (!point2) {
|
|
42
|
-
return 0;
|
|
43
|
-
}
|
|
44
|
-
var x2 = this.toRadians(point2['lng']);
|
|
45
|
-
var y2 = this.toRadians(point2['lat']);
|
|
46
|
-
return this.getDistance(x1, x2, y1, y2);
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* 根据经纬度坐标计算两点间距离;
|
|
51
|
-
* @param point1
|
|
52
|
-
* @param point2
|
|
53
|
-
* @returns {number|*} 返回两点间的距离
|
|
54
|
-
*/
|
|
55
|
-
}, {
|
|
56
|
-
key: "getDistanceByLL",
|
|
57
|
-
value: function getDistanceByLL(point1, point2) {
|
|
58
|
-
if (!point1 || !point2) {
|
|
59
|
-
return 0;
|
|
60
|
-
}
|
|
61
|
-
point1['lng'] = this.getLoop(point1['lng'], -180, 180);
|
|
62
|
-
point1['lat'] = this.getRange(point1['lat'], -74, 74);
|
|
63
|
-
point2['lng'] = this.getLoop(point2['lng'], -180, 180);
|
|
64
|
-
point2['lat'] = this.getRange(point2['lat'], -74, 74);
|
|
65
|
-
var x1 = this.toRadians(point1['lng']);
|
|
66
|
-
var y1 = this.toRadians(point1['lat']);
|
|
67
|
-
var x2 = this.toRadians(point2['lng']);
|
|
68
|
-
var y2 = this.toRadians(point2['lat']);
|
|
69
|
-
return this.getDistance(x1, x2, y1, y2);
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
/**
|
|
73
|
-
* 平面直角坐标转换成经纬度坐标;
|
|
74
|
-
* @param point
|
|
75
|
-
* @returns {Point|{lng: number, lat: number}}
|
|
76
|
-
*/
|
|
77
|
-
}, {
|
|
78
|
-
key: "convertMC2LL",
|
|
79
|
-
value: function convertMC2LL(point) {
|
|
80
|
-
if (!point) {
|
|
81
|
-
return {
|
|
82
|
-
lng: 0,
|
|
83
|
-
lat: 0
|
|
84
|
-
};
|
|
85
|
-
}
|
|
86
|
-
var lnglat = {};
|
|
87
|
-
if (this.isWgs84) {
|
|
88
|
-
lnglat.lng = point.lng / 20037508.34 * 180;
|
|
89
|
-
var mmy = point.lat / 20037508.34 * 180;
|
|
90
|
-
lnglat.lat = 180 / Math.PI * (2 * Math.atan(Math.exp(mmy * Math.PI / 180)) - Math.PI / 2);
|
|
91
|
-
return {
|
|
92
|
-
lng: lnglat['lng'].toFixed(6),
|
|
93
|
-
lat: lnglat['lat'].toFixed(6)
|
|
94
|
-
};
|
|
95
|
-
}
|
|
96
|
-
var temp = {
|
|
97
|
-
lng: Math.abs(point['lng']),
|
|
98
|
-
lat: Math.abs(point['lat'])
|
|
99
|
-
};
|
|
100
|
-
var factor = undefined;
|
|
101
|
-
for (var i = 0; i < MC_BAND.length; i++) {
|
|
102
|
-
if (temp['lat'] >= MC_BAND[i]) {
|
|
103
|
-
factor = MC2LL[i];
|
|
104
|
-
break;
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
lnglat = this.convertor(point, factor);
|
|
108
|
-
return {
|
|
109
|
-
lng: lnglat['lng'].toFixed(6),
|
|
110
|
-
lat: lnglat['lat'].toFixed(6)
|
|
111
|
-
};
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
/**
|
|
115
|
-
* 经纬度坐标转换成平面直角坐标;
|
|
116
|
-
* @param point 经纬度坐标
|
|
117
|
-
* @returns {{lng: number, lat: number}|*}
|
|
118
|
-
*/
|
|
119
|
-
}, {
|
|
120
|
-
key: "convertLL2MC",
|
|
121
|
-
value: function convertLL2MC(point) {
|
|
122
|
-
if (!point) {
|
|
123
|
-
return {
|
|
124
|
-
lng: 0,
|
|
125
|
-
lat: 0
|
|
126
|
-
};
|
|
127
|
-
}
|
|
128
|
-
if (point['lng'] > 180 || point['lng'] < -180 || point['lat'] > 90 || point['lat'] < -90) {
|
|
129
|
-
return point;
|
|
130
|
-
}
|
|
131
|
-
if (this.isWgs84) {
|
|
132
|
-
var mercator = {};
|
|
133
|
-
var earthRad = 6378137.0;
|
|
134
|
-
mercator.lng = point.lng * Math.PI / 180 * earthRad;
|
|
135
|
-
var a = point.lat * Math.PI / 180;
|
|
136
|
-
mercator.lat = earthRad / 2 * Math.log((1.0 + Math.sin(a)) / (1.0 - Math.sin(a)));
|
|
137
|
-
return {
|
|
138
|
-
lng: parseFloat(mercator['lng'].toFixed(2)),
|
|
139
|
-
lat: parseFloat(mercator['lat'].toFixed(2))
|
|
140
|
-
};
|
|
141
|
-
}
|
|
142
|
-
point['lng'] = this.getLoop(point['lng'], -180, 180);
|
|
143
|
-
point['lat'] = this.getRange(point['lat'], -74, 74);
|
|
144
|
-
var temp = {
|
|
145
|
-
lng: point['lng'],
|
|
146
|
-
lat: point['lat']
|
|
147
|
-
};
|
|
148
|
-
var factor = undefined;
|
|
149
|
-
for (var i = 0; i < LL_BAND.length; i++) {
|
|
150
|
-
if (temp['lat'] >= LL_BAND[i]) {
|
|
151
|
-
factor = LL2MC[i];
|
|
152
|
-
break;
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
if (!factor) {
|
|
156
|
-
for (var _i = 0; _i < LL_BAND.length; _i++) {
|
|
157
|
-
if (temp['lat'] <= -LL_BAND[_i]) {
|
|
158
|
-
factor = LL2MC[_i];
|
|
159
|
-
break;
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
var mc = this.convertor(point, factor);
|
|
164
|
-
return {
|
|
165
|
-
lng: parseFloat(mc['lng'].toFixed(2)),
|
|
166
|
-
lat: parseFloat(mc['lat'].toFixed(2))
|
|
167
|
-
};
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
/**
|
|
171
|
-
*
|
|
172
|
-
* @param fromPoint
|
|
173
|
-
* @param factor
|
|
174
|
-
* @returns {{lng: *, lat: *}}
|
|
175
|
-
*/
|
|
176
|
-
}, {
|
|
177
|
-
key: "convertor",
|
|
178
|
-
value: function convertor(fromPoint, factor) {
|
|
179
|
-
if (!fromPoint || !factor) {
|
|
180
|
-
return {
|
|
181
|
-
lng: 0,
|
|
182
|
-
lat: 0
|
|
183
|
-
};
|
|
184
|
-
}
|
|
185
|
-
var x = factor[0] + factor[1] * Math.abs(fromPoint['lng']);
|
|
186
|
-
var temp = Math.abs(fromPoint['lat']) / factor[9];
|
|
187
|
-
var y = factor[2] + factor[3] * temp + factor[4] * temp * temp + factor[5] * temp * temp * temp + factor[6] * temp * temp * temp * temp + factor[7] * temp * temp * temp * temp * temp + factor[8] * temp * temp * temp * temp * temp * temp;
|
|
188
|
-
x *= fromPoint['lng'] < 0 ? -1 : 1;
|
|
189
|
-
y *= fromPoint['lat'] < 0 ? -1 : 1;
|
|
190
|
-
return {
|
|
191
|
-
lng: x,
|
|
192
|
-
lat: y
|
|
193
|
-
};
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
/**
|
|
197
|
-
*
|
|
198
|
-
* @param x1
|
|
199
|
-
* @param x2
|
|
200
|
-
* @param y1
|
|
201
|
-
* @param y2
|
|
202
|
-
* @returns {number}
|
|
203
|
-
*/
|
|
204
|
-
}, {
|
|
205
|
-
key: "getDistance",
|
|
206
|
-
value: function getDistance(x1, x2, y1, y2) {
|
|
207
|
-
return EARTH_RADIUS * Math.acos(Math.sin(y1) * Math.sin(y2) + Math.cos(y1) * Math.cos(y2) * Math.cos(x2 - x1));
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
/**
|
|
211
|
-
*
|
|
212
|
-
* @param deg
|
|
213
|
-
* @returns {number}
|
|
214
|
-
*/
|
|
215
|
-
}, {
|
|
216
|
-
key: "toRadians",
|
|
217
|
-
value: function toRadians(deg) {
|
|
218
|
-
return Math.PI * deg / 180;
|
|
219
|
-
}
|
|
220
|
-
|
|
221
|
-
/**
|
|
222
|
-
*
|
|
223
|
-
* @param rad
|
|
224
|
-
* @returns {number}
|
|
225
|
-
*/
|
|
226
|
-
}, {
|
|
227
|
-
key: "toDegrees",
|
|
228
|
-
value: function toDegrees(rad) {
|
|
229
|
-
return 180 * rad / Math.PI;
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
/**
|
|
233
|
-
*
|
|
234
|
-
* @param v
|
|
235
|
-
* @param a
|
|
236
|
-
* @param b
|
|
237
|
-
* @returns {number}
|
|
238
|
-
*/
|
|
239
|
-
}, {
|
|
240
|
-
key: "getRange",
|
|
241
|
-
value: function getRange(v, a, b) {
|
|
242
|
-
if (a != null) {
|
|
243
|
-
v = Math.max(v, a);
|
|
244
|
-
}
|
|
245
|
-
if (b != null) {
|
|
246
|
-
v = Math.min(v, b);
|
|
247
|
-
}
|
|
248
|
-
return v;
|
|
249
|
-
}
|
|
250
|
-
|
|
251
|
-
/**
|
|
252
|
-
*
|
|
253
|
-
* @param v
|
|
254
|
-
* @param a
|
|
255
|
-
* @param b
|
|
256
|
-
* @returns {*}
|
|
257
|
-
*/
|
|
258
|
-
}, {
|
|
259
|
-
key: "getLoop",
|
|
260
|
-
value: function getLoop(v, a, b) {
|
|
261
|
-
while (v > b) {
|
|
262
|
-
v -= b - a;
|
|
263
|
-
}
|
|
264
|
-
while (v < a) {
|
|
265
|
-
v += b - a;
|
|
266
|
-
}
|
|
267
|
-
return v;
|
|
268
|
-
}
|
|
269
|
-
|
|
270
|
-
/**
|
|
271
|
-
*
|
|
272
|
-
* @param point
|
|
273
|
-
* @returns {{lng: number, lat: number}|*}
|
|
274
|
-
*/
|
|
275
|
-
}, {
|
|
276
|
-
key: "lngLatToMercator",
|
|
277
|
-
value: function lngLatToMercator(point) {
|
|
278
|
-
return this.convertLL2MC(point);
|
|
279
|
-
}
|
|
280
|
-
|
|
281
|
-
/**
|
|
282
|
-
*
|
|
283
|
-
* @param point
|
|
284
|
-
* @returns {{x: (number|*), y: (number|*)}}
|
|
285
|
-
*/
|
|
286
|
-
}, {
|
|
287
|
-
key: "lngLatToPoint",
|
|
288
|
-
value: function lngLatToPoint(point) {
|
|
289
|
-
var mercator = this.convertLL2MC(point);
|
|
290
|
-
return {
|
|
291
|
-
x: mercator['lng'],
|
|
292
|
-
y: mercator['lat']
|
|
293
|
-
};
|
|
294
|
-
}
|
|
295
|
-
|
|
296
|
-
/**
|
|
297
|
-
* 墨卡托变换至经纬度
|
|
298
|
-
* @param point 墨卡托
|
|
299
|
-
* @returns Point 经纬度
|
|
300
|
-
*/
|
|
301
|
-
}, {
|
|
302
|
-
key: "mercatorToLngLat",
|
|
303
|
-
value: function mercatorToLngLat(point) {
|
|
304
|
-
return this.convertMC2LL(point);
|
|
305
|
-
}
|
|
306
|
-
|
|
307
|
-
/**
|
|
308
|
-
* 平面到球面坐标
|
|
309
|
-
* @param point 平面坐标
|
|
310
|
-
* @returns Point 球面坐标
|
|
311
|
-
*/
|
|
312
|
-
}, {
|
|
313
|
-
key: "pointToLngLat",
|
|
314
|
-
value: function pointToLngLat(point) {
|
|
315
|
-
var mercator = {
|
|
316
|
-
lng: point.x,
|
|
317
|
-
lat: point.y
|
|
318
|
-
};
|
|
319
|
-
return this.convertMC2LL(mercator);
|
|
320
|
-
}
|
|
321
|
-
|
|
322
|
-
/**
|
|
323
|
-
* 地理坐标转换至像素坐标
|
|
324
|
-
* @param point 地理坐标
|
|
325
|
-
* @param zoom 级别
|
|
326
|
-
* @param mapCenter 地图中心点,注意为了保证没有误差,这里需要传递墨卡托坐标
|
|
327
|
-
* @param mapSize 地图容器大小
|
|
328
|
-
*/
|
|
329
|
-
}, {
|
|
330
|
-
key: "pointToPixel",
|
|
331
|
-
value: function pointToPixel(point, zoom, mapCenter, mapSize) {
|
|
332
|
-
if (!point) {
|
|
333
|
-
return;
|
|
334
|
-
}
|
|
335
|
-
point = this.lngLatToMercator(point);
|
|
336
|
-
var zoomUnits = this.getZoomUnits(zoom);
|
|
337
|
-
var x = Math.round((point['lng'] - mapCenter['lng']) / zoomUnits + mapSize.width / 2);
|
|
338
|
-
var y = Math.round((mapCenter['lat'] - point['lat']) / zoomUnits + mapSize.height / 2);
|
|
339
|
-
return {
|
|
340
|
-
x: x,
|
|
341
|
-
y: y
|
|
342
|
-
};
|
|
343
|
-
}
|
|
344
|
-
|
|
345
|
-
/**
|
|
346
|
-
* 像素坐标转换至地理坐标
|
|
347
|
-
* @param pixel 像素坐标
|
|
348
|
-
* @param zoom 级别
|
|
349
|
-
* @param mapCenter 地图中心点,注意为了保证没有误差,这里需要传递墨卡托坐标
|
|
350
|
-
* @param mapSize 地图容器大小
|
|
351
|
-
*/
|
|
352
|
-
}, {
|
|
353
|
-
key: "pixelToPoint",
|
|
354
|
-
value: function pixelToPoint(pixel, zoom, mapCenter, mapSize) {
|
|
355
|
-
if (!pixel) {
|
|
356
|
-
return;
|
|
357
|
-
}
|
|
358
|
-
var zoomUnits = this.getZoomUnits(zoom);
|
|
359
|
-
var lng = mapCenter['lng'] + zoomUnits * (pixel.x - mapSize.width / 2);
|
|
360
|
-
var lat = mapCenter['lat'] - zoomUnits * (pixel.y - mapSize.height / 2);
|
|
361
|
-
var point = {
|
|
362
|
-
lng: lng,
|
|
363
|
-
lat: lat
|
|
364
|
-
};
|
|
365
|
-
return this.mercatorToLngLat(point);
|
|
366
|
-
}
|
|
367
|
-
|
|
368
|
-
/**
|
|
369
|
-
*
|
|
370
|
-
* @param zoom
|
|
371
|
-
* @returns {number}
|
|
372
|
-
*/
|
|
373
|
-
}, {
|
|
374
|
-
key: "getZoomUnits",
|
|
375
|
-
value: function getZoomUnits(zoom) {
|
|
376
|
-
return Math.pow(2, 18 - zoom);
|
|
377
|
-
}
|
|
378
|
-
}]);
|
|
379
|
-
return BaiduMercatorProjection;
|
|
380
|
-
}();
|
|
381
|
-
var _default = BaiduMercatorProjection;
|
|
382
|
-
exports["default"] = _default;
|
|
383
|
-
//# sourceMappingURL=BaiduMercatorProjection.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BaiduMercatorProjection.js","names":["EARTH_RADIUS","MC_BAND","LL_BAND","MC2LL","LL2MC","BaiduMercatorProjection","_classCallCheck","isWgs84","_createClass","key","value","getDistanceByMC","point1","point2","convertMC2LL","x1","toRadians","y1","x2","y2","getDistance","getDistanceByLL","getLoop","getRange","point","lng","lat","lnglat","mmy","Math","PI","atan","exp","toFixed","temp","abs","factor","undefined","i","length","convertor","convertLL2MC","mercator","earthRad","a","log","sin","parseFloat","mc","fromPoint","x","y","acos","cos","deg","toDegrees","rad","v","b","max","min","lngLatToMercator","lngLatToPoint","mercatorToLngLat","pointToLngLat","pointToPixel","zoom","mapCenter","mapSize","zoomUnits","getZoomUnits","round","width","height","pixelToPoint","pixel","pow","_default","exports"],"sources":["tools/base-map-switch/base/imagery/baidu/BaiduMercatorProjection.js"],"sourcesContent":["/**\n * @Author: Caven\n * @Date: 2021-01-30 22:41:41\n */\n\nconst EARTH_RADIUS = 6370996.81\nconst MC_BAND = [12890594.86, 8362377.87, 5591021, 3481989.83, 1678043.12, 0]\nconst LL_BAND = [75, 60, 45, 30, 15, 0]\nconst MC2LL = [\n [\n 1.410526172116255e-8,\n 8.98305509648872e-6,\n -1.9939833816331,\n 2.009824383106796e2,\n -1.872403703815547e2,\n 91.6087516669843,\n -23.38765649603339,\n 2.57121317296198,\n -0.03801003308653,\n 1.73379812e7\n ],\n [\n -7.435856389565537e-9,\n 8.983055097726239e-6,\n -0.78625201886289,\n 96.32687599759846,\n -1.85204757529826,\n -59.36935905485877,\n 47.40033549296737,\n -16.50741931063887,\n 2.28786674699375,\n 1.026014486e7\n ],\n [\n -3.030883460898826e-8,\n 8.98305509983578e-6,\n 0.30071316287616,\n 59.74293618442277,\n 7.357984074871,\n -25.38371002664745,\n 13.45380521110908,\n -3.29883767235584,\n 0.32710905363475,\n 6.85681737e6\n ],\n [\n -1.981981304930552e-8,\n 8.983055099779535e-6,\n 0.03278182852591,\n 40.31678527705744,\n 0.65659298677277,\n -4.44255534477492,\n 0.85341911805263,\n 0.12923347998204,\n -0.04625736007561,\n 4.48277706e6\n ],\n [\n 3.09191371068437e-9,\n 8.983055096812155e-6,\n 0.00006995724062,\n 23.10934304144901,\n -0.00023663490511,\n -0.6321817810242,\n -0.00663494467273,\n 0.03430082397953,\n -0.00466043876332,\n 2.5551644e6\n ],\n [\n 2.890871144776878e-9,\n 8.983055095805407e-6,\n -0.00000003068298,\n 7.47137025468032,\n -0.00000353937994,\n -0.02145144861037,\n -0.00001234426596,\n 0.00010322952773,\n -0.00000323890364,\n 8.260885e5\n ]\n]\nconst LL2MC = [\n [\n -0.0015702102444,\n 1.113207020616939e5,\n 1.704480524535203e15,\n -1.033898737604234e16,\n 2.611266785660388e16,\n -3.51496691766537e16,\n 2.659570071840392e16,\n -1.072501245418824e16,\n 1.800819912950474e15,\n 82.5\n ],\n [\n 8.277824516172526e-4,\n 1.113207020463578e5,\n 6.477955746671608e8,\n -4.082003173641316e9,\n 1.077490566351142e10,\n -1.517187553151559e10,\n 1.205306533862167e10,\n -5.124939663577472e9,\n 9.133119359512032e8,\n 67.5\n ],\n [\n 0.00337398766765,\n 1.113207020202162e5,\n 4.481351045890365e6,\n -2.339375119931662e7,\n 7.968221547186455e7,\n -1.159649932797253e8,\n 9.723671115602145e7,\n -4.366194633752821e7,\n 8.477230501135234e6,\n 52.5\n ],\n [\n 0.00220636496208,\n 1.113207020209128e5,\n 5.175186112841131e4,\n 3.796837749470245e6,\n 9.920137397791013e5,\n -1.22195221711287e6,\n 1.340652697009075e6,\n -6.209436990984312e5,\n 1.444169293806241e5,\n 37.5\n ],\n [\n -3.441963504368392e-4,\n 1.113207020576856e5,\n 2.782353980772752e2,\n 2.485758690035394e6,\n 6.070750963243378e3,\n 5.482118345352118e4,\n 9.540606633304236e3,\n -2.71055326746645e3,\n 1.405483844121726e3,\n 22.5\n ],\n [\n -3.218135878613132e-4,\n 1.113207020701615e5,\n 0.00369383431289,\n 8.237256402795718e5,\n 0.46104986909093,\n 2.351343141331292e3,\n 1.58060784298199,\n 8.77738589078284,\n 0.37238884252424,\n 7.45\n ]\n]\n\nclass BaiduMercatorProjection {\n constructor() {\n this.isWgs84 = false\n }\n\n getDistanceByMC(point1, point2) {\n if (!point1 || !point2) {\n return 0\n }\n point1 = this.convertMC2LL(point1)\n if (!point1) {\n return 0\n }\n let x1 = this.toRadians(point1['lng'])\n let y1 = this.toRadians(point1['lat'])\n point2 = this.convertMC2LL(point2)\n if (!point2) {\n return 0\n }\n let x2 = this.toRadians(point2['lng'])\n let y2 = this.toRadians(point2['lat'])\n return this.getDistance(x1, x2, y1, y2)\n }\n\n /**\n * 根据经纬度坐标计算两点间距离;\n * @param point1\n * @param point2\n * @returns {number|*} 返回两点间的距离\n */\n getDistanceByLL(point1, point2) {\n if (!point1 || !point2) {\n return 0\n }\n point1['lng'] = this.getLoop(point1['lng'], -180, 180)\n point1['lat'] = this.getRange(point1['lat'], -74, 74)\n point2['lng'] = this.getLoop(point2['lng'], -180, 180)\n point2['lat'] = this.getRange(point2['lat'], -74, 74)\n let x1 = this.toRadians(point1['lng'])\n let y1 = this.toRadians(point1['lat'])\n let x2 = this.toRadians(point2['lng'])\n let y2 = this.toRadians(point2['lat'])\n return this.getDistance(x1, x2, y1, y2)\n }\n\n /**\n * 平面直角坐标转换成经纬度坐标;\n * @param point\n * @returns {Point|{lng: number, lat: number}}\n */\n convertMC2LL(point) {\n if (!point) {\n return { lng: 0, lat: 0 }\n }\n let lnglat = {}\n if (this.isWgs84) {\n lnglat.lng = (point.lng / 20037508.34) * 180\n let mmy = (point.lat / 20037508.34) * 180\n lnglat.lat =\n (180 / Math.PI) *\n (2 * Math.atan(Math.exp((mmy * Math.PI) / 180)) - Math.PI / 2)\n return {\n lng: lnglat['lng'].toFixed(6),\n lat: lnglat['lat'].toFixed(6)\n }\n }\n\n let temp = {\n lng: Math.abs(point['lng']),\n lat: Math.abs(point['lat'])\n }\n\n let factor = undefined\n for (let i = 0; i < MC_BAND.length; i++) {\n if (temp['lat'] >= MC_BAND[i]) {\n factor = MC2LL[i]\n break\n }\n }\n lnglat = this.convertor(point, factor)\n return {\n lng: lnglat['lng'].toFixed(6),\n lat: lnglat['lat'].toFixed(6)\n }\n }\n\n /**\n * 经纬度坐标转换成平面直角坐标;\n * @param point 经纬度坐标\n * @returns {{lng: number, lat: number}|*}\n */\n convertLL2MC(point) {\n if (!point) {\n return { lng: 0, lat: 0 }\n }\n if (\n point['lng'] > 180 ||\n point['lng'] < -180 ||\n point['lat'] > 90 ||\n point['lat'] < -90\n ) {\n return point\n }\n\n if (this.isWgs84) {\n let mercator = {}\n let earthRad = 6378137.0\n mercator.lng = ((point.lng * Math.PI) / 180) * earthRad\n let a = (point.lat * Math.PI) / 180\n mercator.lat =\n (earthRad / 2) * Math.log((1.0 + Math.sin(a)) / (1.0 - Math.sin(a)))\n\n return {\n lng: parseFloat(mercator['lng'].toFixed(2)),\n lat: parseFloat(mercator['lat'].toFixed(2))\n }\n }\n\n point['lng'] = this.getLoop(point['lng'], -180, 180)\n point['lat'] = this.getRange(point['lat'], -74, 74)\n let temp = { lng: point['lng'], lat: point['lat'] }\n let factor = undefined\n for (let i = 0; i < LL_BAND.length; i++) {\n if (temp['lat'] >= LL_BAND[i]) {\n factor = LL2MC[i]\n break\n }\n }\n if (!factor) {\n for (let i = 0; i < LL_BAND.length; i++) {\n if (temp['lat'] <= -LL_BAND[i]) {\n factor = LL2MC[i]\n break\n }\n }\n }\n let mc = this.convertor(point, factor)\n return {\n lng: parseFloat(mc['lng'].toFixed(2)),\n lat: parseFloat(mc['lat'].toFixed(2))\n }\n }\n\n /**\n *\n * @param fromPoint\n * @param factor\n * @returns {{lng: *, lat: *}}\n */\n convertor(fromPoint, factor) {\n if (!fromPoint || !factor) {\n return { lng: 0, lat: 0 }\n }\n let x = factor[0] + factor[1] * Math.abs(fromPoint['lng'])\n let temp = Math.abs(fromPoint['lat']) / factor[9]\n let y =\n factor[2] +\n factor[3] * temp +\n factor[4] * temp * temp +\n factor[5] * temp * temp * temp +\n factor[6] * temp * temp * temp * temp +\n factor[7] * temp * temp * temp * temp * temp +\n factor[8] * temp * temp * temp * temp * temp * temp\n x *= fromPoint['lng'] < 0 ? -1 : 1\n y *= fromPoint['lat'] < 0 ? -1 : 1\n return {\n lng: x,\n lat: y\n }\n }\n\n /**\n *\n * @param x1\n * @param x2\n * @param y1\n * @param y2\n * @returns {number}\n */\n getDistance(x1, x2, y1, y2) {\n return (\n EARTH_RADIUS *\n Math.acos(\n Math.sin(y1) * Math.sin(y2) +\n Math.cos(y1) * Math.cos(y2) * Math.cos(x2 - x1)\n )\n )\n }\n\n /**\n *\n * @param deg\n * @returns {number}\n */\n toRadians(deg) {\n return (Math.PI * deg) / 180\n }\n\n /**\n *\n * @param rad\n * @returns {number}\n */\n toDegrees(rad) {\n return (180 * rad) / Math.PI\n }\n\n /**\n *\n * @param v\n * @param a\n * @param b\n * @returns {number}\n */\n getRange(v, a, b) {\n if (a != null) {\n v = Math.max(v, a)\n }\n if (b != null) {\n v = Math.min(v, b)\n }\n return v\n }\n\n /**\n *\n * @param v\n * @param a\n * @param b\n * @returns {*}\n */\n getLoop(v, a, b) {\n while (v > b) {\n v -= b - a\n }\n while (v < a) {\n v += b - a\n }\n return v\n }\n\n /**\n *\n * @param point\n * @returns {{lng: number, lat: number}|*}\n */\n lngLatToMercator(point) {\n return this.convertLL2MC(point)\n }\n\n /**\n *\n * @param point\n * @returns {{x: (number|*), y: (number|*)}}\n */\n lngLatToPoint(point) {\n let mercator = this.convertLL2MC(point)\n return {\n x: mercator['lng'],\n y: mercator['lat']\n }\n }\n\n /**\n * 墨卡托变换至经纬度\n * @param point 墨卡托\n * @returns Point 经纬度\n */\n mercatorToLngLat(point) {\n return this.convertMC2LL(point)\n }\n\n /**\n * 平面到球面坐标\n * @param point 平面坐标\n * @returns Point 球面坐标\n */\n pointToLngLat(point) {\n let mercator = { lng: point.x, lat: point.y }\n return this.convertMC2LL(mercator)\n }\n\n /**\n * 地理坐标转换至像素坐标\n * @param point 地理坐标\n * @param zoom 级别\n * @param mapCenter 地图中心点,注意为了保证没有误差,这里需要传递墨卡托坐标\n * @param mapSize 地图容器大小\n */\n pointToPixel(point, zoom, mapCenter, mapSize) {\n if (!point) {\n return\n }\n point = this.lngLatToMercator(point)\n let zoomUnits = this.getZoomUnits(zoom)\n let x = Math.round(\n (point['lng'] - mapCenter['lng']) / zoomUnits + mapSize.width / 2\n )\n let y = Math.round(\n (mapCenter['lat'] - point['lat']) / zoomUnits + mapSize.height / 2\n )\n return { x, y }\n }\n\n /**\n * 像素坐标转换至地理坐标\n * @param pixel 像素坐标\n * @param zoom 级别\n * @param mapCenter 地图中心点,注意为了保证没有误差,这里需要传递墨卡托坐标\n * @param mapSize 地图容器大小\n */\n pixelToPoint(pixel, zoom, mapCenter, mapSize) {\n if (!pixel) {\n return\n }\n let zoomUnits = this.getZoomUnits(zoom)\n let lng = mapCenter['lng'] + zoomUnits * (pixel.x - mapSize.width / 2)\n let lat = mapCenter['lat'] - zoomUnits * (pixel.y - mapSize.height / 2)\n let point = { lng, lat }\n return this.mercatorToLngLat(point)\n }\n\n /**\n *\n * @param zoom\n * @returns {number}\n */\n getZoomUnits(zoom) {\n return Math.pow(2, 18 - zoom)\n }\n}\n\nexport default BaiduMercatorProjection\n"],"mappings":"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"}
|