@vtx/map 1.1.49 → 1.1.51
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/VtxMap/AMap/AMap.js +1003 -633
- package/lib/VtxMap/AMap/AMap.js.map +1 -1
- package/lib/VtxMap/BMap/Map.js +1198 -749
- package/lib/VtxMap/BMap/Map.js.map +1 -1
- package/lib/VtxMap/GMap/Map.js +1564 -1046
- package/lib/VtxMap/GMap/Map.js.map +1 -1
- package/lib/VtxMap/Map.js +42 -8
- package/lib/VtxMap/Map.js.map +1 -1
- package/lib/VtxMap/MapToolFunction.js +63 -26
- package/lib/VtxMap/MapToolFunction.js.map +1 -1
- package/lib/VtxMap/OMap/Map.js +1361 -867
- package/lib/VtxMap/OMap/Map.js.map +1 -1
- package/lib/VtxMap/OlMap/Map.js +1243 -722
- package/lib/VtxMap/OlMap/Map.js.map +1 -1
- package/lib/VtxMap/TMap/TMap.js +1059 -652
- package/lib/VtxMap/TMap/TMap.js.map +1 -1
- package/lib/VtxMap/index.js +8 -1
- package/lib/VtxMap/index.js.map +1 -1
- package/lib/VtxMap/mapPlayer.js +123 -67
- package/lib/VtxMap/mapPlayer.js.map +1 -1
- package/lib/VtxMap/optimizingPointMap.js +77 -21
- package/lib/VtxMap/optimizingPointMap.js.map +1 -1
- package/lib/VtxMap/style/css.js +6 -0
- package/lib/VtxMap/style/css.js.map +1 -1
- package/lib/VtxMap/style/index.js +6 -0
- package/lib/VtxMap/style/index.js.map +1 -1
- package/lib/VtxMap/zoomMap.js +41 -12
- package/lib/VtxMap/zoomMap.js.map +1 -1
- package/lib/VtxModal/VtxModal.js +63 -19
- package/lib/VtxModal/VtxModal.js.map +1 -1
- package/lib/VtxModal/draggableModal.js +48 -12
- package/lib/VtxModal/draggableModal.js.map +1 -1
- package/lib/VtxModal/index.js +6 -1
- package/lib/VtxModal/index.js.map +1 -1
- package/lib/VtxModal/style/css.js +6 -0
- package/lib/VtxModal/style/css.js.map +1 -1
- package/lib/VtxModal/style/index.js +6 -0
- package/lib/VtxModal/style/index.js.map +1 -1
- package/lib/VtxSearchCheckMap/VtxSearchCheckMap.js +238 -105
- package/lib/VtxSearchCheckMap/VtxSearchCheckMap.js.map +1 -1
- package/lib/VtxSearchCheckMap/index.js +2 -0
- package/lib/VtxSearchCheckMap/index.js.map +1 -1
- package/lib/VtxSearchCheckMap/mapping.js +2 -1
- package/lib/VtxSearchCheckMap/mapping.js.map +1 -1
- package/lib/VtxSearchCheckMap/style/css.js +19 -0
- package/lib/VtxSearchCheckMap/style/css.js.map +1 -1
- package/lib/VtxSearchCheckMap/style/index.js +19 -0
- package/lib/VtxSearchCheckMap/style/index.js.map +1 -1
- package/lib/VtxSearchMap/VtxSearchMap.js +229 -91
- package/lib/VtxSearchMap/VtxSearchMap.js.map +1 -1
- package/lib/VtxSearchMap/index.js +2 -0
- package/lib/VtxSearchMap/index.js.map +1 -1
- package/lib/VtxSearchMap/mapping.js +2 -1
- package/lib/VtxSearchMap/mapping.js.map +1 -1
- package/lib/VtxSearchMap/style/css.js +19 -0
- package/lib/VtxSearchMap/style/css.js.map +1 -1
- package/lib/VtxSearchMap/style/index.js +19 -0
- package/lib/VtxSearchMap/style/index.js.map +1 -1
- package/lib/default.js +19 -4
- package/lib/default.js.map +1 -1
- package/lib/index.js +3 -0
- package/lib/index.js.map +1 -1
- package/lib/utils/util.js +17 -5
- package/lib/utils/util.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,41 +1,68 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports["default"] = void 0;
|
|
9
|
+
|
|
8
10
|
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
9
12
|
var _Map = _interopRequireDefault(require("./Map"));
|
|
13
|
+
|
|
10
14
|
var _isEqual2 = _interopRequireDefault(require("lodash/isEqual"));
|
|
15
|
+
|
|
11
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
17
|
+
|
|
12
18
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
19
|
+
|
|
13
20
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
21
|
+
|
|
14
22
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
23
|
+
|
|
15
24
|
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
25
|
+
|
|
16
26
|
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
17
|
-
|
|
18
|
-
function
|
|
19
|
-
|
|
20
|
-
function
|
|
27
|
+
|
|
28
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
29
|
+
|
|
30
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
31
|
+
|
|
32
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
33
|
+
|
|
34
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
35
|
+
|
|
21
36
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
22
|
-
|
|
37
|
+
|
|
38
|
+
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, descriptor.key, descriptor); } }
|
|
39
|
+
|
|
23
40
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
24
|
-
|
|
25
|
-
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); }
|
|
41
|
+
|
|
26
42
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
43
|
+
|
|
27
44
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
45
|
+
|
|
28
46
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
47
|
+
|
|
29
48
|
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
|
49
|
+
|
|
30
50
|
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
51
|
+
|
|
31
52
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
53
|
+
|
|
32
54
|
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
55
|
+
|
|
33
56
|
var OptimizingPointMap = /*#__PURE__*/function (_React$Component) {
|
|
34
57
|
_inherits(OptimizingPointMap, _React$Component);
|
|
58
|
+
|
|
35
59
|
var _super = _createSuper(OptimizingPointMap);
|
|
60
|
+
|
|
36
61
|
function OptimizingPointMap(props) {
|
|
37
62
|
var _this;
|
|
63
|
+
|
|
38
64
|
_classCallCheck(this, OptimizingPointMap);
|
|
65
|
+
|
|
39
66
|
_this = _super.call(this, props);
|
|
40
67
|
_this.map = null;
|
|
41
68
|
_this.mapLoaded = false;
|
|
@@ -52,14 +79,16 @@ var OptimizingPointMap = /*#__PURE__*/function (_React$Component) {
|
|
|
52
79
|
};
|
|
53
80
|
return _this;
|
|
54
81
|
}
|
|
82
|
+
|
|
55
83
|
_createClass(OptimizingPointMap, [{
|
|
56
84
|
key: "resetPoints",
|
|
57
85
|
value: function resetPoints(props, eType) {
|
|
58
|
-
var t = this;
|
|
59
|
-
|
|
86
|
+
var t = this; // 延时优化,只处理最后一次操作
|
|
87
|
+
|
|
60
88
|
if (t.resetDelay.timer) {
|
|
61
89
|
clearTimeout(t.resetDelay.timer);
|
|
62
90
|
}
|
|
91
|
+
|
|
63
92
|
t.resetDelay.eType = t.resetDelay.eType == 'zoom' || eType == 'zoom' ? 'zoom' : eType;
|
|
64
93
|
t.resetDelay.timer = setTimeout(function () {
|
|
65
94
|
var mcfg = t.map.getMapExtent();
|
|
@@ -85,8 +114,10 @@ var OptimizingPointMap = /*#__PURE__*/function (_React$Component) {
|
|
|
85
114
|
key: "componentDidMount",
|
|
86
115
|
value: function componentDidMount() {
|
|
87
116
|
var _this2 = this;
|
|
117
|
+
|
|
88
118
|
this.map.loadMapComplete.then(function () {
|
|
89
119
|
_this2.resetPoints(_this2.props);
|
|
120
|
+
|
|
90
121
|
_this2.mapLoaded = true;
|
|
91
122
|
});
|
|
92
123
|
}
|
|
@@ -102,6 +133,7 @@ var OptimizingPointMap = /*#__PURE__*/function (_React$Component) {
|
|
|
102
133
|
key: "zoomEnd",
|
|
103
134
|
value: function zoomEnd(obj) {
|
|
104
135
|
this.resetPoints(this.props, 'zoom');
|
|
136
|
+
|
|
105
137
|
if (typeof this.props.zoomEnd === "function") {
|
|
106
138
|
this.props.zoomEnd(obj);
|
|
107
139
|
}
|
|
@@ -110,6 +142,7 @@ var OptimizingPointMap = /*#__PURE__*/function (_React$Component) {
|
|
|
110
142
|
key: "moveEnd",
|
|
111
143
|
value: function moveEnd(obj) {
|
|
112
144
|
this.resetPoints(this.props, 'move');
|
|
145
|
+
|
|
113
146
|
if (typeof this.props.moveEnd === "function") {
|
|
114
147
|
this.props.moveEnd(obj);
|
|
115
148
|
}
|
|
@@ -118,6 +151,7 @@ var OptimizingPointMap = /*#__PURE__*/function (_React$Component) {
|
|
|
118
151
|
key: "render",
|
|
119
152
|
value: function render() {
|
|
120
153
|
var _this3 = this;
|
|
154
|
+
|
|
121
155
|
// console.log('优化后剩余点数:'+this.state.filterPoints.length)
|
|
122
156
|
var newProps = _objectSpread(_objectSpread({}, this.props), {}, {
|
|
123
157
|
zoomEnd: this.zoomEnd,
|
|
@@ -127,45 +161,55 @@ var OptimizingPointMap = /*#__PURE__*/function (_React$Component) {
|
|
|
127
161
|
if (p) {
|
|
128
162
|
_this3.map = p;
|
|
129
163
|
}
|
|
164
|
+
|
|
130
165
|
if (typeof _this3.props.getMapInstance === "function") {
|
|
131
166
|
_this3.props.getMapInstance(p);
|
|
132
167
|
}
|
|
133
168
|
}
|
|
134
169
|
});
|
|
170
|
+
|
|
135
171
|
delete newProps.gridSpacing;
|
|
136
172
|
delete newProps.reservedPoints;
|
|
137
173
|
return /*#__PURE__*/_react["default"].createElement(_Map["default"], newProps);
|
|
138
174
|
}
|
|
139
175
|
}]);
|
|
176
|
+
|
|
140
177
|
return OptimizingPointMap;
|
|
141
178
|
}(_react["default"].Component);
|
|
179
|
+
|
|
142
180
|
var mapPointsProcessor = /*#__PURE__*/function () {
|
|
143
181
|
function mapPointsProcessor(gridSpacing) {
|
|
144
182
|
_classCallCheck(this, mapPointsProcessor);
|
|
183
|
+
|
|
145
184
|
this.GRIDSPACING = gridSpacing || 40;
|
|
146
185
|
this.mapHeight = null; //地图高度
|
|
186
|
+
|
|
147
187
|
this.mapWidth = null; //地图宽度
|
|
148
188
|
// 若地图大小不变,zoom不变,网格的经纬度间隔应该保持不变以保证前后两次网格位置保持一致
|
|
189
|
+
|
|
149
190
|
this.lngInterval = null; //划分的网格经度间隔
|
|
191
|
+
|
|
150
192
|
this.latInterval = null; //划分的网格纬度间隔
|
|
193
|
+
|
|
151
194
|
this.maxLat = null, this.minLat = null, this.maxLng = null, this.minLng = null;
|
|
152
195
|
}
|
|
196
|
+
|
|
153
197
|
_createClass(mapPointsProcessor, [{
|
|
154
198
|
key: "resetMapConfig",
|
|
155
199
|
value: function resetMapConfig(param) {
|
|
156
200
|
// 若没传地图相关参数默认使用上次的地图参数
|
|
157
201
|
var mapHeight = param.mapHeight,
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
202
|
+
mapWidth = param.mapWidth,
|
|
203
|
+
maxLat = param.maxLat,
|
|
204
|
+
minLat = param.minLat,
|
|
205
|
+
maxLng = param.maxLng,
|
|
206
|
+
minLng = param.minLng,
|
|
207
|
+
eType = param.eType;
|
|
164
208
|
this.maxLat = maxLat || this.maxLat;
|
|
165
209
|
this.minLat = minLat || this.minLat;
|
|
166
210
|
this.maxLng = maxLng || this.maxLng;
|
|
167
|
-
this.minLng = minLng || this.minLng;
|
|
168
|
-
|
|
211
|
+
this.minLng = minLng || this.minLng; // 当操作为zoom(改变最大最小经纬度)或地图宽高改变则重新计算网格
|
|
212
|
+
|
|
169
213
|
if (eType == 'zoom' || mapHeight && mapHeight != this.mapHeight || mapWidth && mapWidth != this.mapWidth) {
|
|
170
214
|
this.mapHeight = mapHeight || this.mapHeight;
|
|
171
215
|
this.mapWidth = mapWidth || this.mapWidth;
|
|
@@ -185,38 +229,50 @@ var mapPointsProcessor = /*#__PURE__*/function () {
|
|
|
185
229
|
value: function pointFilter(param) {
|
|
186
230
|
// allPoints为必填参数
|
|
187
231
|
var allPoints = param.allPoints,
|
|
188
|
-
|
|
189
|
-
|
|
232
|
+
_param$reservedPoints = param.reservedPoints,
|
|
233
|
+
reservedPoints = _param$reservedPoints === void 0 ? [] : _param$reservedPoints;
|
|
190
234
|
this.resetMapConfig(param);
|
|
191
235
|
var hashPoints = {};
|
|
236
|
+
|
|
192
237
|
for (var i = 0, len = allPoints.length; i < len; i++) {
|
|
193
238
|
var p_lng = allPoints[i].longitude;
|
|
194
239
|
var p_lat = allPoints[i].latitude;
|
|
240
|
+
|
|
195
241
|
if (p_lng > this.maxLng || p_lng < this.minLng || p_lat > this.maxLat || p_lat < this.minLat) {
|
|
196
242
|
continue;
|
|
197
243
|
}
|
|
244
|
+
|
|
198
245
|
var x_index = parseInt(p_lng / this.lngInterval);
|
|
199
246
|
var y_index = parseInt(p_lat / this.latInterval);
|
|
200
247
|
var hashIndex = x_index + '-' + y_index;
|
|
248
|
+
|
|
201
249
|
if (!hashPoints[hashIndex]) {
|
|
202
250
|
hashPoints[hashIndex] = allPoints[i];
|
|
203
251
|
}
|
|
204
252
|
}
|
|
253
|
+
|
|
205
254
|
var filteredPoints = _toConsumableArray(reservedPoints);
|
|
255
|
+
|
|
206
256
|
var reservedIds = reservedPoints.map(function (item) {
|
|
207
257
|
return item.id;
|
|
208
258
|
});
|
|
259
|
+
|
|
209
260
|
for (var k in hashPoints) {
|
|
210
261
|
var the_point = hashPoints[k];
|
|
262
|
+
|
|
211
263
|
if (reservedIds.indexOf(the_point.id) == -1) {
|
|
212
264
|
filteredPoints.push(the_point);
|
|
213
265
|
}
|
|
214
266
|
}
|
|
267
|
+
|
|
215
268
|
return filteredPoints;
|
|
216
269
|
}
|
|
217
270
|
}]);
|
|
271
|
+
|
|
218
272
|
return mapPointsProcessor;
|
|
219
273
|
}();
|
|
220
|
-
|
|
274
|
+
|
|
275
|
+
var _default = OptimizingPointMap;
|
|
276
|
+
exports["default"] = _default;
|
|
221
277
|
module.exports = exports["default"];
|
|
222
278
|
//# sourceMappingURL=optimizingPointMap.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"optimizingPointMap.js","names":["_react","_interopRequireDefault","require","_Map","_isEqual2","obj","__esModule","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","iter","Symbol","iterator","isArray","len","length","i","arr2","ownKeys","e","r","t","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","key","value","_toPropertyKey","configurable","writable","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","_createClass","protoProps","staticProps","arg","_toPrimitive","_typeof","String","input","hint","prim","toPrimitive","undefined","res","Number","_inherits","subClass","superClass","create","_setPrototypeOf","p","setPrototypeOf","bind","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","getPrototypeOf","OptimizingPointMap","_React$Component","_super","_this","map","mapLoaded","MPP","mapPointsProcessor","gridSpacing","state","filterPoints","zoomEnd","moveEnd","resetPoints","resetDelay","timer","eType","clearTimeout","setTimeout","mcfg","getMapExtent","param","mapHeight","mapSize","height","mapWidth","width","minLat","southWest","lat","maxLat","northEast","minLng","lng","maxLng","allPoints","mapPoints","reservedPoints","setState","pointFilter","componentDidMount","_this2","loadMapComplete","then","UNSAFE_componentWillReceiveProps","nextProps","_isEqual","render","_this3","newProps","getMapInstance","createElement","React","Component","GRIDSPACING","lngInterval","latInterval","resetMapConfig","calGridInterval","x_num","Math","ceil","y_num","parseFloat","toFixed","_param$reservedPoints","hashPoints","p_lng","longitude","p_lat","latitude","x_index","parseInt","y_index","hashIndex","filteredPoints","reservedIds","item","id","k","the_point","indexOf","_default","exports","module"],"sources":["VtxMap/optimizingPointMap.js"],"sourcesContent":["import React from 'react';\r\nimport Map from './Map';\r\nimport _isEqual from 'lodash/isEqual';\r\n\r\nclass OptimizingPointMap extends React.Component{\r\n constructor(props){\r\n super(props);\r\n this.map = null;\r\n this.mapLoaded = false;\r\n this.MPP = new mapPointsProcessor(props.gridSpacing || 40);\r\n this.state= {\r\n filterPoints:[]\r\n }\r\n this.zoomEnd = this.zoomEnd.bind(this);\r\n this.moveEnd = this.moveEnd.bind(this);\r\n this.resetPoints = this.resetPoints.bind(this);\r\n\r\n this.resetDelay = {\r\n timer:null,\r\n eType:null\r\n }\r\n }\r\n \r\n resetPoints(props, eType){\r\n const t = this;\r\n // 延时优化,只处理最后一次操作\r\n if(t.resetDelay.timer){\r\n clearTimeout(t.resetDelay.timer);\r\n }\r\n t.resetDelay.eType = t.resetDelay.eType=='zoom'||eType=='zoom' ?'zoom':eType;\r\n t.resetDelay.timer = setTimeout(()=>{\r\n let mcfg = t.map.getMapExtent();\r\n const param = {\r\n mapHeight:mcfg.mapSize.height,\r\n mapWidth:mcfg.mapSize.width,\r\n minLat:mcfg.southWest.lat,\r\n maxLat:mcfg.northEast.lat,\r\n minLng:mcfg.southWest.lng,\r\n maxLng:mcfg.northEast.lng,\r\n eType:t.resetDelay.eType,\r\n allPoints:props.mapPoints,\r\n reservedPoints:props.reservedPoints\r\n }\r\n t.setState({\r\n filterPoints:t.MPP.pointFilter(param)\r\n });\r\n t.resetDelay.timer = null;\r\n t.resetDelay.eType = null;\r\n },200);\r\n \r\n }\r\n componentDidMount(){\r\n this.map.loadMapComplete.then(()=>{\r\n this.resetPoints(this.props);\r\n this.mapLoaded = true;\r\n })\r\n }\r\n UNSAFE_componentWillReceiveProps(nextProps){\r\n if(this.mapLoaded && (!_isEqual(this.props.reservedPoints, nextProps.reservedPoints) || !_isEqual(this.props.mapPoints, nextProps.mapPoints))){\r\n // 外部点数据改变,更新内部点数据\r\n this.resetPoints(nextProps);\r\n }\r\n }\r\n zoomEnd(obj){\r\n this.resetPoints(this.props,'zoom');\r\n if(typeof(this.props.zoomEnd) ===\"function\"){\r\n this.props.zoomEnd(obj);\r\n }\r\n }\r\n moveEnd(obj){\r\n this.resetPoints(this.props,'move');\r\n if(typeof(this.props.moveEnd) ===\"function\"){\r\n this.props.moveEnd(obj);\r\n }\r\n }\r\n render(){ \r\n // console.log('优化后剩余点数:'+this.state.filterPoints.length) \r\n const newProps = {\r\n ...this.props,\r\n zoomEnd:this.zoomEnd,\r\n moveEnd:this.moveEnd,\r\n mapPoints:this.state.filterPoints,\r\n getMapInstance:(p)=>{\r\n if(p){\r\n this.map = p;\r\n }\r\n if(typeof(this.props.getMapInstance) ===\"function\"){\r\n this.props.getMapInstance(p);\r\n }\r\n }\r\n }\r\n delete newProps.gridSpacing;\r\n delete newProps.reservedPoints;\r\n\r\n return (<Map {...newProps} />)\r\n }\r\n}\r\n\r\n\r\nclass mapPointsProcessor{\r\n constructor(gridSpacing){\r\n this.GRIDSPACING = gridSpacing || 40;\r\n this.mapHeight = null; //地图高度\r\n this.mapWidth = null; //地图宽度\r\n // 若地图大小不变,zoom不变,网格的经纬度间隔应该保持不变以保证前后两次网格位置保持一致\r\n this.lngInterval = null; //划分的网格经度间隔\r\n this.latInterval = null; //划分的网格纬度间隔\r\n this.maxLat = null,\r\n this.minLat = null,\r\n this.maxLng = null,\r\n this.minLng = null\r\n }\r\n resetMapConfig(param){\r\n // 若没传地图相关参数默认使用上次的地图参数\r\n const {mapHeight,mapWidth,maxLat,minLat,maxLng,minLng,eType} = param;\r\n this.maxLat = maxLat || this.maxLat;\r\n this.minLat = minLat || this.minLat;\r\n this.maxLng = maxLng || this.maxLng;\r\n this.minLng = minLng || this.minLng;\r\n // 当操作为zoom(改变最大最小经纬度)或地图宽高改变则重新计算网格\r\n if(eType=='zoom' || (mapHeight && mapHeight != this.mapHeight) || (mapWidth && mapWidth != this.mapWidth)){\r\n this.mapHeight = mapHeight || this.mapHeight;\r\n this.mapWidth = mapWidth || this.mapWidth;\r\n this.calGridInterval();\r\n }\r\n }\r\n calGridInterval(){\r\n const x_num = Math.ceil(this.mapWidth/this.GRIDSPACING);\r\n const y_num = Math.ceil(this.mapHeight/this.GRIDSPACING);\r\n this.lngInterval = parseFloat(((this.maxLng - this.minLng)/x_num).toFixed(6));\r\n this.latInterval = parseFloat(((this.maxLat - this.minLat)/y_num).toFixed(6));\r\n }\r\n pointFilter(param){\r\n // allPoints为必填参数\r\n const {allPoints, reservedPoints=[]} = param;\r\n this.resetMapConfig(param);\r\n\r\n let hashPoints = {};\r\n for(let i=0,len=allPoints.length;i<len;i++){\r\n let p_lng = allPoints[i].longitude;\r\n let p_lat = allPoints[i].latitude;\r\n if(p_lng>this.maxLng || p_lng<this.minLng || p_lat>this.maxLat || p_lat<this.minLat){\r\n continue;\r\n }\r\n let x_index = parseInt(p_lng/this.lngInterval);\r\n let y_index = parseInt(p_lat/this.latInterval);\r\n let hashIndex = x_index + '-' + y_index;\r\n if(!hashPoints[hashIndex]){\r\n hashPoints[hashIndex] = allPoints[i];\r\n }\r\n }\r\n\r\n let filteredPoints = [...reservedPoints];\r\n let reservedIds = reservedPoints.map((item)=>item.id);\r\n for(let k in hashPoints){\r\n let the_point = hashPoints[k];\r\n if(reservedIds.indexOf(the_point.id)==-1){\r\n filteredPoints.push(the_point);\r\n }\r\n }\r\n \r\n return filteredPoints;\r\n }\r\n}\r\n\r\n\r\nexport default OptimizingPointMap;"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"optimizingPointMap.js","names":["OptimizingPointMap","props","map","mapLoaded","MPP","mapPointsProcessor","gridSpacing","state","filterPoints","zoomEnd","bind","moveEnd","resetPoints","resetDelay","timer","eType","t","clearTimeout","setTimeout","mcfg","getMapExtent","param","mapHeight","mapSize","height","mapWidth","width","minLat","southWest","lat","maxLat","northEast","minLng","lng","maxLng","allPoints","mapPoints","reservedPoints","setState","pointFilter","loadMapComplete","then","nextProps","_isEqual","obj","newProps","getMapInstance","p","React","Component","GRIDSPACING","lngInterval","latInterval","calGridInterval","x_num","Math","ceil","y_num","parseFloat","toFixed","resetMapConfig","hashPoints","i","len","length","p_lng","longitude","p_lat","latitude","x_index","parseInt","y_index","hashIndex","filteredPoints","reservedIds","item","id","k","the_point","indexOf","push"],"sources":["VtxMap/optimizingPointMap.js"],"sourcesContent":["import React from 'react';\r\nimport Map from './Map';\r\nimport _isEqual from 'lodash/isEqual';\r\n\r\nclass OptimizingPointMap extends React.Component{\r\n constructor(props){\r\n super(props);\r\n this.map = null;\r\n this.mapLoaded = false;\r\n this.MPP = new mapPointsProcessor(props.gridSpacing || 40);\r\n this.state= {\r\n filterPoints:[]\r\n }\r\n this.zoomEnd = this.zoomEnd.bind(this);\r\n this.moveEnd = this.moveEnd.bind(this);\r\n this.resetPoints = this.resetPoints.bind(this);\r\n\r\n this.resetDelay = {\r\n timer:null,\r\n eType:null\r\n }\r\n }\r\n \r\n resetPoints(props, eType){\r\n const t = this;\r\n // 延时优化,只处理最后一次操作\r\n if(t.resetDelay.timer){\r\n clearTimeout(t.resetDelay.timer);\r\n }\r\n t.resetDelay.eType = t.resetDelay.eType=='zoom'||eType=='zoom' ?'zoom':eType;\r\n t.resetDelay.timer = setTimeout(()=>{\r\n let mcfg = t.map.getMapExtent();\r\n const param = {\r\n mapHeight:mcfg.mapSize.height,\r\n mapWidth:mcfg.mapSize.width,\r\n minLat:mcfg.southWest.lat,\r\n maxLat:mcfg.northEast.lat,\r\n minLng:mcfg.southWest.lng,\r\n maxLng:mcfg.northEast.lng,\r\n eType:t.resetDelay.eType,\r\n allPoints:props.mapPoints,\r\n reservedPoints:props.reservedPoints\r\n }\r\n t.setState({\r\n filterPoints:t.MPP.pointFilter(param)\r\n });\r\n t.resetDelay.timer = null;\r\n t.resetDelay.eType = null;\r\n },200);\r\n \r\n }\r\n componentDidMount(){\r\n this.map.loadMapComplete.then(()=>{\r\n this.resetPoints(this.props);\r\n this.mapLoaded = true;\r\n })\r\n }\r\n UNSAFE_componentWillReceiveProps(nextProps){\r\n if(this.mapLoaded && (!_isEqual(this.props.reservedPoints, nextProps.reservedPoints) || !_isEqual(this.props.mapPoints, nextProps.mapPoints))){\r\n // 外部点数据改变,更新内部点数据\r\n this.resetPoints(nextProps);\r\n }\r\n }\r\n zoomEnd(obj){\r\n this.resetPoints(this.props,'zoom');\r\n if(typeof(this.props.zoomEnd) ===\"function\"){\r\n this.props.zoomEnd(obj);\r\n }\r\n }\r\n moveEnd(obj){\r\n this.resetPoints(this.props,'move');\r\n if(typeof(this.props.moveEnd) ===\"function\"){\r\n this.props.moveEnd(obj);\r\n }\r\n }\r\n render(){ \r\n // console.log('优化后剩余点数:'+this.state.filterPoints.length) \r\n const newProps = {\r\n ...this.props,\r\n zoomEnd:this.zoomEnd,\r\n moveEnd:this.moveEnd,\r\n mapPoints:this.state.filterPoints,\r\n getMapInstance:(p)=>{\r\n if(p){\r\n this.map = p;\r\n }\r\n if(typeof(this.props.getMapInstance) ===\"function\"){\r\n this.props.getMapInstance(p);\r\n }\r\n }\r\n }\r\n delete newProps.gridSpacing;\r\n delete newProps.reservedPoints;\r\n\r\n return (<Map {...newProps} />)\r\n }\r\n}\r\n\r\n\r\nclass mapPointsProcessor{\r\n constructor(gridSpacing){\r\n this.GRIDSPACING = gridSpacing || 40;\r\n this.mapHeight = null; //地图高度\r\n this.mapWidth = null; //地图宽度\r\n // 若地图大小不变,zoom不变,网格的经纬度间隔应该保持不变以保证前后两次网格位置保持一致\r\n this.lngInterval = null; //划分的网格经度间隔\r\n this.latInterval = null; //划分的网格纬度间隔\r\n this.maxLat = null,\r\n this.minLat = null,\r\n this.maxLng = null,\r\n this.minLng = null\r\n }\r\n resetMapConfig(param){\r\n // 若没传地图相关参数默认使用上次的地图参数\r\n const {mapHeight,mapWidth,maxLat,minLat,maxLng,minLng,eType} = param;\r\n this.maxLat = maxLat || this.maxLat;\r\n this.minLat = minLat || this.minLat;\r\n this.maxLng = maxLng || this.maxLng;\r\n this.minLng = minLng || this.minLng;\r\n // 当操作为zoom(改变最大最小经纬度)或地图宽高改变则重新计算网格\r\n if(eType=='zoom' || (mapHeight && mapHeight != this.mapHeight) || (mapWidth && mapWidth != this.mapWidth)){\r\n this.mapHeight = mapHeight || this.mapHeight;\r\n this.mapWidth = mapWidth || this.mapWidth;\r\n this.calGridInterval();\r\n }\r\n }\r\n calGridInterval(){\r\n const x_num = Math.ceil(this.mapWidth/this.GRIDSPACING);\r\n const y_num = Math.ceil(this.mapHeight/this.GRIDSPACING);\r\n this.lngInterval = parseFloat(((this.maxLng - this.minLng)/x_num).toFixed(6));\r\n this.latInterval = parseFloat(((this.maxLat - this.minLat)/y_num).toFixed(6));\r\n }\r\n pointFilter(param){\r\n // allPoints为必填参数\r\n const {allPoints, reservedPoints=[]} = param;\r\n this.resetMapConfig(param);\r\n\r\n let hashPoints = {};\r\n for(let i=0,len=allPoints.length;i<len;i++){\r\n let p_lng = allPoints[i].longitude;\r\n let p_lat = allPoints[i].latitude;\r\n if(p_lng>this.maxLng || p_lng<this.minLng || p_lat>this.maxLat || p_lat<this.minLat){\r\n continue;\r\n }\r\n let x_index = parseInt(p_lng/this.lngInterval);\r\n let y_index = parseInt(p_lat/this.latInterval);\r\n let hashIndex = x_index + '-' + y_index;\r\n if(!hashPoints[hashIndex]){\r\n hashPoints[hashIndex] = allPoints[i];\r\n }\r\n }\r\n\r\n let filteredPoints = [...reservedPoints];\r\n let reservedIds = reservedPoints.map((item)=>item.id);\r\n for(let k in hashPoints){\r\n let the_point = hashPoints[k];\r\n if(reservedIds.indexOf(the_point.id)==-1){\r\n filteredPoints.push(the_point);\r\n }\r\n }\r\n \r\n return filteredPoints;\r\n }\r\n}\r\n\r\n\r\nexport default OptimizingPointMap;"],"mappings":"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"}
|
package/lib/VtxMap/style/css.js
CHANGED
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
require("../AMap/AMap.css");
|
|
4
|
+
|
|
4
5
|
require("../BMap/Map.css");
|
|
6
|
+
|
|
5
7
|
require("../GMap/Map.css");
|
|
8
|
+
|
|
6
9
|
require("../OMap/Map.css");
|
|
10
|
+
|
|
7
11
|
require("../TMap/TMap.css");
|
|
12
|
+
|
|
8
13
|
require("../OlMap/Map.css");
|
|
14
|
+
|
|
9
15
|
require("../Map.css");
|
|
10
16
|
//# sourceMappingURL=css.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"css.js","names":[
|
|
1
|
+
{"version":3,"file":"css.js","names":[],"sources":["VtxMap/style/index.js"],"sourcesContent":["import '../AMap/AMap.less';\r\nimport '../BMap/Map.less';\r\nimport '../GMap/Map.less';\r\nimport '../OMap/Map.less';\r\nimport '../TMap/TMap.less';\r\nimport '../OlMap/Map.less';\r\n\r\nimport '../Map.less';"],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA"}
|
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
require("../AMap/AMap.less");
|
|
4
|
+
|
|
4
5
|
require("../BMap/Map.less");
|
|
6
|
+
|
|
5
7
|
require("../GMap/Map.less");
|
|
8
|
+
|
|
6
9
|
require("../OMap/Map.less");
|
|
10
|
+
|
|
7
11
|
require("../TMap/TMap.less");
|
|
12
|
+
|
|
8
13
|
require("../OlMap/Map.less");
|
|
14
|
+
|
|
9
15
|
require("../Map.less");
|
|
10
16
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["VtxMap/style/index.js"],"sourcesContent":["import '../AMap/AMap.less';\r\nimport '../BMap/Map.less';\r\nimport '../GMap/Map.less';\r\nimport '../OMap/Map.less';\r\nimport '../TMap/TMap.less';\r\nimport '../OlMap/Map.less';\r\n\r\nimport '../Map.less';"],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA"}
|
package/lib/VtxMap/zoomMap.js
CHANGED
|
@@ -1,35 +1,56 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports["default"] = void 0;
|
|
9
|
+
|
|
8
10
|
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
9
12
|
var _Map = _interopRequireDefault(require("./Map"));
|
|
13
|
+
|
|
10
14
|
var _immutable = _interopRequireDefault(require("immutable"));
|
|
15
|
+
|
|
11
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
12
|
-
|
|
13
|
-
function
|
|
14
|
-
|
|
17
|
+
|
|
18
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
19
|
+
|
|
20
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
21
|
+
|
|
22
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
23
|
+
|
|
15
24
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
16
|
-
|
|
25
|
+
|
|
26
|
+
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, descriptor.key, descriptor); } }
|
|
27
|
+
|
|
17
28
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
18
|
-
|
|
19
|
-
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); }
|
|
29
|
+
|
|
20
30
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
31
|
+
|
|
21
32
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
33
|
+
|
|
22
34
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
35
|
+
|
|
23
36
|
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
|
37
|
+
|
|
24
38
|
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
39
|
+
|
|
25
40
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
41
|
+
|
|
26
42
|
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
43
|
+
|
|
27
44
|
var zoomMap = /*#__PURE__*/function (_React$Component) {
|
|
28
45
|
_inherits(zoomMap, _React$Component);
|
|
46
|
+
|
|
29
47
|
var _super = _createSuper(zoomMap);
|
|
48
|
+
|
|
30
49
|
function zoomMap(props) {
|
|
31
50
|
var _this;
|
|
51
|
+
|
|
32
52
|
_classCallCheck(this, zoomMap);
|
|
53
|
+
|
|
33
54
|
_this = _super.call(this, props);
|
|
34
55
|
_this.map = null;
|
|
35
56
|
_this.state = {
|
|
@@ -37,6 +58,7 @@ var zoomMap = /*#__PURE__*/function (_React$Component) {
|
|
|
37
58
|
};
|
|
38
59
|
return _this;
|
|
39
60
|
}
|
|
61
|
+
|
|
40
62
|
_createClass(zoomMap, [{
|
|
41
63
|
key: "resetPoints",
|
|
42
64
|
value: function resetPoints() {
|
|
@@ -45,13 +67,13 @@ var zoomMap = /*#__PURE__*/function (_React$Component) {
|
|
|
45
67
|
// console.log('当前zoom等级',this.state.zoomLv);
|
|
46
68
|
console.log(this.map.getMapExtent());
|
|
47
69
|
zoomLv = zoomLv || this.map.getZoomLevel();
|
|
70
|
+
|
|
48
71
|
if (zoomLv) {
|
|
49
72
|
this.setState({
|
|
50
73
|
filterPoints: mapPoints.filter(function (item) {
|
|
51
74
|
return typeof item.zoomLevel == 'number' ? item.zoomLevel <= zoomLv : true;
|
|
52
75
|
})
|
|
53
|
-
}, function () {
|
|
54
|
-
// console.log(`zoom等级(${this.state.zoomLv})过滤后还有${this.state.filterPoints.length}个点`);
|
|
76
|
+
}, function () {// console.log(`zoom等级(${this.state.zoomLv})过滤后还有${this.state.filterPoints.length}个点`);
|
|
55
77
|
});
|
|
56
78
|
}
|
|
57
79
|
}
|
|
@@ -81,6 +103,7 @@ var zoomMap = /*#__PURE__*/function (_React$Component) {
|
|
|
81
103
|
// console.log(obj)
|
|
82
104
|
//zoom操作后,更新内部点数据
|
|
83
105
|
this.resetPoints(this.props.mapPoints);
|
|
106
|
+
|
|
84
107
|
if (typeof this.props.zoomEnd === "function") {
|
|
85
108
|
this.props.zoomEnd(obj);
|
|
86
109
|
}
|
|
@@ -89,6 +112,7 @@ var zoomMap = /*#__PURE__*/function (_React$Component) {
|
|
|
89
112
|
key: "render",
|
|
90
113
|
value: function render() {
|
|
91
114
|
var _this2 = this;
|
|
115
|
+
|
|
92
116
|
var newProps = _objectSpread(_objectSpread({}, this.props), {}, {
|
|
93
117
|
zoomEnd: this.zoomEnd.bind(this),
|
|
94
118
|
mapPoints: this.state.filterPoints,
|
|
@@ -97,18 +121,23 @@ var zoomMap = /*#__PURE__*/function (_React$Component) {
|
|
|
97
121
|
_this2.map = p;
|
|
98
122
|
}
|
|
99
123
|
}
|
|
100
|
-
});
|
|
101
|
-
|
|
124
|
+
}); // 屏蔽地图默认的setFitView的调整zoom功能,只会重新设置center
|
|
125
|
+
|
|
126
|
+
|
|
102
127
|
if (newProps.mapVisiblePoints) {
|
|
103
128
|
newProps.mapVisiblePoints = _objectSpread(_objectSpread({}, newProps.mapVisiblePoints), {}, {
|
|
104
129
|
type: 'center'
|
|
105
130
|
});
|
|
106
131
|
}
|
|
132
|
+
|
|
107
133
|
return /*#__PURE__*/_react["default"].createElement(_Map["default"], newProps);
|
|
108
134
|
}
|
|
109
135
|
}]);
|
|
136
|
+
|
|
110
137
|
return zoomMap;
|
|
111
138
|
}(_react["default"].Component);
|
|
112
|
-
|
|
139
|
+
|
|
140
|
+
var _default = zoomMap;
|
|
141
|
+
exports["default"] = _default;
|
|
113
142
|
module.exports = exports["default"];
|
|
114
143
|
//# sourceMappingURL=zoomMap.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zoomMap.js","names":["_react","_interopRequireDefault","require","_Map","_immutable","obj","__esModule","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","key","value","_toPropertyKey","configurable","writable","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","descriptor","_createClass","protoProps","staticProps","prototype","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","Number","_inherits","subClass","superClass","create","constructor","_setPrototypeOf","p","setPrototypeOf","bind","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","getPrototypeOf","zoomMap","_React$Component","_super","_this","map","state","filterPoints","resetPoints","mapPoints","zoomLv","console","log","getMapExtent","getZoomLevel","setState","item","zoomLevel","componentDidMount","UNSAFE_componentWillReceiveProps","nextProps","deepEqual","a","b","Immutable","is","fromJS","zoomEnd","render","_this2","newProps","ref","mapVisiblePoints","type","createElement","React","Component","_default","exports","module"],"sources":["VtxMap/zoomMap.js"],"sourcesContent":["import React from 'react';\r\nimport Map from './Map';\r\nimport Immutable from 'immutable';\r\n\r\nclass zoomMap extends React.Component{\r\n constructor(props){\r\n super(props);\r\n this.map = null;\r\n this.state= {\r\n filterPoints:[],\r\n }\r\n }\r\n \r\n resetPoints(mapPoints=[],zoomLv){\r\n // console.log('当前zoom等级',this.state.zoomLv);\r\n console.log(this.map.getMapExtent())\r\n zoomLv = zoomLv || this.map.getZoomLevel();\r\n if(zoomLv){\r\n this.setState({\r\n filterPoints: mapPoints.filter(item=>typeof(item.zoomLevel)=='number'?item.zoomLevel<=zoomLv:true)\r\n },()=>{\r\n // console.log(`zoom等级(${this.state.zoomLv})过滤后还有${this.state.filterPoints.length}个点`);\r\n });\r\n }\r\n }\r\n componentDidMount(){\r\n // console.log(this.map.getMapExtent()) \r\n // 地图加载完成取得当前zoom值,初始化内部点数据\r\n this.resetPoints(this.props.mapPoints);\r\n }\r\n UNSAFE_componentWillReceiveProps(nextProps){\r\n if(!this.deepEqual(this.props.mapPoints, nextProps.mapPoints)){\r\n // 外部点数据改变,更新内部点数据\r\n this.resetPoints(nextProps.mapPoints);\r\n }\r\n }\r\n deepEqual(a,b){\r\n return Immutable.is(Immutable.fromJS(a),Immutable.fromJS(b));\r\n }\r\n zoomEnd(obj){\r\n // console.log(obj)\r\n //zoom操作后,更新内部点数据\r\n this.resetPoints(this.props.mapPoints);\r\n \r\n if(typeof(this.props.zoomEnd) ===\"function\"){\r\n this.props.zoomEnd(obj);\r\n }\r\n }\r\n render(){ \r\n const newProps = {\r\n ...this.props,\r\n zoomEnd:this.zoomEnd.bind(this),\r\n mapPoints:this.state.filterPoints,\r\n ref:(p)=>{\r\n if(p){\r\n this.map = p;\r\n }\r\n }\r\n }\r\n // 屏蔽地图默认的setFitView的调整zoom功能,只会重新设置center\r\n if(newProps.mapVisiblePoints){\r\n newProps.mapVisiblePoints = {\r\n ...newProps.mapVisiblePoints,\r\n type:'center'\r\n }\r\n }\r\n\r\n return (<Map {...newProps} />)\r\n }\r\n}\r\n\r\nexport default zoomMap;"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"zoomMap.js","names":["zoomMap","props","map","state","filterPoints","mapPoints","zoomLv","console","log","getMapExtent","getZoomLevel","setState","filter","item","zoomLevel","resetPoints","nextProps","deepEqual","a","b","Immutable","is","fromJS","obj","zoomEnd","newProps","bind","ref","p","mapVisiblePoints","type","React","Component"],"sources":["VtxMap/zoomMap.js"],"sourcesContent":["import React from 'react';\r\nimport Map from './Map';\r\nimport Immutable from 'immutable';\r\n\r\nclass zoomMap extends React.Component{\r\n constructor(props){\r\n super(props);\r\n this.map = null;\r\n this.state= {\r\n filterPoints:[],\r\n }\r\n }\r\n \r\n resetPoints(mapPoints=[],zoomLv){\r\n // console.log('当前zoom等级',this.state.zoomLv);\r\n console.log(this.map.getMapExtent())\r\n zoomLv = zoomLv || this.map.getZoomLevel();\r\n if(zoomLv){\r\n this.setState({\r\n filterPoints: mapPoints.filter(item=>typeof(item.zoomLevel)=='number'?item.zoomLevel<=zoomLv:true)\r\n },()=>{\r\n // console.log(`zoom等级(${this.state.zoomLv})过滤后还有${this.state.filterPoints.length}个点`);\r\n });\r\n }\r\n }\r\n componentDidMount(){\r\n // console.log(this.map.getMapExtent()) \r\n // 地图加载完成取得当前zoom值,初始化内部点数据\r\n this.resetPoints(this.props.mapPoints);\r\n }\r\n UNSAFE_componentWillReceiveProps(nextProps){\r\n if(!this.deepEqual(this.props.mapPoints, nextProps.mapPoints)){\r\n // 外部点数据改变,更新内部点数据\r\n this.resetPoints(nextProps.mapPoints);\r\n }\r\n }\r\n deepEqual(a,b){\r\n return Immutable.is(Immutable.fromJS(a),Immutable.fromJS(b));\r\n }\r\n zoomEnd(obj){\r\n // console.log(obj)\r\n //zoom操作后,更新内部点数据\r\n this.resetPoints(this.props.mapPoints);\r\n \r\n if(typeof(this.props.zoomEnd) ===\"function\"){\r\n this.props.zoomEnd(obj);\r\n }\r\n }\r\n render(){ \r\n const newProps = {\r\n ...this.props,\r\n zoomEnd:this.zoomEnd.bind(this),\r\n mapPoints:this.state.filterPoints,\r\n ref:(p)=>{\r\n if(p){\r\n this.map = p;\r\n }\r\n }\r\n }\r\n // 屏蔽地图默认的setFitView的调整zoom功能,只会重新设置center\r\n if(newProps.mapVisiblePoints){\r\n newProps.mapVisiblePoints = {\r\n ...newProps.mapVisiblePoints,\r\n type:'center'\r\n }\r\n }\r\n\r\n return (<Map {...newProps} />)\r\n }\r\n}\r\n\r\nexport default zoomMap;"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEMA,O;;;;;EACF,iBAAYC,KAAZ,EAAkB;IAAA;;IAAA;;IACd,0BAAMA,KAAN;IACA,MAAKC,GAAL,GAAW,IAAX;IACA,MAAKC,KAAL,GAAY;MACRC,YAAY,EAAC;IADL,CAAZ;IAHc;EAMjB;;;;WAED,uBAAgC;MAAA,IAApBC,SAAoB,uEAAV,EAAU;MAAA,IAAPC,MAAO;MAC5B;MACAC,OAAO,CAACC,GAAR,CAAY,KAAKN,GAAL,CAASO,YAAT,EAAZ;MACAH,MAAM,GAAGA,MAAM,IAAI,KAAKJ,GAAL,CAASQ,YAAT,EAAnB;;MACA,IAAGJ,MAAH,EAAU;QACN,KAAKK,QAAL,CAAc;UACVP,YAAY,EAAEC,SAAS,CAACO,MAAV,CAAiB,UAAAC,IAAI;YAAA,OAAE,OAAOA,IAAI,CAACC,SAAZ,IAAwB,QAAxB,GAAiCD,IAAI,CAACC,SAAL,IAAgBR,MAAjD,GAAwD,IAA1D;UAAA,CAArB;QADJ,CAAd,EAEE,YAAI,CACF;QACH,CAJD;MAKH;IACJ;;;WACD,6BAAmB;MACf;MACA;MACA,KAAKS,WAAL,CAAiB,KAAKd,KAAL,CAAWI,SAA5B;IACH;;;WACD,0CAAiCW,SAAjC,EAA2C;MACvC,IAAG,CAAC,KAAKC,SAAL,CAAe,KAAKhB,KAAL,CAAWI,SAA1B,EAAqCW,SAAS,CAACX,SAA/C,CAAJ,EAA8D;QAC1D;QACA,KAAKU,WAAL,CAAiBC,SAAS,CAACX,SAA3B;MACH;IACJ;;;WACD,mBAAUa,CAAV,EAAYC,CAAZ,EAAc;MACV,OAAOC,qBAAA,CAAUC,EAAV,CAAaD,qBAAA,CAAUE,MAAV,CAAiBJ,CAAjB,CAAb,EAAiCE,qBAAA,CAAUE,MAAV,CAAiBH,CAAjB,CAAjC,CAAP;IACH;;;WACD,iBAAQI,GAAR,EAAY;MACR;MACA;MACA,KAAKR,WAAL,CAAiB,KAAKd,KAAL,CAAWI,SAA5B;;MAEA,IAAG,OAAO,KAAKJ,KAAL,CAAWuB,OAAlB,KAA8B,UAAjC,EAA4C;QACxC,KAAKvB,KAAL,CAAWuB,OAAX,CAAmBD,GAAnB;MACH;IACJ;;;WACD,kBAAQ;MAAA;;MACJ,IAAME,QAAQ,mCACP,KAAKxB,KADE;QAEVuB,OAAO,EAAC,KAAKA,OAAL,CAAaE,IAAb,CAAkB,IAAlB,CAFE;QAGVrB,SAAS,EAAC,KAAKF,KAAL,CAAWC,YAHX;QAIVuB,GAAG,EAAC,aAACC,CAAD,EAAK;UACL,IAAGA,CAAH,EAAK;YACD,MAAI,CAAC1B,GAAL,GAAW0B,CAAX;UACH;QACJ;MARS,EAAd,CADI,CAWJ;;;MACA,IAAGH,QAAQ,CAACI,gBAAZ,EAA6B;QACzBJ,QAAQ,CAACI,gBAAT,mCACOJ,QAAQ,CAACI,gBADhB;UAEIC,IAAI,EAAC;QAFT;MAIH;;MAED,oBAAQ,gCAAC,eAAD,EAASL,QAAT,CAAR;IACH;;;;EAhEiBM,iBAAA,CAAMC,S;;eAmEbhC,O"}
|