@antv/l7-map 2.9.21 → 2.9.23
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 +115 -85
- package/es/css/l7.css +98 -0
- package/es/earthmap.js +27 -43
- package/es/geo/edge_insets.js +44 -14
- package/es/geo/lng_lat.js +15 -11
- package/es/geo/lng_lat_bounds.js +6 -10
- package/es/geo/mercator.js +24 -12
- package/es/geo/point.js +2 -8
- package/es/geo/simple.js +24 -12
- package/es/geo/transform.js +421 -120
- package/es/handler/IHandler.js +1 -2
- package/es/handler/blockable_map_event.js +13 -14
- package/es/handler/box_zoom.js +43 -27
- package/es/handler/click_zoom.js +3 -8
- package/es/handler/events/event.js +3 -6
- package/es/handler/events/index.js +4 -5
- package/es/handler/events/map_mouse_event.js +30 -20
- package/es/handler/events/map_touch_event.js +55 -25
- package/es/handler/events/map_wheel_event.js +24 -15
- package/es/handler/events/render_event.js +3 -6
- package/es/handler/handler_inertia.js +10 -12
- package/es/handler/handler_manager.js +75 -72
- package/es/handler/handler_util.js +2 -2
- package/es/handler/keyboard.js +20 -15
- package/es/handler/map_event.js +23 -12
- package/es/handler/mouse/index.js +4 -5
- package/es/handler/mouse/mouse_handler.js +17 -21
- package/es/handler/mouse/mousepan_handler.js +5 -5
- package/es/handler/mouse/mousepitch_hander.js +7 -5
- package/es/handler/mouse/mouserotate_hander.js +7 -5
- package/es/handler/mouse/util.js +3 -3
- package/es/handler/scroll_zoom.js +103 -67
- package/es/handler/shim/dblclick_zoom.js +35 -8
- package/es/handler/shim/drag_pan.js +48 -12
- package/es/handler/shim/drag_rotate.js +39 -10
- package/es/handler/shim/touch_zoom_rotate.js +59 -16
- package/es/handler/tap/single_tap_recognizer.js +7 -17
- package/es/handler/tap/tap_drag_zoom.js +5 -18
- package/es/handler/tap/tap_recognizer.js +4 -15
- package/es/handler/tap/tap_zoom.js +4 -13
- package/es/handler/touch/index.js +5 -6
- package/es/handler/touch/touch_pan.js +9 -20
- package/es/handler/touch/touch_pitch.js +11 -23
- package/es/handler/touch/touch_rotate.js +15 -18
- package/es/handler/touch/touch_zoom.js +5 -19
- package/es/handler/touch/two_touch.js +14 -21
- package/es/hash.js +28 -16
- package/es/index.js +2 -3
- package/es/interface.js +1 -2
- package/es/map.js +26 -47
- package/es/util.js +15 -6
- package/es/utils/Aabb.js +11 -12
- package/es/utils/dom.js +30 -11
- package/es/utils/performance.js +10 -6
- package/es/utils/primitives.js +11 -10
- package/es/utils/task_queue.js +6 -13
- package/lib/camera.js +508 -721
- package/lib/css/l7.css +98 -0
- package/lib/earthmap.js +222 -392
- package/lib/geo/edge_insets.js +64 -83
- package/lib/geo/lng_lat.js +65 -81
- package/lib/geo/lng_lat_bounds.js +124 -165
- package/lib/geo/mercator.js +62 -78
- package/lib/geo/point.js +171 -239
- package/lib/geo/simple.js +61 -80
- package/lib/geo/transform.js +470 -653
- package/lib/handler/IHandler.js +17 -2
- package/lib/handler/blockable_map_event.js +63 -83
- package/lib/handler/box_zoom.js +123 -176
- package/lib/handler/click_zoom.js +56 -68
- package/lib/handler/events/event.js +35 -23
- package/lib/handler/events/index.js +35 -29
- package/lib/handler/events/map_mouse_event.js +42 -72
- package/lib/handler/events/map_touch_event.js +45 -80
- package/lib/handler/events/map_wheel_event.js +34 -58
- package/lib/handler/events/render_event.js +31 -52
- package/lib/handler/handler_inertia.js +113 -160
- package/lib/handler/handler_manager.js +379 -620
- package/lib/handler/handler_util.js +28 -10
- package/lib/handler/keyboard.js +114 -146
- package/lib/handler/map_event.js +84 -120
- package/lib/handler/mouse/index.js +35 -29
- package/lib/handler/mouse/mouse_handler.js +90 -123
- package/lib/handler/mouse/mousepan_handler.js +46 -65
- package/lib/handler/mouse/mousepitch_hander.js +44 -63
- package/lib/handler/mouse/mouserotate_hander.js +44 -63
- package/lib/handler/mouse/util.js +38 -20
- package/lib/handler/scroll_zoom.js +175 -258
- package/lib/handler/shim/dblclick_zoom.js +42 -48
- package/lib/handler/shim/drag_pan.js +48 -59
- package/lib/handler/shim/drag_rotate.js +43 -51
- package/lib/handler/shim/touch_zoom_rotate.js +58 -78
- package/lib/handler/tap/single_tap_recognizer.js +84 -117
- package/lib/handler/tap/tap_drag_zoom.js +92 -115
- package/lib/handler/tap/tap_recognizer.js +60 -78
- package/lib/handler/tap/tap_zoom.js +88 -119
- package/lib/handler/touch/index.js +38 -37
- package/lib/handler/touch/touch_pan.js +98 -132
- package/lib/handler/touch/touch_pitch.js +73 -117
- package/lib/handler/touch/touch_rotate.js +58 -94
- package/lib/handler/touch/touch_zoom.js +49 -84
- package/lib/handler/touch/two_touch.js +88 -128
- package/lib/hash.js +100 -133
- package/lib/index.js +19 -31
- package/lib/interface.js +17 -2
- package/lib/map.js +238 -420
- package/lib/util.js +67 -78
- package/lib/utils/Aabb.js +80 -132
- package/lib/utils/dom.js +84 -141
- package/lib/utils/performance.js +54 -42
- package/lib/utils/primitives.js +59 -51
- package/lib/utils/task_queue.js +61 -108
- package/package.json +11 -8
- package/es/camera.js.map +0 -1
- package/es/earthmap.js.map +0 -1
- package/es/geo/edge_insets.js.map +0 -1
- package/es/geo/lng_lat.js.map +0 -1
- package/es/geo/lng_lat_bounds.js.map +0 -1
- package/es/geo/mercator.js.map +0 -1
- package/es/geo/point.js.map +0 -1
- package/es/geo/simple.js.map +0 -1
- package/es/geo/transform.js.map +0 -1
- package/es/handler/IHandler.js.map +0 -1
- package/es/handler/blockable_map_event.js.map +0 -1
- package/es/handler/box_zoom.js.map +0 -1
- package/es/handler/click_zoom.js.map +0 -1
- package/es/handler/events/event.js.map +0 -1
- package/es/handler/events/index.js.map +0 -1
- package/es/handler/events/map_mouse_event.js.map +0 -1
- package/es/handler/events/map_touch_event.js.map +0 -1
- package/es/handler/events/map_wheel_event.js.map +0 -1
- package/es/handler/events/render_event.js.map +0 -1
- package/es/handler/handler_inertia.js.map +0 -1
- package/es/handler/handler_manager.js.map +0 -1
- package/es/handler/handler_util.js.map +0 -1
- package/es/handler/keyboard.js.map +0 -1
- package/es/handler/map_event.js.map +0 -1
- package/es/handler/mouse/index.js.map +0 -1
- package/es/handler/mouse/mouse_handler.js.map +0 -1
- package/es/handler/mouse/mousepan_handler.js.map +0 -1
- package/es/handler/mouse/mousepitch_hander.js.map +0 -1
- package/es/handler/mouse/mouserotate_hander.js.map +0 -1
- package/es/handler/mouse/util.js.map +0 -1
- package/es/handler/scroll_zoom.js.map +0 -1
- package/es/handler/shim/dblclick_zoom.js.map +0 -1
- package/es/handler/shim/drag_pan.js.map +0 -1
- package/es/handler/shim/drag_rotate.js.map +0 -1
- package/es/handler/shim/touch_zoom_rotate.js.map +0 -1
- package/es/handler/tap/single_tap_recognizer.js.map +0 -1
- package/es/handler/tap/tap_drag_zoom.js.map +0 -1
- package/es/handler/tap/tap_recognizer.js.map +0 -1
- package/es/handler/tap/tap_zoom.js.map +0 -1
- package/es/handler/touch/index.js.map +0 -1
- package/es/handler/touch/touch_pan.js.map +0 -1
- package/es/handler/touch/touch_pitch.js.map +0 -1
- package/es/handler/touch/touch_rotate.js.map +0 -1
- package/es/handler/touch/touch_zoom.js.map +0 -1
- package/es/handler/touch/two_touch.js.map +0 -1
- package/es/hash.js.map +0 -1
- package/es/index.js.map +0 -1
- package/es/interface.js.map +0 -1
- package/es/map.js.map +0 -1
- package/es/util.js.map +0 -1
- package/es/utils/Aabb.js.map +0 -1
- package/es/utils/dom.js.map +0 -1
- package/es/utils/performance.js.map +0 -1
- package/es/utils/primitives.js.map +0 -1
- package/es/utils/task_queue.js.map +0 -1
- package/lib/camera.js.map +0 -1
- package/lib/earthmap.js.map +0 -1
- package/lib/geo/edge_insets.js.map +0 -1
- package/lib/geo/lng_lat.js.map +0 -1
- package/lib/geo/lng_lat_bounds.js.map +0 -1
- package/lib/geo/mercator.js.map +0 -1
- package/lib/geo/point.js.map +0 -1
- package/lib/geo/simple.js.map +0 -1
- package/lib/geo/transform.js.map +0 -1
- package/lib/handler/IHandler.js.map +0 -1
- package/lib/handler/blockable_map_event.js.map +0 -1
- package/lib/handler/box_zoom.js.map +0 -1
- package/lib/handler/click_zoom.js.map +0 -1
- package/lib/handler/events/event.js.map +0 -1
- package/lib/handler/events/index.js.map +0 -1
- package/lib/handler/events/map_mouse_event.js.map +0 -1
- package/lib/handler/events/map_touch_event.js.map +0 -1
- package/lib/handler/events/map_wheel_event.js.map +0 -1
- package/lib/handler/events/render_event.js.map +0 -1
- package/lib/handler/handler_inertia.js.map +0 -1
- package/lib/handler/handler_manager.js.map +0 -1
- package/lib/handler/handler_util.js.map +0 -1
- package/lib/handler/keyboard.js.map +0 -1
- package/lib/handler/map_event.js.map +0 -1
- package/lib/handler/mouse/index.js.map +0 -1
- package/lib/handler/mouse/mouse_handler.js.map +0 -1
- package/lib/handler/mouse/mousepan_handler.js.map +0 -1
- package/lib/handler/mouse/mousepitch_hander.js.map +0 -1
- package/lib/handler/mouse/mouserotate_hander.js.map +0 -1
- package/lib/handler/mouse/util.js.map +0 -1
- package/lib/handler/scroll_zoom.js.map +0 -1
- package/lib/handler/shim/dblclick_zoom.js.map +0 -1
- package/lib/handler/shim/drag_pan.js.map +0 -1
- package/lib/handler/shim/drag_rotate.js.map +0 -1
- package/lib/handler/shim/touch_zoom_rotate.js.map +0 -1
- package/lib/handler/tap/single_tap_recognizer.js.map +0 -1
- package/lib/handler/tap/tap_drag_zoom.js.map +0 -1
- package/lib/handler/tap/tap_recognizer.js.map +0 -1
- package/lib/handler/tap/tap_zoom.js.map +0 -1
- package/lib/handler/touch/index.js.map +0 -1
- package/lib/handler/touch/touch_pan.js.map +0 -1
- package/lib/handler/touch/touch_pitch.js.map +0 -1
- package/lib/handler/touch/touch_rotate.js.map +0 -1
- package/lib/handler/touch/touch_zoom.js.map +0 -1
- package/lib/handler/touch/two_touch.js.map +0 -1
- package/lib/hash.js.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/interface.js.map +0 -1
- package/lib/map.js.map +0 -1
- package/lib/util.js.map +0 -1
- package/lib/utils/Aabb.js.map +0 -1
- package/lib/utils/dom.js.map +0 -1
- package/lib/utils/performance.js.map +0 -1
- package/lib/utils/primitives.js.map +0 -1
- package/lib/utils/task_queue.js.map +0 -1
package/lib/utils/dom.js
CHANGED
|
@@ -1,216 +1,159 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
|
|
20
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
4
21
|
|
|
5
|
-
|
|
6
|
-
|
|
22
|
+
// src/utils/dom.ts
|
|
23
|
+
var dom_exports = {};
|
|
24
|
+
__export(dom_exports, {
|
|
25
|
+
default: () => dom_default
|
|
7
26
|
});
|
|
8
|
-
exports
|
|
9
|
-
|
|
10
|
-
var
|
|
11
|
-
|
|
12
|
-
var _point = _interopRequireDefault(require("../geo/point"));
|
|
13
|
-
|
|
14
|
-
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; } } }; }
|
|
15
|
-
|
|
16
|
-
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); }
|
|
17
|
-
|
|
18
|
-
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; }
|
|
19
|
-
|
|
27
|
+
module.exports = __toCommonJS(dom_exports);
|
|
28
|
+
var import_l7_utils = require("@antv/l7-utils");
|
|
29
|
+
var import_point = __toESM(require("../geo/point"));
|
|
20
30
|
var DOM = {};
|
|
21
|
-
var
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
var el = _l7Utils.$window.document.createElement(tagName);
|
|
26
|
-
|
|
27
|
-
if (className !== undefined) {
|
|
31
|
+
var dom_default = DOM;
|
|
32
|
+
DOM.create = (tagName, className, container) => {
|
|
33
|
+
const el = import_l7_utils.$window.document.createElement(tagName);
|
|
34
|
+
if (className !== void 0) {
|
|
28
35
|
el.className = className;
|
|
29
36
|
}
|
|
30
|
-
|
|
31
37
|
if (container) {
|
|
32
38
|
container.appendChild(el);
|
|
33
39
|
}
|
|
34
|
-
|
|
35
40
|
return el;
|
|
36
41
|
};
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
var el = _l7Utils.$window.document.createElementNS(namespaceURI, tagName);
|
|
40
|
-
|
|
42
|
+
DOM.createNS = (namespaceURI, tagName) => {
|
|
43
|
+
const el = import_l7_utils.$window.document.createElementNS(namespaceURI, tagName);
|
|
41
44
|
return el;
|
|
42
45
|
};
|
|
43
|
-
|
|
44
|
-
var docStyle = _l7Utils.$window.document && _l7Utils.$window.document.documentElement.style;
|
|
45
|
-
|
|
46
|
+
var docStyle = import_l7_utils.$window.document && import_l7_utils.$window.document.documentElement.style;
|
|
46
47
|
function testProp(props) {
|
|
47
48
|
if (!docStyle) {
|
|
48
49
|
return props[0];
|
|
49
50
|
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
try {
|
|
55
|
-
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
56
|
-
var i = _step.value;
|
|
57
|
-
|
|
58
|
-
if (i in docStyle) {
|
|
59
|
-
return i;
|
|
60
|
-
}
|
|
51
|
+
for (const i of props) {
|
|
52
|
+
if (i in docStyle) {
|
|
53
|
+
return i;
|
|
61
54
|
}
|
|
62
|
-
} catch (err) {
|
|
63
|
-
_iterator.e(err);
|
|
64
|
-
} finally {
|
|
65
|
-
_iterator.f();
|
|
66
55
|
}
|
|
67
|
-
|
|
68
56
|
return props[0];
|
|
69
57
|
}
|
|
70
|
-
|
|
71
|
-
|
|
58
|
+
var selectProp = testProp([
|
|
59
|
+
"userSelect",
|
|
60
|
+
"MozUserSelect",
|
|
61
|
+
"WebkitUserSelect",
|
|
62
|
+
"msUserSelect"
|
|
63
|
+
]);
|
|
72
64
|
var userSelect;
|
|
73
|
-
|
|
74
|
-
DOM.disableDrag = function () {
|
|
65
|
+
DOM.disableDrag = () => {
|
|
75
66
|
if (docStyle && selectProp) {
|
|
76
67
|
userSelect = docStyle[selectProp];
|
|
77
|
-
docStyle[selectProp] =
|
|
68
|
+
docStyle[selectProp] = "none";
|
|
78
69
|
}
|
|
79
70
|
};
|
|
80
|
-
|
|
81
|
-
DOM.enableDrag = function () {
|
|
71
|
+
DOM.enableDrag = () => {
|
|
82
72
|
if (docStyle && selectProp) {
|
|
83
73
|
docStyle[selectProp] = userSelect;
|
|
84
74
|
}
|
|
85
75
|
};
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
DOM.setTransform = function (el, value) {
|
|
76
|
+
var transformProp = testProp(["transform", "WebkitTransform"]);
|
|
77
|
+
DOM.setTransform = (el, value) => {
|
|
90
78
|
el.style[transformProp] = value;
|
|
91
79
|
};
|
|
92
|
-
|
|
93
80
|
var passiveSupported = false;
|
|
94
|
-
|
|
95
81
|
try {
|
|
96
|
-
|
|
97
|
-
get
|
|
82
|
+
const options = Object.defineProperty({}, "passive", {
|
|
83
|
+
get() {
|
|
98
84
|
passiveSupported = true;
|
|
99
85
|
}
|
|
100
86
|
});
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
_l7Utils.$window.removeEventListener('test', options, options);
|
|
87
|
+
import_l7_utils.$window.addEventListener("test", options, options);
|
|
88
|
+
import_l7_utils.$window.removeEventListener("test", options, options);
|
|
105
89
|
} catch (err) {
|
|
106
90
|
passiveSupported = false;
|
|
107
91
|
}
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
111
|
-
|
|
112
|
-
if ('passive' in options && passiveSupported) {
|
|
92
|
+
DOM.addEventListener = (target, type, callback, options = {}) => {
|
|
93
|
+
if ("passive" in options && passiveSupported) {
|
|
113
94
|
target.addEventListener(type, callback, options);
|
|
114
95
|
} else {
|
|
115
96
|
target.addEventListener(type, callback, options.capture);
|
|
116
97
|
}
|
|
117
98
|
};
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
121
|
-
|
|
122
|
-
if ('passive' in options && passiveSupported) {
|
|
99
|
+
DOM.removeEventListener = (target, type, callback, options = {}) => {
|
|
100
|
+
if ("passive" in options && passiveSupported) {
|
|
123
101
|
target.removeEventListener(type, callback, options);
|
|
124
102
|
} else {
|
|
125
103
|
target.removeEventListener(type, callback, options.capture);
|
|
126
104
|
}
|
|
127
105
|
};
|
|
128
|
-
|
|
129
|
-
var suppressClick = function suppressClick(e) {
|
|
106
|
+
var suppressClick = (e) => {
|
|
130
107
|
e.preventDefault();
|
|
131
108
|
e.stopPropagation();
|
|
132
|
-
|
|
133
|
-
_l7Utils.$window.removeEventListener('click', suppressClick, true);
|
|
109
|
+
import_l7_utils.$window.removeEventListener("click", suppressClick, true);
|
|
134
110
|
};
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
if (_l7Utils.isMini) {
|
|
111
|
+
DOM.suppressClick = () => {
|
|
112
|
+
if (import_l7_utils.isMini) {
|
|
138
113
|
return;
|
|
139
114
|
}
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
setTimeout(function () {
|
|
144
|
-
_l7Utils.$window.removeEventListener('click', suppressClick, true);
|
|
115
|
+
import_l7_utils.$window.addEventListener("click", suppressClick, true);
|
|
116
|
+
setTimeout(() => {
|
|
117
|
+
import_l7_utils.$window.removeEventListener("click", suppressClick, true);
|
|
145
118
|
}, 0);
|
|
146
119
|
};
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
return new _point.default(e.clientX - rect.left - el.clientLeft, e.clientY - rect.top - el.clientTop);
|
|
120
|
+
DOM.mousePos = (el, e) => {
|
|
121
|
+
if (!import_l7_utils.isMini) {
|
|
122
|
+
const rect = el.getBoundingClientRect();
|
|
123
|
+
return new import_point.default(e.clientX - rect.left - el.clientLeft, e.clientY - rect.top - el.clientTop);
|
|
152
124
|
} else {
|
|
153
|
-
return new
|
|
125
|
+
return new import_point.default(e.clientX - el.left - 0, e.clientY - el.top - 0);
|
|
154
126
|
}
|
|
155
127
|
};
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
var _iterator2 = _createForOfIteratorHelper(touches),
|
|
163
|
-
_step2;
|
|
164
|
-
|
|
165
|
-
try {
|
|
166
|
-
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
167
|
-
var touche = _step2.value;
|
|
168
|
-
points.push(new _point.default(touche.clientX - rect.left - el.clientLeft, touche.clientY - rect.top - el.clientTop));
|
|
169
|
-
}
|
|
170
|
-
} catch (err) {
|
|
171
|
-
_iterator2.e(err);
|
|
172
|
-
} finally {
|
|
173
|
-
_iterator2.f();
|
|
128
|
+
DOM.touchPos = (el, touches) => {
|
|
129
|
+
if (!import_l7_utils.isMini) {
|
|
130
|
+
const rect = el.getBoundingClientRect();
|
|
131
|
+
const points = [];
|
|
132
|
+
for (const touche of touches) {
|
|
133
|
+
points.push(new import_point.default(touche.clientX - rect.left - el.clientLeft, touche.clientY - rect.top - el.clientTop));
|
|
174
134
|
}
|
|
175
|
-
|
|
176
135
|
return points;
|
|
177
136
|
} else {
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
_step3;
|
|
182
|
-
|
|
183
|
-
try {
|
|
184
|
-
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
185
|
-
var _touche = _step3.value;
|
|
186
|
-
|
|
187
|
-
_points.push(new _point.default(_touche.clientX - el.left, _touche.clientY - el.top));
|
|
188
|
-
}
|
|
189
|
-
} catch (err) {
|
|
190
|
-
_iterator3.e(err);
|
|
191
|
-
} finally {
|
|
192
|
-
_iterator3.f();
|
|
137
|
+
const points = [];
|
|
138
|
+
for (const touche of touches) {
|
|
139
|
+
points.push(new import_point.default(touche.clientX - el.left, touche.clientY - el.top));
|
|
193
140
|
}
|
|
194
|
-
|
|
195
|
-
return _points;
|
|
141
|
+
return points;
|
|
196
142
|
}
|
|
197
143
|
};
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
if (!_l7Utils.isMini) {
|
|
144
|
+
DOM.mouseButton = (e) => {
|
|
145
|
+
if (!import_l7_utils.isMini) {
|
|
201
146
|
return e.button;
|
|
202
147
|
}
|
|
203
|
-
|
|
204
|
-
if (typeof _l7Utils.$window.InstallTrigger !== 'undefined' && e.button === 2 && e.ctrlKey && _l7Utils.$window.navigator.platform.toUpperCase().indexOf('MAC') >= 0) {
|
|
148
|
+
if (typeof import_l7_utils.$window.InstallTrigger !== "undefined" && e.button === 2 && e.ctrlKey && import_l7_utils.$window.navigator.platform.toUpperCase().indexOf("MAC") >= 0) {
|
|
205
149
|
return 0;
|
|
206
150
|
}
|
|
207
|
-
|
|
208
151
|
return e.button;
|
|
209
152
|
};
|
|
210
|
-
|
|
211
|
-
DOM.remove = function (node) {
|
|
153
|
+
DOM.remove = (node) => {
|
|
212
154
|
if (node.parentNode) {
|
|
213
155
|
node.parentNode.removeChild(node);
|
|
214
156
|
}
|
|
215
157
|
};
|
|
216
|
-
|
|
158
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
159
|
+
0 && (module.exports = {});
|
package/lib/utils/performance.js
CHANGED
|
@@ -1,68 +1,80 @@
|
|
|
1
|
-
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
2
18
|
|
|
3
|
-
|
|
4
|
-
|
|
19
|
+
// src/utils/performance.ts
|
|
20
|
+
var performance_exports = {};
|
|
21
|
+
__export(performance_exports, {
|
|
22
|
+
PerformanceMarkers: () => PerformanceMarkers,
|
|
23
|
+
PerformanceUtils: () => PerformanceUtils
|
|
5
24
|
});
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
var _l7Utils = require("@antv/l7-utils");
|
|
9
|
-
|
|
25
|
+
module.exports = __toCommonJS(performance_exports);
|
|
26
|
+
var import_l7_utils = require("@antv/l7-utils");
|
|
10
27
|
var lastFrameTime = null;
|
|
11
28
|
var frameTimes = [];
|
|
12
29
|
var minFramerateTarget = 30;
|
|
13
|
-
var frameTimeTarget =
|
|
14
|
-
var performance =
|
|
30
|
+
var frameTimeTarget = 1e3 / minFramerateTarget;
|
|
31
|
+
var performance = import_l7_utils.$window.performance;
|
|
15
32
|
var PerformanceMarkers = {
|
|
16
|
-
create:
|
|
17
|
-
load:
|
|
18
|
-
fullLoad:
|
|
33
|
+
create: "create",
|
|
34
|
+
load: "load",
|
|
35
|
+
fullLoad: "fullLoad"
|
|
19
36
|
};
|
|
20
|
-
exports.PerformanceMarkers = PerformanceMarkers;
|
|
21
37
|
var PerformanceUtils = {
|
|
22
|
-
mark
|
|
38
|
+
mark(marker) {
|
|
23
39
|
performance.mark(marker);
|
|
24
40
|
},
|
|
25
|
-
frame
|
|
26
|
-
|
|
27
|
-
|
|
41
|
+
frame(timestamp) {
|
|
42
|
+
const currTimestamp = timestamp;
|
|
28
43
|
if (lastFrameTime != null) {
|
|
29
|
-
|
|
44
|
+
const frameTime = currTimestamp - lastFrameTime;
|
|
30
45
|
frameTimes.push(frameTime);
|
|
31
46
|
}
|
|
32
|
-
|
|
33
47
|
lastFrameTime = currTimestamp;
|
|
34
48
|
},
|
|
35
|
-
clearMetrics
|
|
49
|
+
clearMetrics() {
|
|
36
50
|
lastFrameTime = null;
|
|
37
51
|
frameTimes = [];
|
|
38
|
-
performance.clearMeasures(
|
|
39
|
-
performance.clearMeasures(
|
|
40
|
-
|
|
41
|
-
for (var marker in PerformanceMarkers) {
|
|
52
|
+
performance.clearMeasures("loadTime");
|
|
53
|
+
performance.clearMeasures("fullLoadTime");
|
|
54
|
+
for (const marker in PerformanceMarkers) {
|
|
42
55
|
performance.clearMarks(PerformanceMarkers[marker]);
|
|
43
56
|
}
|
|
44
57
|
},
|
|
45
|
-
getPerformanceMetrics
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
var fps = 1 / avgFrameTime;
|
|
53
|
-
var droppedFrames = frameTimes.filter(function (frameTime) {
|
|
54
|
-
return frameTime > frameTimeTarget;
|
|
55
|
-
}).reduce(function (acc, curr) {
|
|
58
|
+
getPerformanceMetrics() {
|
|
59
|
+
const loadTime = performance.measure("loadTime", PerformanceMarkers.create, PerformanceMarkers.load).duration;
|
|
60
|
+
const fullLoadTime = performance.measure("fullLoadTime", PerformanceMarkers.create, PerformanceMarkers.fullLoad).duration;
|
|
61
|
+
const totalFrames = frameTimes.length;
|
|
62
|
+
const avgFrameTime = frameTimes.reduce((prev, curr) => prev + curr, 0) / totalFrames / 1e3;
|
|
63
|
+
const fps = 1 / avgFrameTime;
|
|
64
|
+
const droppedFrames = frameTimes.filter((frameTime) => frameTime > frameTimeTarget).reduce((acc, curr) => {
|
|
56
65
|
return acc + (curr - frameTimeTarget) / frameTimeTarget;
|
|
57
66
|
}, 0);
|
|
58
|
-
|
|
67
|
+
const percentDroppedFrames = droppedFrames / (totalFrames + droppedFrames) * 100;
|
|
59
68
|
return {
|
|
60
|
-
loadTime
|
|
61
|
-
fullLoadTime
|
|
62
|
-
fps
|
|
63
|
-
percentDroppedFrames
|
|
69
|
+
loadTime,
|
|
70
|
+
fullLoadTime,
|
|
71
|
+
fps,
|
|
72
|
+
percentDroppedFrames
|
|
64
73
|
};
|
|
65
74
|
}
|
|
66
75
|
};
|
|
67
|
-
|
|
68
|
-
|
|
76
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
77
|
+
0 && (module.exports = {
|
|
78
|
+
PerformanceMarkers,
|
|
79
|
+
PerformanceUtils
|
|
80
|
+
});
|
package/lib/utils/primitives.js
CHANGED
|
@@ -1,55 +1,63 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
|
|
19
|
+
// src/utils/primitives.ts
|
|
20
|
+
var primitives_exports = {};
|
|
21
|
+
__export(primitives_exports, {
|
|
22
|
+
default: () => Frustum
|
|
7
23
|
});
|
|
8
|
-
exports
|
|
9
|
-
|
|
10
|
-
var
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
24
|
+
module.exports = __toCommonJS(primitives_exports);
|
|
25
|
+
var import_gl_matrix = require("gl-matrix");
|
|
26
|
+
var Frustum = class {
|
|
27
|
+
static fromInvProjectionMatrix(invProj, worldSize, zoom) {
|
|
28
|
+
const clipSpaceCorners = [
|
|
29
|
+
[-1, 1, -1, 1],
|
|
30
|
+
[1, 1, -1, 1],
|
|
31
|
+
[1, -1, -1, 1],
|
|
32
|
+
[-1, -1, -1, 1],
|
|
33
|
+
[-1, 1, 1, 1],
|
|
34
|
+
[1, 1, 1, 1],
|
|
35
|
+
[1, -1, 1, 1],
|
|
36
|
+
[-1, -1, 1, 1]
|
|
37
|
+
];
|
|
38
|
+
const scale = Math.pow(2, zoom);
|
|
39
|
+
const frustumCoords = clipSpaceCorners.map((v) => import_gl_matrix.vec4.transformMat4(new Float32Array([]), v, invProj)).map((v) => import_gl_matrix.vec4.scale(new Float32Array([]), v, 1 / v[3] / worldSize * scale));
|
|
40
|
+
const frustumPlanePointIndices = [
|
|
41
|
+
[0, 1, 2],
|
|
42
|
+
[6, 5, 4],
|
|
43
|
+
[0, 3, 7],
|
|
44
|
+
[2, 1, 5],
|
|
45
|
+
[3, 2, 6],
|
|
46
|
+
[0, 4, 5]
|
|
47
|
+
];
|
|
48
|
+
const frustumPlanes = frustumPlanePointIndices.map((p) => {
|
|
49
|
+
const a = import_gl_matrix.vec3.sub(new Float32Array(3), new Float32Array(frustumCoords[p[0]]), new Float32Array(frustumCoords[p[1]]));
|
|
50
|
+
const b = import_gl_matrix.vec3.sub(new Float32Array(3), new Float32Array(frustumCoords[p[2]]), new Float32Array(frustumCoords[p[1]]));
|
|
51
|
+
const n = import_gl_matrix.vec3.normalize(new Float32Array(3), import_gl_matrix.vec3.cross(new Float32Array(3), a, b));
|
|
52
|
+
const d = -import_gl_matrix.vec3.dot(n, new Float32Array(frustumCoords[p[1]]));
|
|
53
|
+
return n.concat(d);
|
|
54
|
+
});
|
|
55
|
+
return new Frustum(frustumCoords, frustumPlanes);
|
|
56
|
+
}
|
|
57
|
+
constructor(points, planes) {
|
|
23
58
|
this.points = points;
|
|
24
59
|
this.planes = planes;
|
|
25
60
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
value: function fromInvProjectionMatrix(invProj, worldSize, zoom) {
|
|
30
|
-
var clipSpaceCorners = [[-1, 1, -1, 1], [1, 1, -1, 1], [1, -1, -1, 1], [-1, -1, -1, 1], [-1, 1, 1, 1], [1, 1, 1, 1], [1, -1, 1, 1], [-1, -1, 1, 1]];
|
|
31
|
-
var scale = Math.pow(2, zoom);
|
|
32
|
-
var frustumCoords = clipSpaceCorners.map(function (v) {
|
|
33
|
-
return _glMatrix.vec4.transformMat4(new Float32Array([]), v, invProj);
|
|
34
|
-
}).map(function (v) {
|
|
35
|
-
return _glMatrix.vec4.scale(new Float32Array([]), v, 1.0 / v[3] / worldSize * scale);
|
|
36
|
-
});
|
|
37
|
-
var frustumPlanePointIndices = [[0, 1, 2], [6, 5, 4], [0, 3, 7], [2, 1, 5], [3, 2, 6], [0, 4, 5]];
|
|
38
|
-
var frustumPlanes = frustumPlanePointIndices.map(function (p) {
|
|
39
|
-
var a = _glMatrix.vec3.sub(new Float32Array(3), new Float32Array(frustumCoords[p[0]]), new Float32Array(frustumCoords[p[1]]));
|
|
40
|
-
|
|
41
|
-
var b = _glMatrix.vec3.sub(new Float32Array(3), new Float32Array(frustumCoords[p[2]]), new Float32Array(frustumCoords[p[1]]));
|
|
42
|
-
|
|
43
|
-
var n = _glMatrix.vec3.normalize(new Float32Array(3), _glMatrix.vec3.cross(new Float32Array(3), a, b));
|
|
44
|
-
|
|
45
|
-
var d = -_glMatrix.vec3.dot(n, new Float32Array(frustumCoords[p[1]]));
|
|
46
|
-
return n.concat(d);
|
|
47
|
-
});
|
|
48
|
-
return new Frustum(frustumCoords, frustumPlanes);
|
|
49
|
-
}
|
|
50
|
-
}]);
|
|
51
|
-
return Frustum;
|
|
52
|
-
}();
|
|
53
|
-
|
|
54
|
-
exports.default = Frustum;
|
|
55
|
-
//# sourceMappingURL=primitives.js.map
|
|
61
|
+
};
|
|
62
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
63
|
+
0 && (module.exports = {});
|