@antv/l7-map 2.17.10 → 2.17.12
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/es/camera.js +148 -90
- package/es/earthmap.js +65 -13
- package/es/geo/edge_insets.js +14 -4
- package/es/geo/lng_lat.js +13 -5
- package/es/geo/lng_lat_bounds.js +17 -4
- package/es/geo/mercator.js +10 -2
- package/es/geo/point.js +7 -0
- package/es/geo/simple.js +11 -6
- package/es/geo/transform.js +132 -127
- package/es/handler/blockable_map_event.js +12 -7
- package/es/handler/box_zoom.js +30 -10
- package/es/handler/click_zoom.js +5 -0
- package/es/handler/events/event.js +2 -0
- package/es/handler/events/map_mouse_event.js +12 -0
- package/es/handler/events/map_touch_event.js +12 -2
- package/es/handler/events/map_wheel_event.js +12 -1
- package/es/handler/events/render_event.js +13 -0
- package/es/handler/handler_inertia.js +34 -6
- package/es/handler/handler_manager.js +147 -55
- package/es/handler/handler_util.js +2 -1
- package/es/handler/keyboard.js +20 -1
- package/es/handler/map_event.js +9 -3
- package/es/handler/mouse/mouse_handler.js +24 -11
- package/es/handler/mouse/mousepan_handler.js +11 -1
- package/es/handler/mouse/mousepitch_hander.js +11 -1
- package/es/handler/mouse/mouserotate_hander.js +11 -1
- package/es/handler/mouse/util.js +3 -2
- package/es/handler/scroll_zoom.js +71 -43
- package/es/handler/shim/dblclick_zoom.js +9 -4
- package/es/handler/shim/drag_pan.js +11 -4
- package/es/handler/shim/drag_rotate.js +10 -4
- package/es/handler/shim/touch_zoom_rotate.js +16 -6
- package/es/handler/tap/single_tap_recognizer.js +31 -8
- package/es/handler/tap/tap_drag_zoom.js +15 -7
- package/es/handler/tap/tap_recognizer.js +11 -3
- package/es/handler/tap/tap_zoom.js +7 -1
- package/es/handler/touch/touch_pan.js +22 -4
- package/es/handler/touch/touch_pitch.js +27 -10
- package/es/handler/touch/touch_rotate.js +19 -8
- package/es/handler/touch/touch_zoom.js +18 -5
- package/es/handler/touch/two_touch.js +32 -19
- package/es/hash.js +31 -9
- package/es/map.js +78 -16
- package/es/util.js +26 -18
- package/es/utils/Aabb.js +31 -10
- package/es/utils/dom.js +58 -24
- package/es/utils/performance.js +7 -8
- package/es/utils/primitives.js +11 -13
- package/es/utils/task_queue.js +23 -6
- package/lib/camera.js +169 -91
- package/lib/earthmap.js +80 -12
- package/lib/geo/edge_insets.js +18 -3
- package/lib/geo/lng_lat.js +18 -5
- package/lib/geo/lng_lat_bounds.js +20 -4
- package/lib/geo/mercator.js +22 -1
- package/lib/geo/point.js +8 -0
- package/lib/geo/simple.js +24 -5
- package/lib/geo/transform.js +164 -127
- package/lib/handler/blockable_map_event.js +14 -6
- package/lib/handler/box_zoom.js +39 -8
- package/lib/handler/click_zoom.js +6 -0
- package/lib/handler/events/event.js +5 -0
- package/lib/handler/events/index.js +4 -0
- package/lib/handler/events/map_mouse_event.js +20 -2
- package/lib/handler/events/map_touch_event.js +21 -2
- package/lib/handler/events/map_wheel_event.js +16 -1
- package/lib/handler/events/render_event.js +19 -0
- package/lib/handler/handler_inertia.js +37 -5
- package/lib/handler/handler_manager.js +171 -56
- package/lib/handler/handler_util.js +3 -1
- package/lib/handler/keyboard.js +22 -1
- package/lib/handler/map_event.js +11 -2
- package/lib/handler/mouse/index.js +4 -0
- package/lib/handler/mouse/mouse_handler.js +27 -10
- package/lib/handler/mouse/mousepan_handler.js +18 -1
- package/lib/handler/mouse/mousepitch_hander.js +17 -1
- package/lib/handler/mouse/mouserotate_hander.js +17 -1
- package/lib/handler/mouse/util.js +6 -2
- package/lib/handler/scroll_zoom.js +77 -43
- package/lib/handler/shim/dblclick_zoom.js +10 -4
- package/lib/handler/shim/drag_pan.js +13 -4
- package/lib/handler/shim/drag_rotate.js +11 -4
- package/lib/handler/shim/touch_zoom_rotate.js +18 -6
- package/lib/handler/tap/single_tap_recognizer.js +33 -8
- package/lib/handler/tap/tap_drag_zoom.js +18 -6
- package/lib/handler/tap/tap_recognizer.js +17 -2
- package/lib/handler/tap/tap_zoom.js +9 -0
- package/lib/handler/touch/index.js +5 -0
- package/lib/handler/touch/touch_pan.js +25 -4
- package/lib/handler/touch/touch_pitch.js +32 -10
- package/lib/handler/touch/touch_rotate.js +25 -8
- package/lib/handler/touch/touch_zoom.js +24 -5
- package/lib/handler/touch/two_touch.js +35 -18
- package/lib/hash.js +35 -8
- package/lib/index.js +8 -0
- package/lib/map.js +95 -15
- package/lib/util.js +38 -16
- package/lib/utils/Aabb.js +34 -10
- package/lib/utils/dom.js +64 -22
- package/lib/utils/performance.js +9 -8
- package/lib/utils/primitives.js +16 -13
- package/lib/utils/task_queue.js +24 -6
- package/package.json +3 -3
|
@@ -1,19 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.default = void 0;
|
|
9
|
+
|
|
8
10
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
+
|
|
9
12
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
+
|
|
10
14
|
var _point = _interopRequireDefault(require("../geo/point"));
|
|
15
|
+
|
|
11
16
|
var _merge = _interopRequireDefault(require("lodash/merge"));
|
|
17
|
+
|
|
12
18
|
var _util = require("../util");
|
|
19
|
+
|
|
13
20
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
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); }
|
|
15
|
-
|
|
16
|
-
|
|
23
|
+
|
|
24
|
+
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; }
|
|
25
|
+
|
|
17
26
|
var defaultInertiaOptions = {
|
|
18
27
|
linearity: 0.3,
|
|
19
28
|
easing: (0, _util.bezier)(0, 0, 0.3, 1)
|
|
@@ -34,12 +43,14 @@ var defaultPitchInertiaOptions = (0, _merge.default)({
|
|
|
34
43
|
deceleration: 1000,
|
|
35
44
|
maxSpeed: 90
|
|
36
45
|
}, defaultInertiaOptions);
|
|
46
|
+
|
|
37
47
|
var HandlerInertia = /*#__PURE__*/function () {
|
|
38
48
|
function HandlerInertia(map) {
|
|
39
49
|
(0, _classCallCheck2.default)(this, HandlerInertia);
|
|
40
50
|
this.map = map;
|
|
41
51
|
this.clear();
|
|
42
52
|
}
|
|
53
|
+
|
|
43
54
|
(0, _createClass2.default)(HandlerInertia, [{
|
|
44
55
|
key: "clear",
|
|
45
56
|
value: function clear() {
|
|
@@ -69,9 +80,11 @@ var HandlerInertia = /*#__PURE__*/function () {
|
|
|
69
80
|
key: "onMoveEnd",
|
|
70
81
|
value: function onMoveEnd(panInertiaOptions) {
|
|
71
82
|
this.drainInertiaBuffer();
|
|
83
|
+
|
|
72
84
|
if (this.inertiaBuffer.length < 2) {
|
|
73
85
|
return;
|
|
74
86
|
}
|
|
87
|
+
|
|
75
88
|
var deltas = {
|
|
76
89
|
zoom: 0,
|
|
77
90
|
bearing: 0,
|
|
@@ -80,20 +93,25 @@ var HandlerInertia = /*#__PURE__*/function () {
|
|
|
80
93
|
pinchAround: undefined,
|
|
81
94
|
around: undefined
|
|
82
95
|
};
|
|
96
|
+
|
|
83
97
|
var _iterator = _createForOfIteratorHelper(this.inertiaBuffer),
|
|
84
|
-
|
|
98
|
+
_step;
|
|
99
|
+
|
|
85
100
|
try {
|
|
86
101
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
87
102
|
var settings = _step.value.settings;
|
|
88
103
|
deltas.zoom += settings.zoomDelta || 0;
|
|
89
104
|
deltas.bearing += settings.bearingDelta || 0;
|
|
90
105
|
deltas.pitch += settings.pitchDelta || 0;
|
|
106
|
+
|
|
91
107
|
if (settings.panDelta) {
|
|
92
108
|
deltas.pan._add(settings.panDelta);
|
|
93
109
|
}
|
|
110
|
+
|
|
94
111
|
if (settings.around) {
|
|
95
112
|
deltas.around = settings.around;
|
|
96
113
|
}
|
|
114
|
+
|
|
97
115
|
if (settings.pinchAround) {
|
|
98
116
|
deltas.pinchAround = settings.pinchAround;
|
|
99
117
|
}
|
|
@@ -103,34 +121,44 @@ var HandlerInertia = /*#__PURE__*/function () {
|
|
|
103
121
|
} finally {
|
|
104
122
|
_iterator.f();
|
|
105
123
|
}
|
|
124
|
+
|
|
106
125
|
var lastEntry = this.inertiaBuffer[this.inertiaBuffer.length - 1];
|
|
107
126
|
var duration = lastEntry.time - this.inertiaBuffer[0].time;
|
|
108
127
|
var easeOptions = {};
|
|
128
|
+
|
|
109
129
|
if (deltas.pan.mag()) {
|
|
110
130
|
var result = calculateEasing(deltas.pan.mag(), duration, (0, _merge.default)({}, defaultPanInertiaOptions, panInertiaOptions || {}));
|
|
111
131
|
easeOptions.offset = deltas.pan.mult(result.amount / deltas.pan.mag());
|
|
112
132
|
easeOptions.center = this.map.transform.center;
|
|
113
133
|
extendDuration(easeOptions, result);
|
|
114
134
|
}
|
|
135
|
+
|
|
115
136
|
if (deltas.zoom) {
|
|
116
137
|
var _result = calculateEasing(deltas.zoom, duration, defaultZoomInertiaOptions);
|
|
138
|
+
|
|
117
139
|
easeOptions.zoom = this.map.transform.zoom + _result.amount;
|
|
118
140
|
extendDuration(easeOptions, _result);
|
|
119
141
|
}
|
|
142
|
+
|
|
120
143
|
if (deltas.bearing) {
|
|
121
144
|
var _result2 = calculateEasing(deltas.bearing, duration, defaultBearingInertiaOptions);
|
|
145
|
+
|
|
122
146
|
easeOptions.bearing = this.map.transform.bearing + (0, _util.clamp)(_result2.amount, -179, 179);
|
|
123
147
|
extendDuration(easeOptions, _result2);
|
|
124
148
|
}
|
|
149
|
+
|
|
125
150
|
if (deltas.pitch) {
|
|
126
151
|
var _result3 = calculateEasing(deltas.pitch, duration, defaultPitchInertiaOptions);
|
|
152
|
+
|
|
127
153
|
easeOptions.pitch = this.map.transform.pitch + _result3.amount;
|
|
128
154
|
extendDuration(easeOptions, _result3);
|
|
129
155
|
}
|
|
156
|
+
|
|
130
157
|
if (easeOptions.zoom || easeOptions.bearing) {
|
|
131
158
|
var last = deltas.pinchAround === undefined ? deltas.around : deltas.pinchAround;
|
|
132
159
|
easeOptions.around = last ? this.map.unproject(last) : this.map.getCenter();
|
|
133
160
|
}
|
|
161
|
+
|
|
134
162
|
this.clear();
|
|
135
163
|
return (0, _merge.default)(easeOptions, {
|
|
136
164
|
noMoveStart: true
|
|
@@ -140,17 +168,21 @@ var HandlerInertia = /*#__PURE__*/function () {
|
|
|
140
168
|
return HandlerInertia;
|
|
141
169
|
}(); // Unfortunately zoom, bearing, etc can't have different durations and easings so
|
|
142
170
|
// we need to choose one. We use the longest duration and it's corresponding easing.
|
|
171
|
+
|
|
172
|
+
|
|
143
173
|
exports.default = HandlerInertia;
|
|
174
|
+
|
|
144
175
|
function extendDuration(easeOptions, result) {
|
|
145
176
|
if (!easeOptions.duration || easeOptions.duration < result.duration) {
|
|
146
177
|
easeOptions.duration = result.duration;
|
|
147
178
|
easeOptions.easing = result.easing;
|
|
148
179
|
}
|
|
149
180
|
}
|
|
181
|
+
|
|
150
182
|
function calculateEasing(amount, inertiaDuration, inertiaOptions) {
|
|
151
183
|
var maxSpeed = inertiaOptions.maxSpeed,
|
|
152
|
-
|
|
153
|
-
|
|
184
|
+
linearity = inertiaOptions.linearity,
|
|
185
|
+
deceleration = inertiaOptions.deceleration;
|
|
154
186
|
var speed = (0, _util.clamp)(amount * linearity / (inertiaDuration / 1000), -maxSpeed, maxSpeed);
|
|
155
187
|
var duration = Math.abs(speed) / (deceleration * linearity);
|
|
156
188
|
return {
|