@math.gl/core 5.0.0-alpha.19 → 5.0.0-alpha.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/APACHE-2.0-LICENSE.txt +55 -0
- package/ARROW-NOTICE.txt +18 -0
- package/LICENSE +146 -44
- package/README.md +5 -0
- package/THIRD-PARTY-NOTICES.md +16 -0
- package/dist/classes/euler.d.ts.map +1 -1
- package/dist/classes/euler.js +2 -0
- package/dist/classes/euler.js.map +1 -1
- package/dist/expressions/function-registry.d.ts.map +1 -1
- package/dist/expressions/function-registry.js +9 -1
- package/dist/expressions/function-registry.js.map +1 -1
- package/dist/expressions/get.js +1 -1
- package/dist/expressions/get.js.map +1 -1
- package/dist/expressions/index.cjs +12 -4
- package/dist/expressions/index.cjs.map +1 -1
- package/dist/expressions/parse-expression-string.js +3 -3
- package/dist/expressions/parse-expression-string.js.map +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/spheroid.cjs +34 -57
- package/dist/spheroid.cjs.map +1 -1
- package/dist/spheroid.d.ts +1 -1
- package/dist/spheroid.d.ts.map +1 -1
- package/dist/spheroid.js +53 -64
- package/dist/spheroid.js.map +1 -1
- package/dist/types/bigint.d.ts +1 -1
- package/dist/types/bigint.d.ts.map +1 -1
- package/dist/types/bigint.js +21 -4
- package/dist/types/bigint.js.map +1 -1
- package/dist/types/bounds-types.js +1 -1
- package/dist/types/bounds-types.js.map +1 -1
- package/package.json +7 -3
- package/src/classes/euler.ts +2 -0
- package/src/expressions/function-registry.ts +9 -1
- package/src/expressions/get.ts +1 -1
- package/src/expressions/parse-expression-string.ts +3 -3
- package/src/spheroid.ts +62 -85
- package/src/types/bigint.ts +22 -4
- package/src/types/bounds-types.ts +1 -1
package/dist/spheroid.cjs
CHANGED
|
@@ -23,10 +23,11 @@ __export(spheroid_exports, {
|
|
|
23
23
|
spheroidToCartesian: () => spheroidToCartesian
|
|
24
24
|
});
|
|
25
25
|
module.exports = __toCommonJS(spheroid_exports);
|
|
26
|
+
var EPSILON = Number.EPSILON;
|
|
26
27
|
function spheroidToCartesian(point, geometry, result = point) {
|
|
27
28
|
const longitude = point.x, latitude = point.y, height = point.z;
|
|
28
29
|
const { semiMajorAxis: a, semiMinorAxis: b, eccentricitySquared: es } = geometry;
|
|
29
|
-
const sin = Math.sin(latitude), cos = Math.cos(latitude);
|
|
30
|
+
const sin = Math.sin(latitude), cos = Math.abs(latitude) === Math.PI / 2 ? 0 : Math.cos(latitude);
|
|
30
31
|
const ratio = b / a;
|
|
31
32
|
const radius = es < 0.9 ? a / Math.sqrt(1 - es * sin * sin) : a / Math.hypot(cos, ratio * sin);
|
|
32
33
|
const x = (radius + height) * cos * Math.cos(longitude);
|
|
@@ -37,18 +38,19 @@ function spheroidToCartesian(point, geometry, result = point) {
|
|
|
37
38
|
function cartesianToSpheroid(point, geometry, result = point) {
|
|
38
39
|
const x = point.x, y = point.y, z = point.z;
|
|
39
40
|
const { semiMajorAxis: a, semiMinorAxis: b, eccentricitySquared: es } = geometry;
|
|
41
|
+
const longitude = Math.atan2(y, x);
|
|
40
42
|
const p = Math.hypot(x, y), rr = Math.hypot(x, y, z);
|
|
41
43
|
if (!(rr > 0) || !Number.isFinite(rr))
|
|
42
44
|
return false;
|
|
43
45
|
if (es === 0)
|
|
44
|
-
return commit(result, p === 0 ? 0 :
|
|
46
|
+
return commit(result, p === 0 ? 0 : longitude, Math.atan2(z, p), rr - a);
|
|
45
47
|
if (p === 0)
|
|
46
48
|
return commit(result, 0, Math.sign(z) * Math.PI / 2, Math.abs(z) - b);
|
|
47
49
|
const horizontal = p / a, vertical = z / b;
|
|
48
|
-
if (horizontal * horizontal + vertical * vertical < 1 - 16 *
|
|
50
|
+
if (horizontal * horizontal + vertical * vertical < 1 - 16 * EPSILON)
|
|
49
51
|
return interiorInverse(x, y, z, p, a, b, result);
|
|
50
52
|
if (es >= 0.9)
|
|
51
|
-
return
|
|
53
|
+
return interiorInverse(x, y, z, p, a, b, result);
|
|
52
54
|
const ct = z / rr, st = p / rr;
|
|
53
55
|
let rx = 1 / Math.sqrt(1 - es * (2 - es) * st * st);
|
|
54
56
|
let cos = st * (1 - es) * rx, sin = ct * rx;
|
|
@@ -59,64 +61,65 @@ function cartesianToSpheroid(point, geometry, result = point) {
|
|
|
59
61
|
rx = 1 / Math.sqrt(1 - rk * (2 - rk) * st * st);
|
|
60
62
|
const nextCos = st * (1 - rk) * rx, nextSin = ct * rx;
|
|
61
63
|
if (Math.abs(nextSin * cos - nextCos * sin) <= 1e-12) {
|
|
62
|
-
if (!Number.isFinite(height)
|
|
64
|
+
if (!Number.isFinite(height))
|
|
63
65
|
break;
|
|
64
|
-
return commit(result,
|
|
66
|
+
return commit(result, longitude, Math.atan2(nextSin, Math.abs(nextCos)), height);
|
|
65
67
|
}
|
|
66
68
|
cos = nextCos;
|
|
67
69
|
sin = nextSin;
|
|
68
70
|
}
|
|
69
|
-
return
|
|
71
|
+
return interiorInverse(x, y, z, p, a, b, result);
|
|
70
72
|
}
|
|
71
73
|
function interiorInverse(x, y, z, p, a, b, result) {
|
|
74
|
+
const longitude = Math.atan2(y, x);
|
|
72
75
|
const ratio = b / a, ratio2 = ratio * ratio;
|
|
73
76
|
const horizontal = p / a, vertical = z / a, delta = 1 - ratio2;
|
|
74
77
|
if (!(ratio2 > 0) || ratio > 1)
|
|
75
78
|
return false;
|
|
76
|
-
if (z === 0) {
|
|
77
|
-
if (horizontal < delta)
|
|
78
|
-
return false;
|
|
79
|
-
return commit(result, Math.atan2(y, x), 0, p - a);
|
|
80
|
-
}
|
|
81
79
|
const aa = a * a, bb = b * b;
|
|
82
80
|
const ratioError = Number.isFinite(aa) && aa > 0 ? (bb - ratio2 * aa + productError(b, b, bb) - ratio2 * productError(a, a, aa) - productError(ratio2, aa, ratio2 * aa)) / aa : 0;
|
|
83
81
|
const pp = p * p, xx = x * x, yy = y * y, sum = xx + yy;
|
|
84
82
|
const radiusError = Number.isFinite(pp) && pp > 0 ? (sum - pp + sumError(xx, yy, sum) + productError(x, x, xx) + productError(y, y, yy) - productError(p, p, pp)) / (2 * p) : 0;
|
|
85
|
-
const shift = a * ratio2,
|
|
86
|
-
const correction = radiusError + sumError(p -
|
|
83
|
+
const shift = a * ratio2, distance = p - a, base = distance + shift;
|
|
84
|
+
const correction = radiusError + sumError(p, -a, distance) + sumError(distance, shift, base) + productError(a, ratio2, shift) + a * ratioError;
|
|
85
|
+
if (z === 0) {
|
|
86
|
+
if (base + correction < 0)
|
|
87
|
+
return false;
|
|
88
|
+
return commit(result, longitude, 0, distance);
|
|
89
|
+
}
|
|
87
90
|
const weighted = Math.abs(vertical) * ratio;
|
|
88
|
-
|
|
91
|
+
let lower = 0, upper = ratio2 + Math.hypot(horizontal, vertical * ratio);
|
|
92
|
+
if (!Number.isFinite(upper))
|
|
89
93
|
return false;
|
|
90
|
-
let lower = 0, upper = ratio2;
|
|
91
94
|
let t = Math.max(weighted, horizontal - delta);
|
|
92
95
|
if (!(t > lower && t < upper))
|
|
93
96
|
t = upper / 2;
|
|
94
|
-
|
|
97
|
+
const gap = -(base + correction) / a;
|
|
98
|
+
const limiting = Math.sqrt(gap * (horizontal + delta)) / delta;
|
|
99
|
+
let latitude = gap > 0 && Math.abs(z) / limiting / a * ratio <= EPSILON * gap ? Math.atan2(Math.sign(z) * limiting / ratio, horizontal / delta) : void 0;
|
|
100
|
+
for (let i = 0; i < 1024 && latitude === void 0; i++) {
|
|
95
101
|
const equatorial = delta + t;
|
|
96
|
-
const u = horizontal / equatorial,
|
|
102
|
+
const u = horizontal / equatorial, verticalAt = z / t / a, v = verticalAt * ratio;
|
|
97
103
|
const at = a * t, difference = base - at;
|
|
98
104
|
const offset = (difference + (sumError(base, -at, difference) + correction - productError(a, t, at))) / (a * equatorial);
|
|
99
105
|
const term = offset * (u + 1);
|
|
100
106
|
const residual = term + v * v;
|
|
101
|
-
if (
|
|
102
|
-
|
|
103
|
-
const sin = Math.sin(latitude), cos = Math.cos(latitude);
|
|
104
|
-
return commit(result, Math.atan2(y, x), latitude, p * cos + z * sin - a * Math.hypot(cos, ratio * sin));
|
|
105
|
-
}
|
|
107
|
+
if (!Number.isFinite(residual))
|
|
108
|
+
return false;
|
|
106
109
|
if (residual > 0)
|
|
107
110
|
lower = t;
|
|
108
111
|
else
|
|
109
112
|
upper = t;
|
|
110
113
|
const derivative = -2 * (u * u / equatorial + v * v / t);
|
|
111
114
|
const next = t - residual / derivative;
|
|
112
|
-
const candidate =
|
|
113
|
-
if (
|
|
114
|
-
|
|
115
|
-
|
|
115
|
+
const candidate = next > lower && next < upper ? next : lower + (upper - lower) / 2;
|
|
116
|
+
if (Math.abs(residual) <= 4 * EPSILON * (Math.abs(term) + v * v) || upper - lower <= 4 * EPSILON * t) {
|
|
117
|
+
latitude = Math.atan2(verticalAt, u);
|
|
118
|
+
break;
|
|
116
119
|
}
|
|
117
120
|
t = candidate;
|
|
118
121
|
}
|
|
119
|
-
return
|
|
122
|
+
return latitude !== void 0 && commitNormal(result, longitude, latitude, p, z, a, ratio);
|
|
120
123
|
}
|
|
121
124
|
function sumError(x, y, sum) {
|
|
122
125
|
const part = sum - x;
|
|
@@ -129,35 +132,9 @@ function productError(x, y, product) {
|
|
|
129
132
|
const hx = sx - (sx - x), hy = sy - (sy - y), lx = x - hx, ly = y - hy;
|
|
130
133
|
return hx * hy - product + hx * ly + lx * hy + lx * ly;
|
|
131
134
|
}
|
|
132
|
-
function
|
|
133
|
-
const
|
|
134
|
-
|
|
135
|
-
if (!Number.isFinite(norm) || norm < 1 - 8 * Number.EPSILON || !(ratio2 > 0))
|
|
136
|
-
return false;
|
|
137
|
-
let lower = 0, upper = Math.hypot(horizontal, vertical * ratio);
|
|
138
|
-
if (!Number.isFinite(upper))
|
|
139
|
-
return false;
|
|
140
|
-
let multiplier = norm <= 1 + 8 * Number.EPSILON ? 0 : upper / 2;
|
|
141
|
-
for (let i = 0; i < 96; i++) {
|
|
142
|
-
const equatorial = 1 + multiplier, polar = ratio2 + multiplier;
|
|
143
|
-
const u = horizontal / equatorial, v = vertical * ratio / polar;
|
|
144
|
-
const length = Math.hypot(u, v);
|
|
145
|
-
const residual = length - 1;
|
|
146
|
-
if (Math.abs(residual) <= 4 * Number.EPSILON) {
|
|
147
|
-
const latitude = Math.atan2(vertical / polar, horizontal / equatorial);
|
|
148
|
-
const sin = Math.sin(latitude), cos = Math.cos(latitude);
|
|
149
|
-
const height = p * cos + z * sin - a * Math.hypot(cos, ratio * sin);
|
|
150
|
-
return commit(result, Math.atan2(y, x), latitude, height);
|
|
151
|
-
}
|
|
152
|
-
if (residual > 0)
|
|
153
|
-
lower = multiplier;
|
|
154
|
-
else
|
|
155
|
-
upper = multiplier;
|
|
156
|
-
const derivative = -(u * u / equatorial + v * v / polar) / length;
|
|
157
|
-
const next = multiplier - residual / derivative;
|
|
158
|
-
multiplier = Number.isFinite(next) && next > lower && next < upper ? next : (lower + upper) / 2;
|
|
159
|
-
}
|
|
160
|
-
return false;
|
|
135
|
+
function commitNormal(result, longitude, latitude, p, z, a, ratio) {
|
|
136
|
+
const sin = Math.sin(latitude), cos = Math.cos(latitude);
|
|
137
|
+
return commit(result, longitude, latitude, p * cos + z * sin - a * Math.hypot(cos, ratio * sin));
|
|
161
138
|
}
|
|
162
139
|
function commit(result, x, y, z) {
|
|
163
140
|
if (!Number.isFinite(x) || !Number.isFinite(y) || !Number.isFinite(z))
|
package/dist/spheroid.cjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/spheroid.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;AAAA;;;;;;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/spheroid.d.ts
CHANGED
|
@@ -12,7 +12,7 @@ export type SpheroidPoint = {
|
|
|
12
12
|
export declare function spheroidToCartesian(point: SpheroidPoint, geometry: SpheroidGeometry, result?: SpheroidPoint): boolean;
|
|
13
13
|
/**
|
|
14
14
|
* Bounded inverse. Sphere is analytic; ordinary spheroids use the retained Hannover
|
|
15
|
-
* iteration on exterior points. Interiors
|
|
15
|
+
* iteration on exterior points. Interiors and thin-shape exteriors share a safeguarded nearest-footpoint solve.
|
|
16
16
|
* Equatorial interiors below the evolute cusp have two nearest normals: reject.
|
|
17
17
|
* false leaves output untouched, including the center and unresolved binary64 cases.
|
|
18
18
|
* Only exact poles canonicalize longitude; adapters may retain other conventions.
|
package/dist/spheroid.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spheroid.d.ts","sourceRoot":"","sources":["../src/spheroid.ts"],"names":[],"mappings":"AAMA,kGAAkG;AAClG,OAAO,KAAK,EAAC,kBAAkB,EAAC,mBAAgB;AAChD,MAAM,MAAM,gBAAgB,GAAG,kBAAkB,GAAG;IAAC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAA;CAAC,CAAC;AAC3F,MAAM,MAAM,aAAa,GAAG;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"spheroid.d.ts","sourceRoot":"","sources":["../src/spheroid.ts"],"names":[],"mappings":"AAMA,kGAAkG;AAClG,OAAO,KAAK,EAAC,kBAAkB,EAAC,mBAAgB;AAChD,MAAM,MAAM,gBAAgB,GAAG,kBAAkB,GAAG;IAAC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAA;CAAC,CAAC;AAC3F,MAAM,MAAM,aAAa,GAAG;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC;AAI9D,6FAA6F;AAC7F,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,GAAE,aAAqB,GAC5B,OAAO,CAcT;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,GAAE,aAAqB,GAC5B,OAAO,CAoCT"}
|
package/dist/spheroid.js
CHANGED
|
@@ -2,12 +2,13 @@
|
|
|
2
2
|
// SPDX-License-Identifier: MIT
|
|
3
3
|
// SPDX-FileCopyrightText: 2014 Mike Adair, Richard Greenwood, Didier Richard, Stephen Irons, Olivier Terral and Calvin Metcalf (proj4js)
|
|
4
4
|
// SPDX-FileCopyrightText: Copyright (c) vis.gl contributors
|
|
5
|
-
// SPDX-FileComment: Forward geocentric equations and Hannover inverse moved/adapted from math.gl projection's proj4js 2.22.0 datumUtils.js port. See ../PROJ4-LICENSE.md. Safeguarded nearest-footpoint inverse and numeric output commit are original math.gl code.
|
|
5
|
+
// SPDX-FileComment: Forward geocentric equations and Hannover inverse moved/adapted from math.gl projection's proj4js 2.22.0 datumUtils.js port. See ../PROJ4-LICENSE.md. Safeguarded compensated nearest-footpoint inverse, thin-exterior/pole fixes and numeric output commit are original math.gl code, qualified with independent mathematics and offline GeographicLib 2.7 (Charles Karney, MIT).
|
|
6
|
+
const EPSILON = Number.EPSILON;
|
|
6
7
|
/** Caller supplies validated positive finite axes and eccentricity. No latitude wrapping. */
|
|
7
8
|
export function spheroidToCartesian(point, geometry, result = point) {
|
|
8
9
|
const longitude = point.x, latitude = point.y, height = point.z;
|
|
9
10
|
const { semiMajorAxis: a, semiMinorAxis: b, eccentricitySquared: es } = geometry;
|
|
10
|
-
const sin = Math.sin(latitude), cos = Math.cos(latitude);
|
|
11
|
+
const sin = Math.sin(latitude), cos = Math.abs(latitude) === Math.PI / 2 ? 0 : Math.cos(latitude);
|
|
11
12
|
// Use the axis ratio for very flat shapes: 1 - es*sin² loses polar precision.
|
|
12
13
|
const ratio = b / a;
|
|
13
14
|
const radius = es < 0.9 ? a / Math.sqrt(1 - es * sin * sin) : a / Math.hypot(cos, ratio * sin);
|
|
@@ -18,7 +19,7 @@ export function spheroidToCartesian(point, geometry, result = point) {
|
|
|
18
19
|
}
|
|
19
20
|
/**
|
|
20
21
|
* Bounded inverse. Sphere is analytic; ordinary spheroids use the retained Hannover
|
|
21
|
-
* iteration on exterior points. Interiors
|
|
22
|
+
* iteration on exterior points. Interiors and thin-shape exteriors share a safeguarded nearest-footpoint solve.
|
|
22
23
|
* Equatorial interiors below the evolute cusp have two nearest normals: reject.
|
|
23
24
|
* false leaves output untouched, including the center and unresolved binary64 cases.
|
|
24
25
|
* Only exact poles canonicalize longitude; adapters may retain other conventions.
|
|
@@ -26,18 +27,19 @@ export function spheroidToCartesian(point, geometry, result = point) {
|
|
|
26
27
|
export function cartesianToSpheroid(point, geometry, result = point) {
|
|
27
28
|
const x = point.x, y = point.y, z = point.z;
|
|
28
29
|
const { semiMajorAxis: a, semiMinorAxis: b, eccentricitySquared: es } = geometry;
|
|
30
|
+
const longitude = Math.atan2(y, x);
|
|
29
31
|
const p = Math.hypot(x, y), rr = Math.hypot(x, y, z);
|
|
30
32
|
if (!(rr > 0) || !Number.isFinite(rr))
|
|
31
33
|
return false;
|
|
32
34
|
if (es === 0)
|
|
33
|
-
return commit(result, p === 0 ? 0 :
|
|
35
|
+
return commit(result, p === 0 ? 0 : longitude, Math.atan2(z, p), rr - a);
|
|
34
36
|
if (p === 0)
|
|
35
37
|
return commit(result, 0, (Math.sign(z) * Math.PI) / 2, Math.abs(z) - b);
|
|
36
38
|
const horizontal = p / a, vertical = z / b;
|
|
37
|
-
if (horizontal * horizontal + vertical * vertical < 1 - 16 *
|
|
39
|
+
if (horizontal * horizontal + vertical * vertical < 1 - 16 * EPSILON)
|
|
38
40
|
return interiorInverse(x, y, z, p, a, b, result);
|
|
39
41
|
if (es >= 0.9)
|
|
40
|
-
return
|
|
42
|
+
return interiorInverse(x, y, z, p, a, b, result);
|
|
41
43
|
const ct = z / rr, st = p / rr;
|
|
42
44
|
let rx = 1 / Math.sqrt(1 - es * (2 - es) * st * st);
|
|
43
45
|
let cos = st * (1 - es) * rx, sin = ct * rx;
|
|
@@ -48,28 +50,24 @@ export function cartesianToSpheroid(point, geometry, result = point) {
|
|
|
48
50
|
rx = 1 / Math.sqrt(1 - rk * (2 - rk) * st * st);
|
|
49
51
|
const nextCos = st * (1 - rk) * rx, nextSin = ct * rx;
|
|
50
52
|
if (Math.abs(nextSin * cos - nextCos * sin) <= 1e-12) {
|
|
51
|
-
if (!Number.isFinite(height)
|
|
53
|
+
if (!Number.isFinite(height))
|
|
52
54
|
break;
|
|
53
|
-
return commit(result,
|
|
55
|
+
return commit(result, longitude, Math.atan2(nextSin, Math.abs(nextCos)), height);
|
|
54
56
|
}
|
|
55
57
|
cos = nextCos;
|
|
56
58
|
sin = nextSin;
|
|
57
59
|
}
|
|
58
|
-
return
|
|
60
|
+
return interiorInverse(x, y, z, p, a, b, result);
|
|
59
61
|
}
|
|
60
|
-
/** Original nearest-normal solve in t = (lambda + b²)/a², avoiding interior cancellation.
|
|
62
|
+
/** Original nearest-normal solve in t = (lambda + b²)/a², avoiding interior cancellation and thin-exterior residual loss.
|
|
61
63
|
* The positive interval selects the globally nearest branch, rather than a stationary normal.
|
|
62
64
|
*/
|
|
63
65
|
function interiorInverse(x, y, z, p, a, b, result) {
|
|
66
|
+
const longitude = Math.atan2(y, x);
|
|
64
67
|
const ratio = b / a, ratio2 = ratio * ratio;
|
|
65
68
|
const horizontal = p / a, vertical = z / a, delta = 1 - ratio2;
|
|
66
69
|
if (!(ratio2 > 0) || ratio > 1)
|
|
67
70
|
return false;
|
|
68
|
-
if (z === 0) {
|
|
69
|
-
if (horizontal < delta)
|
|
70
|
-
return false;
|
|
71
|
-
return commit(result, Math.atan2(y, x), 0, p - a);
|
|
72
|
-
}
|
|
73
71
|
const aa = a * a, bb = b * b;
|
|
74
72
|
const ratioError = Number.isFinite(aa) && aa > 0
|
|
75
73
|
? (bb -
|
|
@@ -89,47 +87,64 @@ function interiorInverse(x, y, z, p, a, b, result) {
|
|
|
89
87
|
productError(p, p, pp)) /
|
|
90
88
|
(2 * p)
|
|
91
89
|
: 0;
|
|
92
|
-
const shift = a * ratio2,
|
|
93
|
-
const correction = radiusError +
|
|
90
|
+
const shift = a * ratio2, distance = p - a, base = distance + shift;
|
|
91
|
+
const correction = radiusError +
|
|
92
|
+
sumError(p, -a, distance) +
|
|
93
|
+
sumError(distance, shift, base) +
|
|
94
|
+
productError(a, ratio2, shift) +
|
|
95
|
+
a * ratioError;
|
|
96
|
+
if (z === 0) {
|
|
97
|
+
// A rounded hypot can equal the cusp for points just inside it. Include
|
|
98
|
+
// the radius/axis corrections before selecting a unique equatorial normal.
|
|
99
|
+
if (base + correction < 0)
|
|
100
|
+
return false;
|
|
101
|
+
return commit(result, longitude, 0, distance);
|
|
102
|
+
}
|
|
94
103
|
const weighted = Math.abs(vertical) * ratio;
|
|
95
|
-
|
|
104
|
+
let lower = 0, upper = ratio2 + Math.hypot(horizontal, vertical * ratio);
|
|
105
|
+
if (!Number.isFinite(upper))
|
|
96
106
|
return false;
|
|
97
|
-
let lower = 0, upper = ratio2;
|
|
98
107
|
// A lower bound near the short-axis singularity prevents thousands of bisections
|
|
99
108
|
// for deep, nearly equatorial interiors. No subtraction of lambda and -b².
|
|
100
109
|
let t = Math.max(weighted, horizontal - delta);
|
|
101
110
|
if (!(t > lower && t < upper))
|
|
102
111
|
t = upper / 2;
|
|
103
|
-
|
|
112
|
+
// Below the cusp, a vanishing polar input can make t subnormal. The
|
|
113
|
+
// limiting vertical footpoint remains well conditioned. Use it only when
|
|
114
|
+
// its bound t <= abs(z)*ratio/(a*v) is negligible relative to the cusp gap.
|
|
115
|
+
const gap = -(base + correction) / a;
|
|
116
|
+
const limiting = Math.sqrt(gap * (horizontal + delta)) / delta;
|
|
117
|
+
let latitude = gap > 0 && (Math.abs(z) / limiting / a) * ratio <= EPSILON * gap
|
|
118
|
+
? Math.atan2((Math.sign(z) * limiting) / ratio, horizontal / delta)
|
|
119
|
+
: undefined;
|
|
120
|
+
for (let i = 0; i < 1024 && latitude === undefined; i++) {
|
|
104
121
|
const equatorial = delta + t;
|
|
105
|
-
const u = horizontal / equatorial,
|
|
122
|
+
const u = horizontal / equatorial,
|
|
123
|
+
// Divide by t first: both z/a and a*t can lose precision in the
|
|
124
|
+
// subnormal range although the near-cusp latitude is representable.
|
|
125
|
+
verticalAt = z / t / a, v = verticalAt * ratio;
|
|
106
126
|
const at = a * t, difference = base - at;
|
|
107
127
|
const offset = (difference + (sumError(base, -at, difference) + correction - productError(a, t, at))) /
|
|
108
128
|
(a * equatorial);
|
|
109
129
|
const term = offset * (u + 1);
|
|
110
130
|
const residual = term + v * v;
|
|
111
|
-
if (
|
|
112
|
-
|
|
113
|
-
const latitude = Math.atan2(vertical / t, horizontal / equatorial);
|
|
114
|
-
const sin = Math.sin(latitude), cos = Math.cos(latitude);
|
|
115
|
-
return commit(result, Math.atan2(y, x), latitude, p * cos + z * sin - a * Math.hypot(cos, ratio * sin));
|
|
116
|
-
}
|
|
131
|
+
if (!Number.isFinite(residual))
|
|
132
|
+
return false;
|
|
117
133
|
if (residual > 0)
|
|
118
134
|
lower = t;
|
|
119
135
|
else
|
|
120
136
|
upper = t;
|
|
121
137
|
const derivative = -2 * ((u * u) / equatorial + (v * v) / t);
|
|
122
138
|
const next = t - residual / derivative;
|
|
123
|
-
const candidate =
|
|
124
|
-
if (
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
a * Math.hypot(Math.cos(latitude), ratio * Math.sin(latitude)));
|
|
139
|
+
const candidate = next > lower && next < upper ? next : lower + (upper - lower) / 2;
|
|
140
|
+
if (Math.abs(residual) <= 4 * EPSILON * (Math.abs(term) + v * v) ||
|
|
141
|
+
upper - lower <= 4 * EPSILON * t) {
|
|
142
|
+
latitude = Math.atan2(verticalAt, u);
|
|
143
|
+
break;
|
|
129
144
|
}
|
|
130
145
|
t = candidate;
|
|
131
146
|
}
|
|
132
|
-
return
|
|
147
|
+
return latitude !== undefined && commitNormal(result, longitude, latitude, p, z, a, ratio);
|
|
133
148
|
}
|
|
134
149
|
/** Error-free transforms on the finite squared-axis domain used by geometry adapters. */
|
|
135
150
|
function sumError(x, y, sum) {
|
|
@@ -143,36 +158,10 @@ function productError(x, y, product) {
|
|
|
143
158
|
const hx = sx - (sx - x), hy = sy - (sy - y), lx = x - hx, ly = y - hy;
|
|
144
159
|
return hx * hy - product + hx * ly + lx * hy + lx * ly;
|
|
145
160
|
}
|
|
146
|
-
/**
|
|
147
|
-
function
|
|
148
|
-
const
|
|
149
|
-
|
|
150
|
-
if (!Number.isFinite(norm) || norm < 1 - 8 * Number.EPSILON || !(ratio2 > 0))
|
|
151
|
-
return false;
|
|
152
|
-
let lower = 0, upper = Math.hypot(horizontal, vertical * ratio);
|
|
153
|
-
if (!Number.isFinite(upper))
|
|
154
|
-
return false;
|
|
155
|
-
let multiplier = norm <= 1 + 8 * Number.EPSILON ? 0 : upper / 2;
|
|
156
|
-
for (let i = 0; i < 96; i++) {
|
|
157
|
-
const equatorial = 1 + multiplier, polar = ratio2 + multiplier;
|
|
158
|
-
const u = horizontal / equatorial, v = (vertical * ratio) / polar;
|
|
159
|
-
const length = Math.hypot(u, v);
|
|
160
|
-
const residual = length - 1;
|
|
161
|
-
if (Math.abs(residual) <= 4 * Number.EPSILON) {
|
|
162
|
-
const latitude = Math.atan2(vertical / polar, horizontal / equatorial);
|
|
163
|
-
const sin = Math.sin(latitude), cos = Math.cos(latitude);
|
|
164
|
-
const height = p * cos + z * sin - a * Math.hypot(cos, ratio * sin);
|
|
165
|
-
return commit(result, Math.atan2(y, x), latitude, height);
|
|
166
|
-
}
|
|
167
|
-
if (residual > 0)
|
|
168
|
-
lower = multiplier;
|
|
169
|
-
else
|
|
170
|
-
upper = multiplier;
|
|
171
|
-
const derivative = -((u * u) / equatorial + (v * v) / polar) / length;
|
|
172
|
-
const next = multiplier - residual / derivative;
|
|
173
|
-
multiplier = Number.isFinite(next) && next > lower && next < upper ? next : (lower + upper) / 2;
|
|
174
|
-
}
|
|
175
|
-
return false;
|
|
161
|
+
/** Shared signed distance along the solved surface normal. */
|
|
162
|
+
function commitNormal(result, longitude, latitude, p, z, a, ratio) {
|
|
163
|
+
const sin = Math.sin(latitude), cos = Math.cos(latitude);
|
|
164
|
+
return commit(result, longitude, latitude, p * cos + z * sin - a * Math.hypot(cos, ratio * sin));
|
|
176
165
|
}
|
|
177
166
|
/** Values are captured before invoking application setters; recursive writes are safe. */
|
|
178
167
|
function commit(result, x, y, z) {
|
package/dist/spheroid.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spheroid.js","sourceRoot":"","sources":["../src/spheroid.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"spheroid.js","sourceRoot":"","sources":["../src/spheroid.ts"],"names":[],"mappings":"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"}
|
package/dist/types/bigint.d.ts
CHANGED
|
@@ -14,7 +14,7 @@ export declare const BigInt64ArrayAvailable: boolean;
|
|
|
14
14
|
export declare const BigUint64ArrayAvailable: boolean;
|
|
15
15
|
declare const BigIntCtor: typeof BigIntUnavailable | BigIntConstructor;
|
|
16
16
|
declare const BigInt64ArrayCtor: BigInt64ArrayConstructor | typeof BigInt64ArrayUnavailable;
|
|
17
|
-
declare const BigUint64ArrayCtor: BigUint64ArrayConstructor
|
|
17
|
+
declare const BigUint64ArrayCtor: BigUint64ArrayConstructor | typeof BigInt64ArrayUnavailable;
|
|
18
18
|
export { BigIntCtor as BigInt };
|
|
19
19
|
export { BigInt64ArrayCtor as BigInt64Array };
|
|
20
20
|
export { BigUint64ArrayCtor as BigUint64Array };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bigint.d.ts","sourceRoot":"","sources":["../../src/types/bigint.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"bigint.d.ts","sourceRoot":"","sources":["../../src/types/bigint.ts"],"names":[],"mappings":"AA8BA,iBAAS,iBAAiB,SAEzB;kBAFQ,iBAAiB;;;;AAU1B,cAAM,wBAAwB;IAC5B,MAAM,KAAK,iBAAiB,WAE3B;IACD,MAAM,CAAC,EAAE;IAGT,MAAM,CAAC,IAAI;;CAMZ;AAED,eAAO,MAAM,eAAe,SAAgC,CAAC;AAC7D,eAAO,MAAM,sBAAsB,SAAuC,CAAC;AAC3E,eAAO,MAAM,uBAAuB,SAAwC,CAAC;AAE7E,QAAA,MAAM,UAAU,8CAEZ,CAAC;AAEL,QAAA,MAAM,iBAAiB,4DAEnB,CAAC;AAEL,QAAA,MAAM,kBAAkB,6DAEpB,CAAC;AAEL,OAAO,EAAC,UAAU,IAAI,MAAM,EAAC,CAAC;AAC9B,OAAO,EAAC,iBAAiB,IAAI,aAAa,EAAC,CAAC;AAC5C,OAAO,EAAC,kBAAkB,IAAI,cAAc,EAAC,CAAC"}
|
package/dist/types/bigint.js
CHANGED
|
@@ -1,9 +1,26 @@
|
|
|
1
1
|
// math.gl
|
|
2
|
-
// SPDX-License-Identifier: MIT
|
|
2
|
+
// SPDX-License-Identifier: MIT AND Apache-2.0
|
|
3
3
|
// SPDX-FileCopyrightText: Copyright (c) vis.gl contributors
|
|
4
|
+
// SPDX-FileCopyrightText: Copyright 2016-2019 The Apache Software Foundation
|
|
5
|
+
// SPDX-FileComment: BigInt availability/fallback structure adapted from Apache Arrow JS util/compat.ts; compared with apache-arrow-4.0.0. See ../../ARROW-NOTICE.txt and ../../APACHE-2.0-LICENSE.txt. Modified to separate availability flags, share errors and narrow exports.
|
|
6
|
+
// Licensed to the Apache Software Foundation (ASF) under one
|
|
7
|
+
// or more contributor license agreements. See the NOTICE file
|
|
8
|
+
// distributed with this work for additional information
|
|
9
|
+
// regarding copyright ownership. The ASF licenses this file
|
|
10
|
+
// to you under the Apache License, Version 2.0 (the
|
|
11
|
+
// "License"); you may not use this file except in compliance
|
|
12
|
+
// with the License. You may obtain a copy of the License at
|
|
13
|
+
//
|
|
14
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
15
|
+
//
|
|
16
|
+
// Unless required by applicable law or agreed to in writing,
|
|
17
|
+
// software distributed under the License is distributed on an
|
|
18
|
+
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
19
|
+
// KIND, either express or implied. See the License for the
|
|
20
|
+
// specific language governing permissions and limitations
|
|
21
|
+
// under the License.
|
|
4
22
|
// BigInt compatibility layer
|
|
5
|
-
//
|
|
6
|
-
// https://github.com/apache/arrow/blob/master/js/src/util/compat.ts
|
|
23
|
+
// Source comparison: https://github.com/apache/arrow/blob/apache-arrow-4.0.0/js/src/util/compat.ts
|
|
7
24
|
// Requires tsconfig.json: target=esnext or (lib: esnext.bigint)
|
|
8
25
|
// Requires eslint: env: {es2020: true}
|
|
9
26
|
const ERR_BIGINT_UNAVAILABLE = 'BigInt is not available in this environment';
|
|
@@ -40,7 +57,7 @@ const BigInt64ArrayCtor = (() => {
|
|
|
40
57
|
return BigInt64ArrayAvailable ? BigInt64Array : BigInt64ArrayUnavailable;
|
|
41
58
|
})();
|
|
42
59
|
const BigUint64ArrayCtor = (() => {
|
|
43
|
-
return BigUint64ArrayAvailable ?
|
|
60
|
+
return BigUint64ArrayAvailable ? BigUint64Array : BigInt64ArrayUnavailable;
|
|
44
61
|
})();
|
|
45
62
|
export { BigIntCtor as BigInt };
|
|
46
63
|
export { BigInt64ArrayCtor as BigInt64Array };
|
package/dist/types/bigint.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bigint.js","sourceRoot":"","sources":["../../src/types/bigint.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+
|
|
1
|
+
{"version":3,"file":"bigint.js","sourceRoot":"","sources":["../../src/types/bigint.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,8CAA8C;AAC9C,4DAA4D;AAC5D,6EAA6E;AAC7E,iRAAiR;AAEjR,6DAA6D;AAC7D,+DAA+D;AAC/D,wDAAwD;AACxD,6DAA6D;AAC7D,oDAAoD;AACpD,6DAA6D;AAC7D,6DAA6D;AAC7D,EAAE;AACF,+CAA+C;AAC/C,EAAE;AACF,6DAA6D;AAC7D,8DAA8D;AAC9D,yDAAyD;AACzD,4DAA4D;AAC5D,0DAA0D;AAC1D,qBAAqB;AAErB,6BAA6B;AAC7B,mGAAmG;AACnG,gEAAgE;AAChE,uCAAuC;AAEvC,MAAM,sBAAsB,GAAG,6CAA6C,CAAC;AAE7E,SAAS,iBAAiB;IACxB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;AAC1C,CAAC;AACD,iBAAiB,CAAC,MAAM,GAAG,GAAG,EAAE;IAC9B,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;AAC1C,CAAC,CAAC;AACF,iBAAiB,CAAC,OAAO,GAAG,GAAG,EAAE;IAC/B,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;AAC1C,CAAC,CAAC;AAEF,MAAM,wBAAwB;IAC5B,MAAM,KAAK,iBAAiB;QAC1B,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,CAAC,EAAE;QACP,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IACD,MAAM,CAAC,IAAI;QACT,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IACD;QACE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;CACF;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,OAAO,MAAM,KAAK,WAAW,CAAC;AAC7D,MAAM,CAAC,MAAM,sBAAsB,GAAG,OAAO,aAAa,KAAK,WAAW,CAAC;AAC3E,MAAM,CAAC,MAAM,uBAAuB,GAAG,OAAO,cAAc,KAAK,WAAW,CAAC;AAE7E,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE;IACvB,OAAO,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC;AACtD,CAAC,CAAC,EAAE,CAAC;AAEL,MAAM,iBAAiB,GAAG,CAAC,GAAG,EAAE;IAC9B,OAAO,sBAAsB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,wBAAwB,CAAC;AAC3E,CAAC,CAAC,EAAE,CAAC;AAEL,MAAM,kBAAkB,GAAG,CAAC,GAAG,EAAE;IAC/B,OAAO,uBAAuB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,wBAAwB,CAAC;AAC7E,CAAC,CAAC,EAAE,CAAC;AAEL,OAAO,EAAC,UAAU,IAAI,MAAM,EAAC,CAAC;AAC9B,OAAO,EAAC,iBAAiB,IAAI,aAAa,EAAC,CAAC;AAC5C,OAAO,EAAC,kBAAkB,IAAI,cAAc,EAAC,CAAC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// SPDX-FileCopyrightText: Copyright (c) vis.gl contributors
|
|
4
4
|
/** Checks if a `Bounds` is a `Bounds2D` */
|
|
5
5
|
export function isBounds2D(bounds) {
|
|
6
|
-
return bounds.length === 2;
|
|
6
|
+
return bounds.length === 2 && bounds[0].length === 2 && bounds[1].length === 2;
|
|
7
7
|
}
|
|
8
8
|
/** Accepts 2D and 3D bounds and returns a 2D bound, truncating 3D dimension if necessary */
|
|
9
9
|
export function getBounds2D(bounds) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bounds-types.js","sourceRoot":"","sources":["../../src/types/bounds-types.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,4DAA4D;AAa5D,2CAA2C;AAC3C,MAAM,UAAU,UAAU,CAAC,MAAc;IACvC,OAAO,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"bounds-types.js","sourceRoot":"","sources":["../../src/types/bounds-types.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,4DAA4D;AAa5D,2CAA2C;AAC3C,MAAM,UAAU,UAAU,CAAC,MAAc;IACvC,OAAO,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;AACjF,CAAC;AAED,4FAA4F;AAC5F,MAAM,UAAU,WAAW,CAAC,MAAc;IACxC,OAAO,UAAU,CAAC,MAAM,CAAC;QACvB,CAAC,CAAC,MAAM;QACR,CAAC,CAAC;YACE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5B,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC7B,CAAC;AACR,CAAC"}
|
package/package.json
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"publishConfig": {
|
|
7
7
|
"access": "public"
|
|
8
8
|
},
|
|
9
|
-
"version": "5.0.0-alpha.
|
|
9
|
+
"version": "5.0.0-alpha.20",
|
|
10
10
|
"keywords": [
|
|
11
11
|
"webgl",
|
|
12
12
|
"javascript",
|
|
@@ -90,10 +90,14 @@
|
|
|
90
90
|
"files": [
|
|
91
91
|
"dist",
|
|
92
92
|
"src",
|
|
93
|
-
"PROJ4-LICENSE.md"
|
|
93
|
+
"PROJ4-LICENSE.md",
|
|
94
|
+
"LICENSE",
|
|
95
|
+
"THIRD-PARTY-NOTICES.md",
|
|
96
|
+
"ARROW-NOTICE.txt",
|
|
97
|
+
"APACHE-2.0-LICENSE.txt"
|
|
94
98
|
],
|
|
95
99
|
"sideEffects": [
|
|
96
100
|
"./src/lib/common.js"
|
|
97
101
|
],
|
|
98
|
-
"gitHead": "
|
|
102
|
+
"gitHead": "ad8c205a98e5e057d9055300b1a71f422b275c73"
|
|
99
103
|
}
|
package/src/classes/euler.ts
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
// SPDX-License-Identifier: MIT
|
|
3
3
|
// SPDX-FileCopyrightText: Copyright (c) vis.gl contributors
|
|
4
4
|
// SPDX-FileCopyrightText: Copyright (c) 2017 Uber Technologies, Inc.
|
|
5
|
+
// SPDX-FileCopyrightText: Copyright 2010-2017 three.js authors
|
|
6
|
+
// SPDX-FileComment: Euler conversion methods adapted from three.js; see ../../LICENSE.
|
|
5
7
|
|
|
6
8
|
import {MathArray} from './base/math-array';
|
|
7
9
|
import {NumericArray} from '../types';
|
|
@@ -5,7 +5,15 @@
|
|
|
5
5
|
import type {ExpressionFunction, ExpressionFunctionLibrary} from './function-libraries';
|
|
6
6
|
|
|
7
7
|
const FUNCTION_NAME_PATTERN = /^[A-Za-z_$][A-Za-z0-9_$]*$/;
|
|
8
|
-
const DISALLOWED_FUNCTION_NAMES = new Set([
|
|
8
|
+
const DISALLOWED_FUNCTION_NAMES = new Set([
|
|
9
|
+
'__proto__',
|
|
10
|
+
'prototype',
|
|
11
|
+
'constructor',
|
|
12
|
+
'true',
|
|
13
|
+
'false',
|
|
14
|
+
'null',
|
|
15
|
+
'this'
|
|
16
|
+
]);
|
|
9
17
|
|
|
10
18
|
/**
|
|
11
19
|
* Options for registering functions with an {@link ExpressionFunctionRegistry}.
|
package/src/expressions/get.ts
CHANGED
|
@@ -24,7 +24,7 @@ function isObject(value: unknown): value is Record<string, unknown> {
|
|
|
24
24
|
return value !== null && typeof value === 'object';
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
const keyMap: Record<string, string[]> =
|
|
27
|
+
const keyMap: Record<string, string[]> = Object.create(null);
|
|
28
28
|
|
|
29
29
|
/** Returns a cached list of property names for a dot-separated path. */
|
|
30
30
|
function getKeys(compositeKey: string): string[] {
|