world.ts 0.5.4 → 0.5.6
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/dist/index.js +450 -457
- package/dist/index.js.map +1 -1
- package/dist/layers/index.d.ts +1 -0
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
const
|
|
1
|
+
const Pt = (e, t) => {
|
|
2
2
|
let n;
|
|
3
3
|
return (...i) => {
|
|
4
4
|
clearTimeout(n), n = setTimeout(() => e(...i), t);
|
|
5
5
|
};
|
|
6
|
-
}, xe = (e, t) => Array.from({ length: t - e }, (n, i) => i + e),
|
|
6
|
+
}, xe = (e, t) => Array.from({ length: t - e }, (n, i) => i + e), zt = ({
|
|
7
7
|
gl: e,
|
|
8
8
|
vertexSource: t,
|
|
9
9
|
fragmentSource: n
|
|
@@ -26,29 +26,29 @@ const Ut = (e, t) => {
|
|
|
26
26
|
if (c[y])
|
|
27
27
|
return c[y];
|
|
28
28
|
const w = e.getUniformLocation(i, y);
|
|
29
|
-
let
|
|
29
|
+
let M;
|
|
30
30
|
const S = (U) => {
|
|
31
|
-
w && U !==
|
|
31
|
+
w && U !== M && (g(w, U), M = U);
|
|
32
32
|
};
|
|
33
33
|
return c[y] = { set: S }, { set: S };
|
|
34
34
|
}, f = (y) => a(y, (g, w) => e.uniform1f(g, w)), l = (y) => a(y, (g, w) => e.uniform1i(g, w)), h = (y) => a(
|
|
35
35
|
y,
|
|
36
|
-
(g, [w = 0,
|
|
36
|
+
(g, [w = 0, M = 0]) => e.uniform2f(g, w, M)
|
|
37
37
|
), u = (y) => a(
|
|
38
38
|
y,
|
|
39
|
-
(g, [w = 0,
|
|
39
|
+
(g, [w = 0, M = 0]) => e.uniform2i(g, w, M)
|
|
40
40
|
), d = (y) => a(
|
|
41
41
|
y,
|
|
42
|
-
(g, [w = 0,
|
|
42
|
+
(g, [w = 0, M = 0, S = 0]) => e.uniform3f(g, w, M, S)
|
|
43
43
|
), p = (y) => a(
|
|
44
44
|
y,
|
|
45
|
-
(g, [w = 0,
|
|
45
|
+
(g, [w = 0, M = 0, S = 0]) => e.uniform3i(g, w, M, S)
|
|
46
46
|
), _ = (y) => a(
|
|
47
47
|
y,
|
|
48
|
-
(g, [w = 0,
|
|
48
|
+
(g, [w = 0, M = 0, S = 0, U = 0]) => e.uniform4f(g, w, M, S, U)
|
|
49
49
|
), E = (y) => a(
|
|
50
50
|
y,
|
|
51
|
-
(g, [w = 0,
|
|
51
|
+
(g, [w = 0, M = 0, S = 0, U = 0]) => e.uniform4i(g, w, M, S, U)
|
|
52
52
|
), x = (y) => a(
|
|
53
53
|
y,
|
|
54
54
|
(g, w) => e.uniformMatrix4fv(g, !1, w)
|
|
@@ -56,7 +56,7 @@ const Ut = (e, t) => {
|
|
|
56
56
|
name: y,
|
|
57
57
|
buffer: g,
|
|
58
58
|
size: w,
|
|
59
|
-
type:
|
|
59
|
+
type: M,
|
|
60
60
|
stride: S,
|
|
61
61
|
offset: U
|
|
62
62
|
}) => {
|
|
@@ -64,10 +64,10 @@ const Ut = (e, t) => {
|
|
|
64
64
|
if (P === -1)
|
|
65
65
|
throw new Error(`Missing attribute: ${y}`);
|
|
66
66
|
return { use: () => {
|
|
67
|
-
g.use(), e.enableVertexAttribArray(P), ["u16", "i32"].includes(
|
|
67
|
+
g.use(), e.enableVertexAttribArray(P), ["u16", "i32"].includes(M) ? e.vertexAttribIPointer(
|
|
68
68
|
P,
|
|
69
69
|
w,
|
|
70
|
-
|
|
70
|
+
M === "u16" ? e.UNSIGNED_SHORT : e.INT,
|
|
71
71
|
S || 0,
|
|
72
72
|
U || 0
|
|
73
73
|
) : e.vertexAttribPointer(
|
|
@@ -105,7 +105,7 @@ const Ut = (e, t) => {
|
|
|
105
105
|
if (e.shaderSource(t, n), e.compileShader(t), !e.getShaderParameter(t, e.COMPILE_STATUS))
|
|
106
106
|
throw console.error("Compilation failed", e.getShaderInfoLog(t)), new Error("Compilation failure");
|
|
107
107
|
return t;
|
|
108
|
-
},
|
|
108
|
+
}, Lt = (e) => {
|
|
109
109
|
const t = /* @__PURE__ */ new Map();
|
|
110
110
|
return {
|
|
111
111
|
get: ({
|
|
@@ -115,7 +115,7 @@ const Ut = (e, t) => {
|
|
|
115
115
|
const o = r + s, c = t.get(o);
|
|
116
116
|
if (c)
|
|
117
117
|
return c;
|
|
118
|
-
const a =
|
|
118
|
+
const a = zt({ gl: e, vertexSource: r, fragmentSource: s });
|
|
119
119
|
return t.set(o, a), a;
|
|
120
120
|
},
|
|
121
121
|
dispose: () => [...t.values()].forEach((r) => r.dispose())
|
|
@@ -124,38 +124,38 @@ const Ut = (e, t) => {
|
|
|
124
124
|
const t = e.getContext("webgl2");
|
|
125
125
|
if (!t)
|
|
126
126
|
throw new Error("No WebGL2");
|
|
127
|
-
const n =
|
|
127
|
+
const n = Lt(t), { dispose: i } = n;
|
|
128
128
|
return { gl: t, programs: n, dispose: i };
|
|
129
129
|
};
|
|
130
|
-
var
|
|
131
|
-
function
|
|
132
|
-
|
|
130
|
+
var Nt = 1e-6, W = typeof Float32Array < "u" ? Float32Array : Array;
|
|
131
|
+
function It(e) {
|
|
132
|
+
W = e;
|
|
133
133
|
}
|
|
134
134
|
Math.hypot || (Math.hypot = function() {
|
|
135
135
|
for (var e = 0, t = arguments.length; t--; )
|
|
136
136
|
e += arguments[t] * arguments[t];
|
|
137
137
|
return Math.sqrt(e);
|
|
138
138
|
});
|
|
139
|
-
function
|
|
140
|
-
var e = new
|
|
141
|
-
return
|
|
139
|
+
function Dt() {
|
|
140
|
+
var e = new W(9);
|
|
141
|
+
return W != Float32Array && (e[1] = 0, e[2] = 0, e[3] = 0, e[5] = 0, e[6] = 0, e[7] = 0), e[0] = 1, e[4] = 1, e[8] = 1, e;
|
|
142
142
|
}
|
|
143
143
|
function he() {
|
|
144
|
-
var e = new
|
|
145
|
-
return
|
|
144
|
+
var e = new W(16);
|
|
145
|
+
return W != Float32Array && (e[1] = 0, e[2] = 0, e[3] = 0, e[4] = 0, e[6] = 0, e[7] = 0, e[8] = 0, e[9] = 0, e[11] = 0, e[12] = 0, e[13] = 0, e[14] = 0), e[0] = 1, e[5] = 1, e[10] = 1, e[15] = 1, e;
|
|
146
146
|
}
|
|
147
|
-
function
|
|
147
|
+
function Ot(e) {
|
|
148
148
|
return e[0] = 1, e[1] = 0, e[2] = 0, e[3] = 0, e[4] = 0, e[5] = 1, e[6] = 0, e[7] = 0, e[8] = 0, e[9] = 0, e[10] = 1, e[11] = 0, e[12] = 0, e[13] = 0, e[14] = 0, e[15] = 1, e;
|
|
149
149
|
}
|
|
150
|
-
function
|
|
151
|
-
var n = t[0], i = t[1], r = t[2], s = t[3], o = t[4], c = t[5], a = t[6], f = t[7], l = t[8], h = t[9], u = t[10], d = t[11], p = t[12], _ = t[13], E = t[14], x = t[15], A = n * c - i * o,
|
|
152
|
-
return P ? (P = 1 / P, e[0] = (c * U - a * S + f *
|
|
153
|
-
}
|
|
154
|
-
function Ct(e, t, n) {
|
|
155
|
-
var i = t[0], r = t[1], s = t[2], o = t[3], c = t[4], a = t[5], f = t[6], l = t[7], h = t[8], u = t[9], d = t[10], p = t[11], _ = t[12], E = t[13], x = t[14], A = t[15], M = n[0], v = n[1], m = n[2], T = n[3];
|
|
156
|
-
return e[0] = M * i + v * c + m * h + T * _, e[1] = M * r + v * a + m * u + T * E, e[2] = M * s + v * f + m * d + T * x, e[3] = M * o + v * l + m * p + T * A, M = n[4], v = n[5], m = n[6], T = n[7], e[4] = M * i + v * c + m * h + T * _, e[5] = M * r + v * a + m * u + T * E, e[6] = M * s + v * f + m * d + T * x, e[7] = M * o + v * l + m * p + T * A, M = n[8], v = n[9], m = n[10], T = n[11], e[8] = M * i + v * c + m * h + T * _, e[9] = M * r + v * a + m * u + T * E, e[10] = M * s + v * f + m * d + T * x, e[11] = M * o + v * l + m * p + T * A, M = n[12], v = n[13], m = n[14], T = n[15], e[12] = M * i + v * c + m * h + T * _, e[13] = M * r + v * a + m * u + T * E, e[14] = M * s + v * f + m * d + T * x, e[15] = M * o + v * l + m * p + T * A, e;
|
|
150
|
+
function Ct(e, t) {
|
|
151
|
+
var n = t[0], i = t[1], r = t[2], s = t[3], o = t[4], c = t[5], a = t[6], f = t[7], l = t[8], h = t[9], u = t[10], d = t[11], p = t[12], _ = t[13], E = t[14], x = t[15], A = n * c - i * o, b = n * a - r * o, v = n * f - s * o, m = i * a - r * c, T = i * f - s * c, R = r * f - s * a, y = l * _ - h * p, g = l * E - u * p, w = l * x - d * p, M = h * E - u * _, S = h * x - d * _, U = u * x - d * E, P = A * U - b * S + v * M + m * w - T * g + R * y;
|
|
152
|
+
return P ? (P = 1 / P, e[0] = (c * U - a * S + f * M) * P, e[1] = (r * S - i * U - s * M) * P, e[2] = (_ * R - E * T + x * m) * P, e[3] = (u * T - h * R - d * m) * P, e[4] = (a * w - o * U - f * g) * P, e[5] = (n * U - r * w + s * g) * P, e[6] = (E * v - p * R - x * b) * P, e[7] = (l * R - u * v + d * b) * P, e[8] = (o * S - c * w + f * y) * P, e[9] = (i * w - n * S - s * y) * P, e[10] = (p * T - _ * v + x * A) * P, e[11] = (h * v - l * T - d * A) * P, e[12] = (c * g - o * M - a * y) * P, e[13] = (n * M - i * g + r * y) * P, e[14] = (_ * b - p * m - E * A) * P, e[15] = (l * m - h * b + u * A) * P, e) : null;
|
|
157
153
|
}
|
|
158
154
|
function Xt(e, t, n) {
|
|
155
|
+
var i = t[0], r = t[1], s = t[2], o = t[3], c = t[4], a = t[5], f = t[6], l = t[7], h = t[8], u = t[9], d = t[10], p = t[11], _ = t[12], E = t[13], x = t[14], A = t[15], b = n[0], v = n[1], m = n[2], T = n[3];
|
|
156
|
+
return e[0] = b * i + v * c + m * h + T * _, e[1] = b * r + v * a + m * u + T * E, e[2] = b * s + v * f + m * d + T * x, e[3] = b * o + v * l + m * p + T * A, b = n[4], v = n[5], m = n[6], T = n[7], e[4] = b * i + v * c + m * h + T * _, e[5] = b * r + v * a + m * u + T * E, e[6] = b * s + v * f + m * d + T * x, e[7] = b * o + v * l + m * p + T * A, b = n[8], v = n[9], m = n[10], T = n[11], e[8] = b * i + v * c + m * h + T * _, e[9] = b * r + v * a + m * u + T * E, e[10] = b * s + v * f + m * d + T * x, e[11] = b * o + v * l + m * p + T * A, b = n[12], v = n[13], m = n[14], T = n[15], e[12] = b * i + v * c + m * h + T * _, e[13] = b * r + v * a + m * u + T * E, e[14] = b * s + v * f + m * d + T * x, e[15] = b * o + v * l + m * p + T * A, e;
|
|
157
|
+
}
|
|
158
|
+
function Wt(e, t, n) {
|
|
159
159
|
var i = n[0], r = n[1], s = n[2];
|
|
160
160
|
return e[0] = t[0] * i, e[1] = t[1] * i, e[2] = t[2] * i, e[3] = t[3] * i, e[4] = t[4] * r, e[5] = t[5] * r, e[6] = t[6] * r, e[7] = t[7] * r, e[8] = t[8] * s, e[9] = t[9] * s, e[10] = t[10] * s, e[11] = t[11] * s, e[12] = t[12], e[13] = t[13], e[14] = t[14], e[15] = t[15], e;
|
|
161
161
|
}
|
|
@@ -163,62 +163,62 @@ function Ke(e, t) {
|
|
|
163
163
|
var n = t[0], i = t[1], r = t[2], s = t[3], o = n + n, c = i + i, a = r + r, f = n * o, l = i * o, h = i * c, u = r * o, d = r * c, p = r * a, _ = s * o, E = s * c, x = s * a;
|
|
164
164
|
return e[0] = 1 - h - p, e[1] = l + x, e[2] = u - E, e[3] = 0, e[4] = l - x, e[5] = 1 - f - p, e[6] = d + _, e[7] = 0, e[8] = u + E, e[9] = d - _, e[10] = 1 - f - h, e[11] = 0, e[12] = 0, e[13] = 0, e[14] = 0, e[15] = 1, e;
|
|
165
165
|
}
|
|
166
|
-
function
|
|
166
|
+
function jt(e, t, n, i, r) {
|
|
167
167
|
var s = 1 / Math.tan(t / 2), o;
|
|
168
168
|
return e[0] = s / n, e[1] = 0, e[2] = 0, e[3] = 0, e[4] = 0, e[5] = s, e[6] = 0, e[7] = 0, e[8] = 0, e[9] = 0, e[11] = -1, e[12] = 0, e[13] = 0, e[15] = 0, r != null && r !== 1 / 0 ? (o = 1 / (i - r), e[10] = (r + i) * o, e[14] = 2 * r * i * o) : (e[10] = -1, e[14] = -2 * i), e;
|
|
169
169
|
}
|
|
170
|
-
var
|
|
170
|
+
var Bt = jt;
|
|
171
171
|
function L() {
|
|
172
|
-
var e = new
|
|
173
|
-
return
|
|
172
|
+
var e = new W(3);
|
|
173
|
+
return W != Float32Array && (e[0] = 0, e[1] = 0, e[2] = 0), e;
|
|
174
174
|
}
|
|
175
|
-
function
|
|
176
|
-
var t = new
|
|
175
|
+
function dt(e) {
|
|
176
|
+
var t = new W(3);
|
|
177
177
|
return t[0] = e[0], t[1] = e[1], t[2] = e[2], t;
|
|
178
178
|
}
|
|
179
|
-
function
|
|
179
|
+
function Vt(e) {
|
|
180
180
|
var t = e[0], n = e[1], i = e[2];
|
|
181
181
|
return Math.hypot(t, n, i);
|
|
182
182
|
}
|
|
183
183
|
function st(e, t, n) {
|
|
184
|
-
var i = new
|
|
184
|
+
var i = new W(3);
|
|
185
185
|
return i[0] = e, i[1] = t, i[2] = n, i;
|
|
186
186
|
}
|
|
187
|
-
function
|
|
187
|
+
function Zt(e, t) {
|
|
188
188
|
return e[0] = t[0], e[1] = t[1], e[2] = t[2], e;
|
|
189
189
|
}
|
|
190
|
-
function
|
|
190
|
+
function be(e, t, n, i) {
|
|
191
191
|
return e[0] = t, e[1] = n, e[2] = i, e;
|
|
192
192
|
}
|
|
193
193
|
function re(e, t, n) {
|
|
194
194
|
return e[0] = t[0] + n[0], e[1] = t[1] + n[1], e[2] = t[2] + n[2], e;
|
|
195
195
|
}
|
|
196
|
-
function
|
|
196
|
+
function Yt(e, t, n) {
|
|
197
197
|
return e[0] = t[0] - n[0], e[1] = t[1] - n[1], e[2] = t[2] - n[2], e;
|
|
198
198
|
}
|
|
199
199
|
function de(e, t, n) {
|
|
200
200
|
return e[0] = t[0] * n, e[1] = t[1] * n, e[2] = t[2] * n, e;
|
|
201
201
|
}
|
|
202
|
-
function
|
|
202
|
+
function Me(e, t) {
|
|
203
203
|
var n = t[0] - e[0], i = t[1] - e[1], r = t[2] - e[2];
|
|
204
204
|
return Math.hypot(n, i, r);
|
|
205
205
|
}
|
|
206
|
-
function
|
|
206
|
+
function $t(e, t) {
|
|
207
207
|
var n = t[0], i = t[1], r = t[2], s = n * n + i * i + r * r;
|
|
208
208
|
return s > 0 && (s = 1 / Math.sqrt(s)), e[0] = t[0] * s, e[1] = t[1] * s, e[2] = t[2] * s, e;
|
|
209
209
|
}
|
|
210
|
-
function
|
|
210
|
+
function kt(e, t) {
|
|
211
211
|
return e[0] * t[0] + e[1] * t[1] + e[2] * t[2];
|
|
212
212
|
}
|
|
213
213
|
function Ze(e, t, n) {
|
|
214
214
|
var i = t[0], r = t[1], s = t[2], o = n[0], c = n[1], a = n[2];
|
|
215
215
|
return e[0] = r * a - s * c, e[1] = s * o - i * a, e[2] = i * c - r * o, e;
|
|
216
216
|
}
|
|
217
|
-
function
|
|
217
|
+
function Ht(e, t, n, i) {
|
|
218
218
|
var r = t[0], s = t[1], o = t[2];
|
|
219
219
|
return e[0] = r + i * (n[0] - r), e[1] = s + i * (n[1] - s), e[2] = o + i * (n[2] - o), e;
|
|
220
220
|
}
|
|
221
|
-
var se =
|
|
221
|
+
var se = Yt, Gt = Vt;
|
|
222
222
|
(function() {
|
|
223
223
|
var e = L();
|
|
224
224
|
return function(t, n, i, r, s, o) {
|
|
@@ -229,44 +229,44 @@ var se = Zt, Ht = Bt;
|
|
|
229
229
|
};
|
|
230
230
|
})();
|
|
231
231
|
function ne() {
|
|
232
|
-
var e = new
|
|
233
|
-
return
|
|
232
|
+
var e = new W(4);
|
|
233
|
+
return W != Float32Array && (e[0] = 0, e[1] = 0, e[2] = 0, e[3] = 0), e;
|
|
234
234
|
}
|
|
235
|
-
function
|
|
236
|
-
var t = new
|
|
235
|
+
function mt(e) {
|
|
236
|
+
var t = new W(4);
|
|
237
237
|
return t[0] = e[0], t[1] = e[1], t[2] = e[2], t[3] = e[3], t;
|
|
238
238
|
}
|
|
239
|
-
function
|
|
239
|
+
function Ft(e, t) {
|
|
240
240
|
return e[0] = t[0], e[1] = t[1], e[2] = t[2], e[3] = t[3], e;
|
|
241
241
|
}
|
|
242
242
|
function ot(e, t, n, i, r) {
|
|
243
243
|
return e[0] = t, e[1] = n, e[2] = i, e[3] = r, e;
|
|
244
244
|
}
|
|
245
|
-
function
|
|
245
|
+
function Qt(e, t, n) {
|
|
246
246
|
return e[0] = t[0] + n[0], e[1] = t[1] + n[1], e[2] = t[2] + n[2], e[3] = t[3] + n[3], e;
|
|
247
247
|
}
|
|
248
|
-
function
|
|
248
|
+
function Kt(e, t, n) {
|
|
249
249
|
return e[0] = t[0] - n[0], e[1] = t[1] - n[1], e[2] = t[2] - n[2], e[3] = t[3] - n[3], e;
|
|
250
250
|
}
|
|
251
|
-
function
|
|
251
|
+
function qt(e, t, n) {
|
|
252
252
|
return e[0] = t[0] * n, e[1] = t[1] * n, e[2] = t[2] * n, e[3] = t[3] * n, e;
|
|
253
253
|
}
|
|
254
|
-
function
|
|
254
|
+
function Jt(e, t) {
|
|
255
255
|
var n = t[0] - e[0], i = t[1] - e[1], r = t[2] - e[2], s = t[3] - e[3];
|
|
256
256
|
return Math.hypot(n, i, r, s);
|
|
257
257
|
}
|
|
258
|
-
function
|
|
258
|
+
function en(e, t) {
|
|
259
259
|
var n = t[0], i = t[1], r = t[2], s = t[3], o = n * n + i * i + r * r + s * s;
|
|
260
260
|
return o > 0 && (o = 1 / Math.sqrt(o)), e[0] = n * o, e[1] = i * o, e[2] = r * o, e[3] = s * o, e;
|
|
261
261
|
}
|
|
262
|
-
function
|
|
262
|
+
function tn(e, t) {
|
|
263
263
|
return e[0] * t[0] + e[1] * t[1] + e[2] * t[2] + e[3] * t[3];
|
|
264
264
|
}
|
|
265
265
|
function at(e, t, n) {
|
|
266
266
|
var i = t[0], r = t[1], s = t[2], o = t[3];
|
|
267
267
|
return e[0] = n[0] * i + n[4] * r + n[8] * s + n[12] * o, e[1] = n[1] * i + n[5] * r + n[9] * s + n[13] * o, e[2] = n[2] * i + n[6] * r + n[10] * s + n[14] * o, e[3] = n[3] * i + n[7] * r + n[11] * s + n[15] * o, e;
|
|
268
268
|
}
|
|
269
|
-
var
|
|
269
|
+
var nn = Kt;
|
|
270
270
|
(function() {
|
|
271
271
|
var e = ne();
|
|
272
272
|
return function(t, n, i, r, s, o) {
|
|
@@ -277,23 +277,23 @@ var tn = Qt;
|
|
|
277
277
|
};
|
|
278
278
|
})();
|
|
279
279
|
function He() {
|
|
280
|
-
var e = new
|
|
281
|
-
return
|
|
280
|
+
var e = new W(4);
|
|
281
|
+
return W != Float32Array && (e[0] = 0, e[1] = 0, e[2] = 0), e[3] = 1, e;
|
|
282
282
|
}
|
|
283
|
-
function
|
|
283
|
+
function rn(e, t, n) {
|
|
284
284
|
n = n * 0.5;
|
|
285
285
|
var i = Math.sin(n);
|
|
286
286
|
return e[0] = i * t[0], e[1] = i * t[1], e[2] = i * t[2], e[3] = Math.cos(n), e;
|
|
287
287
|
}
|
|
288
|
-
function
|
|
289
|
-
var n =
|
|
288
|
+
function sn(e, t) {
|
|
289
|
+
var n = cn(e, t);
|
|
290
290
|
return Math.acos(2 * n * n - 1);
|
|
291
291
|
}
|
|
292
292
|
function Ie(e, t, n, i) {
|
|
293
293
|
var r = t[0], s = t[1], o = t[2], c = t[3], a = n[0], f = n[1], l = n[2], h = n[3], u, d, p, _, E;
|
|
294
|
-
return d = r * a + s * f + o * l + c * h, d < 0 && (d = -d, a = -a, f = -f, l = -l, h = -h), 1 - d >
|
|
294
|
+
return d = r * a + s * f + o * l + c * h, d < 0 && (d = -d, a = -a, f = -f, l = -l, h = -h), 1 - d > Nt ? (u = Math.acos(d), p = Math.sin(u), _ = Math.sin((1 - i) * u) / p, E = Math.sin(i * u) / p) : (_ = 1 - i, E = i), e[0] = _ * r + E * a, e[1] = _ * s + E * f, e[2] = _ * o + E * l, e[3] = _ * c + E * h, e;
|
|
295
295
|
}
|
|
296
|
-
function
|
|
296
|
+
function on(e, t) {
|
|
297
297
|
var n = t[0] + t[4] + t[8], i;
|
|
298
298
|
if (n > 0)
|
|
299
299
|
i = Math.sqrt(n + 1), e[3] = 0.5 * i, i = 0.5 / i, e[0] = (t[5] - t[7]) * i, e[1] = (t[6] - t[2]) * i, e[2] = (t[1] - t[3]) * i;
|
|
@@ -305,12 +305,12 @@ function sn(e, t) {
|
|
|
305
305
|
}
|
|
306
306
|
return e;
|
|
307
307
|
}
|
|
308
|
-
var
|
|
308
|
+
var an = mt, cn = tn, pt = en;
|
|
309
309
|
(function() {
|
|
310
310
|
var e = L(), t = st(1, 0, 0), n = st(0, 1, 0);
|
|
311
311
|
return function(i, r, s) {
|
|
312
|
-
var o =
|
|
313
|
-
return o < -0.999999 ? (Ze(e, t, r),
|
|
312
|
+
var o = kt(r, s);
|
|
313
|
+
return o < -0.999999 ? (Ze(e, t, r), Gt(e) < 1e-6 && Ze(e, n, r), $t(e, e), rn(i, e, Math.PI), i) : o > 0.999999 ? (i[0] = 0, i[1] = 0, i[2] = 0, i[3] = 1, i) : (Ze(e, r, s), i[0] = e[0], i[1] = e[1], i[2] = e[2], i[3] = 1 + o, pt(i, i));
|
|
314
314
|
};
|
|
315
315
|
})();
|
|
316
316
|
(function() {
|
|
@@ -320,43 +320,43 @@ var on = dt, an = en, mt = Jt;
|
|
|
320
320
|
};
|
|
321
321
|
})();
|
|
322
322
|
(function() {
|
|
323
|
-
var e =
|
|
323
|
+
var e = Dt();
|
|
324
324
|
return function(t, n, i, r) {
|
|
325
|
-
return e[0] = i[0], e[3] = i[1], e[6] = i[2], e[1] = r[0], e[4] = r[1], e[7] = r[2], e[2] = -n[0], e[5] = -n[1], e[8] = -n[2],
|
|
325
|
+
return e[0] = i[0], e[3] = i[1], e[6] = i[2], e[1] = r[0], e[4] = r[1], e[7] = r[2], e[2] = -n[0], e[5] = -n[1], e[8] = -n[2], pt(t, on(t, e));
|
|
326
326
|
};
|
|
327
327
|
})();
|
|
328
328
|
function ve() {
|
|
329
|
-
var e = new
|
|
330
|
-
return
|
|
329
|
+
var e = new W(2);
|
|
330
|
+
return W != Float32Array && (e[0] = 0, e[1] = 0), e;
|
|
331
331
|
}
|
|
332
|
-
function
|
|
333
|
-
var t = new
|
|
332
|
+
function fn(e) {
|
|
333
|
+
var t = new W(2);
|
|
334
334
|
return t[0] = e[0], t[1] = e[1], t;
|
|
335
335
|
}
|
|
336
|
-
function
|
|
336
|
+
function ln(e, t) {
|
|
337
337
|
return e[0] = t[0], e[1] = t[1], e;
|
|
338
338
|
}
|
|
339
|
-
function
|
|
339
|
+
function un(e, t, n) {
|
|
340
340
|
return e[0] = t, e[1] = n, e;
|
|
341
341
|
}
|
|
342
|
-
function
|
|
342
|
+
function hn(e, t, n) {
|
|
343
343
|
return e[0] = t[0] + n[0], e[1] = t[1] + n[1], e;
|
|
344
344
|
}
|
|
345
|
-
function
|
|
345
|
+
function dn(e, t, n) {
|
|
346
346
|
return e[0] = t[0] - n[0], e[1] = t[1] - n[1], e;
|
|
347
347
|
}
|
|
348
|
-
function
|
|
348
|
+
function mn(e, t, n) {
|
|
349
349
|
return e[0] = t[0] * n, e[1] = t[1] * n, e;
|
|
350
350
|
}
|
|
351
|
-
function
|
|
351
|
+
function pn(e, t) {
|
|
352
352
|
var n = t[0] - e[0], i = t[1] - e[1];
|
|
353
353
|
return Math.hypot(n, i);
|
|
354
354
|
}
|
|
355
|
-
function
|
|
355
|
+
function vn(e, t) {
|
|
356
356
|
var n = t[0] - e[0], i = t[1] - e[1];
|
|
357
357
|
return n * n + i * i;
|
|
358
358
|
}
|
|
359
|
-
var
|
|
359
|
+
var xn = dn;
|
|
360
360
|
(function() {
|
|
361
361
|
var e = ve();
|
|
362
362
|
return function(t, n, i, r, s, o) {
|
|
@@ -366,86 +366,86 @@ var vn = hn;
|
|
|
366
366
|
return t;
|
|
367
367
|
};
|
|
368
368
|
})();
|
|
369
|
-
const
|
|
369
|
+
const F = 40075017, De = (e) => e / 180 * Math.PI, En = (e) => e * 180 / Math.PI, _n = (e, t, n) => {
|
|
370
370
|
const i = Math.sqrt(t * t - 4 * e * n);
|
|
371
371
|
return [(-t - i) / (2 * e), (-t + i) / (2 * e)];
|
|
372
|
-
},
|
|
372
|
+
}, yn = (e, t, n) => Math.min(Math.max(e, t), n), ct = Math.atan(Math.sinh(Math.PI)), z = ([e = 0, t = 0, n = 0], i = L()) => be(
|
|
373
373
|
i,
|
|
374
374
|
e / 360 + 0.5,
|
|
375
|
-
-Math.asinh(Math.tan(
|
|
376
|
-
n /
|
|
377
|
-
), oe = ([e = 0, t = 0, n = 0], i = L()) =>
|
|
375
|
+
-Math.asinh(Math.tan(yn(De(t), -ct, ct))) / (2 * Math.PI) + 0.5,
|
|
376
|
+
n / F
|
|
377
|
+
), oe = ([e = 0, t = 0, n = 0], i = L()) => be(
|
|
378
378
|
i,
|
|
379
379
|
(e - 0.5) * 360,
|
|
380
|
-
|
|
381
|
-
n *
|
|
382
|
-
),
|
|
380
|
+
En(Math.atan(Math.sinh(-(t - 0.5) * (2 * Math.PI)))),
|
|
381
|
+
n * F
|
|
382
|
+
), vt = ([e = 0, t = 0, n = 0], i = L()) => {
|
|
383
383
|
const r = 2 ** -n;
|
|
384
|
-
return
|
|
385
|
-
},
|
|
384
|
+
return be(i, e * r, t * r, 0);
|
|
385
|
+
}, xt = ([e = 0, t = 0, n = 0]) => {
|
|
386
386
|
const i = Math.cos(e * 0.5), r = Math.sin(e * 0.5), s = Math.cos(t * 0.5), o = Math.sin(t * 0.5), c = Math.cos(n * 0.5), a = Math.sin(n * 0.5), f = r * s * c + i * o * a, l = i * o * c - r * s * a, h = i * s * a + r * o * c, u = i * s * c - r * o * a;
|
|
387
387
|
return [f, l, h, u];
|
|
388
|
-
},
|
|
388
|
+
}, Tn = ([e = 0, t = 0, n = 0, i = 0]) => {
|
|
389
389
|
const r = (a, f, l) => Math.max(f, Math.min(a, l)), s = Math.atan2(2 * (i * e - t * n), 1 - 2 * (e * e + t * t)), o = Math.asin(r(2 * (i * t + n * e), -1, 1)), c = Math.atan2(2 * (i * n - e * t), 1 - 2 * (t * t + n * n));
|
|
390
390
|
return [s, o, c];
|
|
391
|
-
},
|
|
391
|
+
}, Et = {
|
|
392
392
|
target: [0, 0, 0],
|
|
393
393
|
offset: [0, 0],
|
|
394
|
-
distance:
|
|
394
|
+
distance: F,
|
|
395
395
|
orientation: [0, 0, 0],
|
|
396
396
|
fieldOfView: 45
|
|
397
397
|
}, te = (e, t) => {
|
|
398
398
|
const { target: n, offset: i, distance: r, orientation: s, fieldOfView: o } = {
|
|
399
|
-
...
|
|
399
|
+
...Et,
|
|
400
400
|
...e
|
|
401
|
-
}, [c = 0, a = 0] = t, [f = 0, l = 0] = i, h = Math.tan(De(45) / 2) / Math.tan(De(o) / 2), u = r /
|
|
402
|
-
|
|
401
|
+
}, [c = 0, a = 0] = t, [f = 0, l = 0] = i, h = Math.tan(De(45) / 2) / Math.tan(De(o) / 2), u = r / F, d = Math.max(1e3 / F, u), p = 1e3, _ = 1e-3, E = d * p * h, x = d * _ * h, A = ne(), b = he();
|
|
402
|
+
Ot(b), Bt(b, De(o), c / a, x, E), Wt(b, b, [1, -1, 1]);
|
|
403
403
|
const v = he();
|
|
404
|
-
Ke(v,
|
|
405
|
-
const m =
|
|
404
|
+
Ke(v, xt(s));
|
|
405
|
+
const m = Xt(he(), b, v), T = Ct(he(), m);
|
|
406
406
|
if (!T)
|
|
407
407
|
throw new Error("No inverse");
|
|
408
408
|
const R = (O) => {
|
|
409
|
-
const
|
|
410
|
-
return te({ ...e, offset:
|
|
411
|
-
}, y = ([O = 0,
|
|
412
|
-
const
|
|
413
|
-
return ot(
|
|
414
|
-
}, g = ([O = 0,
|
|
415
|
-
const [
|
|
416
|
-
return
|
|
417
|
-
},
|
|
418
|
-
(X - P) ** 2 + (C - N) ** 2 + (
|
|
419
|
-
2 * (P * (X - P) + N * (C - N) + I * (
|
|
409
|
+
const Z = [c * O, a * O], H = [f * O, l * O];
|
|
410
|
+
return te({ ...e, offset: H }, Z);
|
|
411
|
+
}, y = ([O = 0, Z = 0], H = ne()) => {
|
|
412
|
+
const Q = 2 * O / c - 1, Te = -(2 * Z / a - 1);
|
|
413
|
+
return ot(H, Q, Te, 0, 1);
|
|
414
|
+
}, g = ([O = 0, Z = 0, , H = 0], Q = ve()) => H < 0 ? Q : un(Q, (1 + O / H) * c * 0.5, (1 - Z / H) * a * 0.5), w = (O, Z = L()) => {
|
|
415
|
+
const [H = 0, Q = 0, Te = 0, we = 0] = at(A, O, T);
|
|
416
|
+
return be(Z, H / we, Q / we, Te / we);
|
|
417
|
+
}, M = ([O = 0, Z = 0, H = 0], Q = ne()) => at(Q, ot(Q, O, Z, H, 1), m), [S = 0, U = 0] = y([f + c / 2, l + a / 2]), [P = 0, N = 0, I = 0] = w([S, U, -1, 1]), [X = 0, C = 0, Y = 0] = w([S, U, 1.00001, 1]), [j = 0] = _n(
|
|
418
|
+
(X - P) ** 2 + (C - N) ** 2 + (Y - I) ** 2,
|
|
419
|
+
2 * (P * (X - P) + N * (C - N) + I * (Y - I)),
|
|
420
420
|
P ** 2 + N ** 2 + I ** 2 - (u * h) ** 2
|
|
421
421
|
);
|
|
422
|
-
if (isNaN(
|
|
422
|
+
if (isNaN(j))
|
|
423
423
|
throw new Error("Unexpected");
|
|
424
|
-
const
|
|
425
|
-
P +
|
|
426
|
-
N +
|
|
427
|
-
I +
|
|
428
|
-
], J = se(L(), z(n),
|
|
424
|
+
const q = [
|
|
425
|
+
P + j * (X - P),
|
|
426
|
+
N + j * (C - N),
|
|
427
|
+
I + j * (Y - I)
|
|
428
|
+
], J = se(L(), z(n), q), $ = (O, Z = L()) => re(Z, O, J), k = (O, Z = L()) => se(Z, O, J);
|
|
429
429
|
return {
|
|
430
430
|
camera: J,
|
|
431
431
|
screen: t,
|
|
432
|
-
projection:
|
|
432
|
+
projection: b,
|
|
433
433
|
modelView: v,
|
|
434
434
|
fieldScale: h,
|
|
435
435
|
scale: R,
|
|
436
436
|
screenToClip: y,
|
|
437
437
|
clipToScreen: g,
|
|
438
438
|
clipToLocal: w,
|
|
439
|
-
localToClip:
|
|
440
|
-
localToWorld:
|
|
441
|
-
worldToLocal:
|
|
442
|
-
project: (O) => g(
|
|
443
|
-
unproject: (O, { targetZ:
|
|
444
|
-
const
|
|
445
|
-
return
|
|
439
|
+
localToClip: M,
|
|
440
|
+
localToWorld: $,
|
|
441
|
+
worldToLocal: k,
|
|
442
|
+
project: (O) => g(M(k(z(O)))),
|
|
443
|
+
unproject: (O, { targetZ: Z = 0 } = {}) => {
|
|
444
|
+
const H = y(O), [Q = 0, Te = 0, , we = 0] = H, St = [Q, Te, -1, we], tt = oe($(w(H))), nt = oe($(w(St))), [, , Ve = 0] = tt, [, , it = 0] = nt, Ut = Ve === it ? 0 : (Z - Ve) / (it - Ve);
|
|
445
|
+
return Ht(L(), tt, nt, Ut);
|
|
446
446
|
}
|
|
447
447
|
};
|
|
448
|
-
},
|
|
448
|
+
}, wn = 100, Si = (e, t, n) => {
|
|
449
449
|
const {
|
|
450
450
|
enabled: i = () => !0,
|
|
451
451
|
draggable: r = () => !0,
|
|
@@ -457,13 +457,13 @@ const Q = 40075017, De = (e) => e / 180 * Math.PI, xn = (e) => e * 180 / Math.PI
|
|
|
457
457
|
const [R, y] = [
|
|
458
458
|
e.width / devicePixelRatio,
|
|
459
459
|
e.height / devicePixelRatio
|
|
460
|
-
], { camera: g, fieldScale: w } = te(f(), [R, y]), { position:
|
|
460
|
+
], { camera: g, fieldScale: w } = te(f(), [R, y]), { position: M, layer: S } = t.pick([m, T]);
|
|
461
461
|
if (!S)
|
|
462
462
|
return;
|
|
463
|
-
const U =
|
|
463
|
+
const U = Me(z(M), g) * F / w, P = [m - R / 2, T - y / 2];
|
|
464
464
|
o({
|
|
465
465
|
offset: P,
|
|
466
|
-
target:
|
|
466
|
+
target: M,
|
|
467
467
|
distance: U
|
|
468
468
|
});
|
|
469
469
|
}, h = (m, T) => {
|
|
@@ -484,10 +484,10 @@ const Q = 40075017, De = (e) => e / 180 * Math.PI, xn = (e) => e * 180 / Math.PI
|
|
|
484
484
|
const [g, w] = [
|
|
485
485
|
e.width / devicePixelRatio,
|
|
486
486
|
e.height / devicePixelRatio
|
|
487
|
-
], [
|
|
487
|
+
], [M = 0, S = 0, U = 0] = f().orientation ?? [], P = [
|
|
488
488
|
Math.min(
|
|
489
489
|
Math.PI / 2 - 0.1,
|
|
490
|
-
Math.max(0.1,
|
|
490
|
+
Math.max(0.1, M - y / w * Math.PI)
|
|
491
491
|
),
|
|
492
492
|
S,
|
|
493
493
|
U - R / g * Math.PI
|
|
@@ -506,22 +506,22 @@ const Q = 40075017, De = (e) => e / 180 * Math.PI, xn = (e) => e * 180 / Math.PI
|
|
|
506
506
|
return;
|
|
507
507
|
const { clientX: R, clientY: y } = T;
|
|
508
508
|
h(R, y);
|
|
509
|
-
}, E =
|
|
509
|
+
}, E = Pt(() => c = !1, 100), x = ({ x: m, y: T, deltaY: R }) => {
|
|
510
510
|
if (!i())
|
|
511
511
|
return;
|
|
512
512
|
c || (r() && l([m, T]), c = !0);
|
|
513
|
-
let { distance: y } = { ...
|
|
513
|
+
let { distance: y } = { ...Et, ...f() };
|
|
514
514
|
y = Math.min(
|
|
515
|
-
Math.max(y * Math.exp(R * 1e-3),
|
|
516
|
-
|
|
515
|
+
Math.max(y * Math.exp(R * 1e-3), wn),
|
|
516
|
+
F
|
|
517
517
|
), o({ distance: y }), E();
|
|
518
|
-
}, A = (m) => m.preventDefault(),
|
|
519
|
-
return e.addEventListener("mousedown", d), e.addEventListener("mousemove", p), e.addEventListener("touchstart", d, { passive: !1 }), e.addEventListener("touchmove", _, { passive: !1 }), e.addEventListener("gesturestart", A), e.addEventListener("wheel", x, { passive: !0 }), e.addEventListener("contextmenu",
|
|
518
|
+
}, A = (m) => m.preventDefault(), b = (m) => m.preventDefault();
|
|
519
|
+
return e.addEventListener("mousedown", d), e.addEventListener("mousemove", p), e.addEventListener("touchstart", d, { passive: !1 }), e.addEventListener("touchmove", _, { passive: !1 }), e.addEventListener("gesturestart", A), e.addEventListener("wheel", x, { passive: !0 }), e.addEventListener("contextmenu", b), {
|
|
520
520
|
dispose: () => {
|
|
521
|
-
e.removeEventListener("mousedown", d), e.removeEventListener("mousemove", p), e.removeEventListener("touchstart", d), e.removeEventListener("touchmove", _), e.removeEventListener("gesturestart", A), e.removeEventListener("wheel", x), e.removeEventListener("contextmenu",
|
|
521
|
+
e.removeEventListener("mousedown", d), e.removeEventListener("mousemove", p), e.removeEventListener("touchstart", d), e.removeEventListener("touchmove", _), e.removeEventListener("gesturestart", A), e.removeEventListener("wheel", x), e.removeEventListener("contextmenu", b);
|
|
522
522
|
}
|
|
523
523
|
};
|
|
524
|
-
},
|
|
524
|
+
}, V = ({
|
|
525
525
|
gl: e,
|
|
526
526
|
type: t,
|
|
527
527
|
target: n
|
|
@@ -541,7 +541,7 @@ const Q = 40075017, De = (e) => e / 180 * Math.PI, xn = (e) => e * 180 / Math.PI
|
|
|
541
541
|
use: s,
|
|
542
542
|
dispose: () => e.deleteBuffer(i)
|
|
543
543
|
};
|
|
544
|
-
}, Ye = 2 ** 30,
|
|
544
|
+
}, Ye = 2 ** 30, K = ([e = 0, t = 0, n = 0]) => [Math.floor(e * Ye), Math.floor(t * Ye), Math.floor(n * Ye)], Ee = (e, t, n) => {
|
|
545
545
|
const { pickable: i, depth: r, polygonOffset: s } = {
|
|
546
546
|
pickable: () => !0,
|
|
547
547
|
depth: () => !0,
|
|
@@ -581,8 +581,8 @@ vec2 pack_index(in int index) {
|
|
|
581
581
|
void main(void) {
|
|
582
582
|
result = vec4(pack_depth(gl_FragCoord.z), pack_index(index));
|
|
583
583
|
}`;
|
|
584
|
-
const
|
|
585
|
-
function
|
|
584
|
+
const _t = "KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2FkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLGFzeW5jIG49Pntjb25zdFtpLHRdPW4uZGF0YTtpZihpIT09ImxvYWQiKXJldHVybjtjb25zdCBvPW5ldyBBYm9ydENvbnRyb2xsZXIse3NpZ25hbDpjfT1vLHI9ZT0+e2NvbnN0W3MsYV09ZS5kYXRhO3M9PT0iY2FuY2VsIiYmYT09PXQmJm8uYWJvcnQoKX07YWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIscik7dHJ5e2NvbnN0IGU9YXdhaXQgZmV0Y2godCx7bW9kZToiY29ycyIsc2lnbmFsOmN9KTtpZighZS5vayl7cG9zdE1lc3NhZ2Uoe3VybDp0LGltYWdlOnZvaWQgMH0pO3JldHVybn1jb25zdCBzPWF3YWl0IGUuYmxvYigpLGE9YXdhaXQgY3JlYXRlSW1hZ2VCaXRtYXAocyk7cG9zdE1lc3NhZ2Uoe3VybDp0LGltYWdlOmF9KX1jYXRjaChlKXtpZighKGUgaW5zdGFuY2VvZiBFcnJvcikpdGhyb3cgZTtpZihlLm1lc3NhZ2U9PT0iVGhlIHVzZXIgYWJvcnRlZCBhIHJlcXVlc3QuInx8ZS5tZXNzYWdlLnN0YXJ0c1dpdGgoInNpZ25hbCBpcyBhYm9ydGVkIHdpdGhvdXQgcmVhc29uIikpcmV0dXJuO2lmKGUubWVzc2FnZT09PSJGYWlsZWQgdG8gZmV0Y2giKXtwb3N0TWVzc2FnZSh7dXJsOnQsaW1hZ2U6dm9pZCAwfSk7cmV0dXJufXRocm93IGV9ZmluYWxseXtyZW1vdmVFdmVudExpc3RlbmVyKCJtZXNzYWdlIixyKX19KX0pKCk7Ci8vIyBzb3VyY2VNYXBwaW5nVVJMPWltYWdlLWxvYWQtd29ya2VyLWR6cmprQ3RLLmpzLm1hcAo=", ft = typeof window < "u" && window.Blob && new Blob([atob(_t)], { type: "text/javascript;charset=utf-8" });
|
|
585
|
+
function gn(e) {
|
|
586
586
|
let t;
|
|
587
587
|
try {
|
|
588
588
|
if (t = ft && (window.URL || window.webkitURL).createObjectURL(ft), !t)
|
|
@@ -595,7 +595,7 @@ function wn(e) {
|
|
|
595
595
|
}), n;
|
|
596
596
|
} catch {
|
|
597
597
|
return new Worker(
|
|
598
|
-
"data:text/javascript;base64," +
|
|
598
|
+
"data:text/javascript;base64," + _t,
|
|
599
599
|
{
|
|
600
600
|
name: e?.name
|
|
601
601
|
}
|
|
@@ -604,7 +604,7 @@ function wn(e) {
|
|
|
604
604
|
t && (window.URL || window.webkitURL).revokeObjectURL(t);
|
|
605
605
|
}
|
|
606
606
|
}
|
|
607
|
-
const Pe =
|
|
607
|
+
const Pe = gn(), Rn = ({
|
|
608
608
|
url: e,
|
|
609
609
|
onLoad: t
|
|
610
610
|
}) => {
|
|
@@ -623,7 +623,7 @@ const Pe = wn(), gn = ({
|
|
|
623
623
|
},
|
|
624
624
|
cancel: s
|
|
625
625
|
};
|
|
626
|
-
},
|
|
626
|
+
}, yt = (e) => {
|
|
627
627
|
const t = e.createTexture();
|
|
628
628
|
if (!t)
|
|
629
629
|
throw new Error("Texture creation failed");
|
|
@@ -637,12 +637,12 @@ const Pe = wn(), gn = ({
|
|
|
637
637
|
0
|
|
638
638
|
);
|
|
639
639
|
}, dispose: () => e.deleteTexture(t) };
|
|
640
|
-
},
|
|
640
|
+
}, Tt = ({
|
|
641
641
|
gl: e,
|
|
642
642
|
url: t,
|
|
643
643
|
onLoad: n
|
|
644
644
|
}) => {
|
|
645
|
-
const i =
|
|
645
|
+
const i = yt(e), r = Rn({
|
|
646
646
|
url: t,
|
|
647
647
|
onLoad: (a) => {
|
|
648
648
|
a && (i.use(), e.texImage2D(
|
|
@@ -666,7 +666,7 @@ const Pe = wn(), gn = ({
|
|
|
666
666
|
}
|
|
667
667
|
};
|
|
668
668
|
};
|
|
669
|
-
var
|
|
669
|
+
var An = `#version 300 es
|
|
670
670
|
|
|
671
671
|
precision highp float;
|
|
672
672
|
|
|
@@ -678,7 +678,7 @@ out vec4 result;
|
|
|
678
678
|
void main() {
|
|
679
679
|
result = texture(image, uv_out) * color_out;
|
|
680
680
|
if (result.a == 0.f) discard;
|
|
681
|
-
}`,
|
|
681
|
+
}`, bn = `#version 300 es
|
|
682
682
|
|
|
683
683
|
precision highp float;
|
|
684
684
|
|
|
@@ -713,10 +713,10 @@ void main(void) {
|
|
|
713
713
|
uv_out = uv;
|
|
714
714
|
color_out = color;
|
|
715
715
|
}`;
|
|
716
|
-
const
|
|
716
|
+
const Ui = (e, t = {}) => {
|
|
717
717
|
const { gl: n } = e;
|
|
718
718
|
let i, r = [0, 0];
|
|
719
|
-
const s =
|
|
719
|
+
const s = V({ gl: n, type: "f32", target: "array" }), o = V({ gl: n, type: "f32", target: "array" }), c = V({ gl: n, type: "u16", target: "element" });
|
|
720
720
|
s.set(
|
|
721
721
|
[
|
|
722
722
|
[-1, -1],
|
|
@@ -740,7 +740,7 @@ const Si = (e, t = {}) => {
|
|
|
740
740
|
const a = ce(
|
|
741
741
|
() => t.url?.() ?? "",
|
|
742
742
|
(p) => {
|
|
743
|
-
const _ =
|
|
743
|
+
const _ = Tt({
|
|
744
744
|
gl: n,
|
|
745
745
|
url: p,
|
|
746
746
|
onLoad: ({ width: E, height: x }) => {
|
|
@@ -755,7 +755,7 @@ const Si = (e, t = {}) => {
|
|
|
755
755
|
}), h = ({
|
|
756
756
|
viewport: { projection: p, modelView: _, camera: E, screen: x },
|
|
757
757
|
depth: A = !1,
|
|
758
|
-
index:
|
|
758
|
+
index: b = 0
|
|
759
759
|
}) => {
|
|
760
760
|
const v = t.position?.() ?? [0, 0, 0], m = t.color?.() ?? [1, 1, 1, 1], T = t.size?.() ?? 100, R = t.minSizePixels?.() ?? 0, y = t.maxSizePixels?.() ?? Number.MAX_VALUE;
|
|
761
761
|
if (a(), !i || Ee(n, A, t))
|
|
@@ -763,16 +763,16 @@ const Si = (e, t = {}) => {
|
|
|
763
763
|
(A ? l : f).execute({
|
|
764
764
|
projection: p,
|
|
765
765
|
modelView: _,
|
|
766
|
-
camera:
|
|
766
|
+
camera: K(E),
|
|
767
767
|
screen: x,
|
|
768
768
|
image: i,
|
|
769
769
|
imageSize: r,
|
|
770
|
-
position:
|
|
770
|
+
position: K(z(v)),
|
|
771
771
|
color: m,
|
|
772
772
|
size: T,
|
|
773
773
|
minSizePixels: R,
|
|
774
774
|
maxSizePixels: y,
|
|
775
|
-
index:
|
|
775
|
+
index: b
|
|
776
776
|
});
|
|
777
777
|
}, u = () => {
|
|
778
778
|
s.dispose(), o.dispose(), c.dispose(), i?.dispose();
|
|
@@ -789,17 +789,17 @@ const Si = (e, t = {}) => {
|
|
|
789
789
|
}) => {
|
|
790
790
|
const s = (a = !1) => {
|
|
791
791
|
const f = t.get({
|
|
792
|
-
vertexSource:
|
|
793
|
-
fragmentSource: a ? _e :
|
|
792
|
+
vertexSource: bn,
|
|
793
|
+
fragmentSource: a ? _e : An
|
|
794
794
|
}), l = f.attribute2f("corner", n, {
|
|
795
795
|
stride: 2 * Float32Array.BYTES_PER_ELEMENT
|
|
796
796
|
}), h = f.attribute2f("uv", i, {
|
|
797
797
|
stride: 2 * Float32Array.BYTES_PER_ELEMENT
|
|
798
|
-
}), u = f.uniformMatrix4f("projection"), d = f.uniformMatrix4f("model_view"), p = f.uniform3i("camera"), _ = f.uniform2f("screen"), E = f.uniform1i("image"), x = f.uniform2f("image_size"), A = f.uniform3i("position"),
|
|
798
|
+
}), u = f.uniformMatrix4f("projection"), d = f.uniformMatrix4f("model_view"), p = f.uniform3i("camera"), _ = f.uniform2f("screen"), E = f.uniform1i("image"), x = f.uniform2f("image_size"), A = f.uniform3i("position"), b = f.uniform4f("color"), v = f.uniform1i("index"), m = f.uniform1f("size"), T = f.uniform1f("min_size_pixels"), R = f.uniform1f("max_size_pixels");
|
|
799
799
|
return { execute: ({
|
|
800
800
|
projection: g,
|
|
801
801
|
modelView: w,
|
|
802
|
-
camera:
|
|
802
|
+
camera: M,
|
|
803
803
|
screen: S,
|
|
804
804
|
image: U,
|
|
805
805
|
imageSize: P,
|
|
@@ -807,17 +807,17 @@ const Si = (e, t = {}) => {
|
|
|
807
807
|
color: I,
|
|
808
808
|
size: X,
|
|
809
809
|
minSizePixels: C,
|
|
810
|
-
maxSizePixels:
|
|
811
|
-
index:
|
|
810
|
+
maxSizePixels: Y,
|
|
811
|
+
index: j
|
|
812
812
|
}) => {
|
|
813
|
-
f.use(), l.use(), h.use(), u.set(g), d.set(w), p.set(
|
|
813
|
+
f.use(), l.use(), h.use(), u.set(g), d.set(w), p.set(M), _.set(S), x.set(P), A.set(N), b.set(I), m.set(X), T.set(C), R.set(Y), v.set(j), e.activeTexture(e.TEXTURE0), E.set(0), U.use(), r.use(), e.drawElements(e.TRIANGLES, 6, e.UNSIGNED_SHORT, 0);
|
|
814
814
|
} };
|
|
815
815
|
}, o = s(), c = s(!0);
|
|
816
816
|
return { renderProgram: o, depthProgram: c };
|
|
817
|
-
},
|
|
817
|
+
}, Pi = (e) => ({
|
|
818
818
|
children: e,
|
|
819
819
|
dispose: () => e.forEach((n) => n.dispose())
|
|
820
|
-
}),
|
|
820
|
+
}), zi = (e) => {
|
|
821
821
|
const { keys: t, create: n } = e, i = /* @__PURE__ */ new Map();
|
|
822
822
|
return {
|
|
823
823
|
get children() {
|
|
@@ -833,13 +833,13 @@ const Si = (e, t = {}) => {
|
|
|
833
833
|
},
|
|
834
834
|
dispose: () => Object.values(i).forEach((o) => o.dispose())
|
|
835
835
|
};
|
|
836
|
-
},
|
|
836
|
+
}, Li = (e) => ({
|
|
837
837
|
render: e,
|
|
838
838
|
dispose: () => {
|
|
839
839
|
}
|
|
840
|
-
}),
|
|
840
|
+
}), Ni = () => ({ dispose: () => {
|
|
841
841
|
} });
|
|
842
|
-
var
|
|
842
|
+
var Sn = `#version 300 es
|
|
843
843
|
|
|
844
844
|
precision highp float;
|
|
845
845
|
|
|
@@ -856,7 +856,7 @@ void main() {
|
|
|
856
856
|
result = color_out * texture(
|
|
857
857
|
dash,
|
|
858
858
|
vec2(fract((distance_out / dash_size) - dash_offset), 0.0));;
|
|
859
|
-
}`,
|
|
859
|
+
}`, Un = `#version 300 es
|
|
860
860
|
|
|
861
861
|
precision highp float;
|
|
862
862
|
|
|
@@ -923,30 +923,30 @@ void main(void) {
|
|
|
923
923
|
color_out = color;
|
|
924
924
|
distance_out = distance;
|
|
925
925
|
}`;
|
|
926
|
-
const
|
|
926
|
+
const Ii = (e, t = {}) => {
|
|
927
927
|
const { gl: n } = e;
|
|
928
928
|
let i = 0;
|
|
929
|
-
const r =
|
|
929
|
+
const r = V({ gl: n, type: "i32", target: "array" }), s = V({ gl: n, type: "u16", target: "element" }), o = V({ gl: n, type: "f32", target: "array" }), c = V({ gl: n, type: "f32", target: "array" }), { renderProgram: a, depthProgram: f } = Pn(e, {
|
|
930
930
|
positionBuffer: r,
|
|
931
931
|
indexBuffer: s,
|
|
932
932
|
cornerBuffer: o,
|
|
933
933
|
distanceBuffer: c
|
|
934
|
-
}), l =
|
|
934
|
+
}), l = yt(n);
|
|
935
935
|
l.use(), n.texParameteri(n.TEXTURE_2D, n.TEXTURE_MIN_FILTER, n.LINEAR), n.texParameteri(n.TEXTURE_2D, n.TEXTURE_MAG_FILTER, n.LINEAR), n.texParameteri(n.TEXTURE_2D, n.TEXTURE_WRAP_S, n.CLAMP_TO_EDGE), n.texParameteri(n.TEXTURE_2D, n.TEXTURE_WRAP_T, n.REPEAT);
|
|
936
936
|
const h = ({
|
|
937
|
-
viewport: { projection: E, modelView: x, camera: A, screen:
|
|
937
|
+
viewport: { projection: E, modelView: x, camera: A, screen: b },
|
|
938
938
|
depth: v = !1,
|
|
939
939
|
index: m = 0
|
|
940
940
|
}) => {
|
|
941
941
|
u(), d();
|
|
942
|
-
const T = t.color?.() ?? [1, 1, 1, 1], R = t.width?.() ?? 1, y = t.minWidthPixels?.() ?? 0, g = t.maxWidthPixels?.() ?? Number.MAX_VALUE, w = t.depthWidthPixels?.(),
|
|
942
|
+
const T = t.color?.() ?? [1, 1, 1, 1], R = t.width?.() ?? 1, y = t.minWidthPixels?.() ?? 0, g = t.maxWidthPixels?.() ?? Number.MAX_VALUE, w = t.depthWidthPixels?.(), M = t.dashSize?.() ?? 1e3, S = t.dashOffset?.() ?? 0;
|
|
943
943
|
if (Ee(n, v, t))
|
|
944
944
|
return;
|
|
945
945
|
(v ? f : a).execute({
|
|
946
946
|
projection: E,
|
|
947
947
|
modelView: x,
|
|
948
|
-
camera:
|
|
949
|
-
screen:
|
|
948
|
+
camera: K(A),
|
|
949
|
+
screen: b,
|
|
950
950
|
count: i,
|
|
951
951
|
color: T,
|
|
952
952
|
width: R,
|
|
@@ -954,7 +954,7 @@ const Ni = (e, t = {}) => {
|
|
|
954
954
|
maxWidthPixels: v && w !== void 0 ? Math.max(g, w) : g,
|
|
955
955
|
index: m,
|
|
956
956
|
dash: l,
|
|
957
|
-
dashSize:
|
|
957
|
+
dashSize: M,
|
|
958
958
|
dashOffset: S
|
|
959
959
|
});
|
|
960
960
|
}, u = ce(
|
|
@@ -964,26 +964,26 @@ const Ni = (e, t = {}) => {
|
|
|
964
964
|
const [T] = m, [R] = m.slice(-1);
|
|
965
965
|
return !T || !R ? [] : ((g) => {
|
|
966
966
|
const w = new Array(g.length * 3 * 4);
|
|
967
|
-
for (let
|
|
968
|
-
const [S = 0, U = 0, P = 0] = g[
|
|
967
|
+
for (let M = 0; M < g.length; M++) {
|
|
968
|
+
const [S = 0, U = 0, P = 0] = g[M] ?? [];
|
|
969
969
|
for (let N = 0; N < 4; N++) {
|
|
970
|
-
const I =
|
|
970
|
+
const I = M * 3 * 4 + N * 3;
|
|
971
971
|
w[I + 0] = S, w[I + 1] = U, w[I + 2] = P;
|
|
972
972
|
}
|
|
973
973
|
}
|
|
974
974
|
return w;
|
|
975
|
-
})([T, ...m, R].map((g) =>
|
|
975
|
+
})([T, ...m, R].map((g) => K(z(g))));
|
|
976
976
|
}), { indexData: A } = E.reduce(
|
|
977
977
|
({ indexData: m, count: T }, R) => {
|
|
978
978
|
if (R.length === 0)
|
|
979
979
|
return { indexData: m, count: T };
|
|
980
980
|
const y = xe(0, (R.length - 1) * 2).flatMap((g) => {
|
|
981
|
-
const [w = 0,
|
|
981
|
+
const [w = 0, M = 0, S = 0, U = 0] = [0, 1, 2, 3].map(
|
|
982
982
|
(P) => P + g * 2 + T
|
|
983
983
|
);
|
|
984
984
|
return [
|
|
985
985
|
w,
|
|
986
|
-
|
|
986
|
+
M,
|
|
987
987
|
U,
|
|
988
988
|
/**/
|
|
989
989
|
w,
|
|
@@ -996,7 +996,7 @@ const Ni = (e, t = {}) => {
|
|
|
996
996
|
{ indexData: [], count: 0 }
|
|
997
997
|
);
|
|
998
998
|
i = A.length;
|
|
999
|
-
const
|
|
999
|
+
const b = E.flatMap(
|
|
1000
1000
|
(m) => m.length === 0 ? [] : xe(0, (m.length + 1) * 2).flatMap(() => [
|
|
1001
1001
|
-1,
|
|
1002
1002
|
-1,
|
|
@@ -1012,19 +1012,19 @@ const Ni = (e, t = {}) => {
|
|
|
1012
1012
|
])
|
|
1013
1013
|
), v = E.flatMap((m) => {
|
|
1014
1014
|
const R = m.map(
|
|
1015
|
-
(
|
|
1015
|
+
(M, S) => Me(z(M), z(m[S - 1] ?? M)) * F
|
|
1016
1016
|
).reduce(
|
|
1017
|
-
({ current:
|
|
1017
|
+
({ current: M, result: S }, U) => (M += U, S.push(M), { current: M, result: S }),
|
|
1018
1018
|
{ current: 0, result: [] }
|
|
1019
1019
|
).result, [y] = R, [g] = R.slice(-1);
|
|
1020
|
-
return y === void 0 || g === void 0 ? [] : ((
|
|
1021
|
-
const S = new Array(
|
|
1022
|
-
for (let U = 0; U <
|
|
1023
|
-
S[U * 4 + 0] =
|
|
1020
|
+
return y === void 0 || g === void 0 ? [] : ((M) => {
|
|
1021
|
+
const S = new Array(M.length * 4);
|
|
1022
|
+
for (let U = 0; U < M.length; U++)
|
|
1023
|
+
S[U * 4 + 0] = M[U], S[U * 4 + 1] = M[U], S[U * 4 + 2] = M[U], S[U * 4 + 3] = M[U];
|
|
1024
1024
|
return S;
|
|
1025
1025
|
})([y, ...R, g]);
|
|
1026
1026
|
});
|
|
1027
|
-
r.set(x), s.set(A), o.set(
|
|
1027
|
+
r.set(x), s.set(A), o.set(b), c.set(v);
|
|
1028
1028
|
}
|
|
1029
1029
|
), d = ce(
|
|
1030
1030
|
() => t.dashPattern?.(),
|
|
@@ -1049,7 +1049,7 @@ const Ni = (e, t = {}) => {
|
|
|
1049
1049
|
dispose: p,
|
|
1050
1050
|
..._
|
|
1051
1051
|
};
|
|
1052
|
-
},
|
|
1052
|
+
}, Pn = ({ gl: e, programs: t }, {
|
|
1053
1053
|
positionBuffer: n,
|
|
1054
1054
|
indexBuffer: i,
|
|
1055
1055
|
cornerBuffer: r,
|
|
@@ -1057,8 +1057,8 @@ const Ni = (e, t = {}) => {
|
|
|
1057
1057
|
}) => {
|
|
1058
1058
|
const o = (f = !1) => {
|
|
1059
1059
|
const l = t.get({
|
|
1060
|
-
vertexSource:
|
|
1061
|
-
fragmentSource: f ? _e :
|
|
1060
|
+
vertexSource: Un,
|
|
1061
|
+
fragmentSource: f ? _e : Sn
|
|
1062
1062
|
}), h = Float32Array.BYTES_PER_ELEMENT, u = Int32Array.BYTES_PER_ELEMENT, d = l.attribute3i("previous", n, {
|
|
1063
1063
|
stride: u * 3
|
|
1064
1064
|
}), p = l.attribute3i("current", n, {
|
|
@@ -1072,28 +1072,28 @@ const Ni = (e, t = {}) => {
|
|
|
1072
1072
|
}), x = l.attribute1f("distance", s, {
|
|
1073
1073
|
stride: h,
|
|
1074
1074
|
offset: h * 1 * 4
|
|
1075
|
-
}), A = l.uniformMatrix4f("projection"),
|
|
1075
|
+
}), A = l.uniformMatrix4f("projection"), b = l.uniformMatrix4f("model_view"), v = l.uniform3i("camera"), m = l.uniform2f("screen"), T = l.uniform4f("color"), R = l.uniform1f("width"), y = l.uniform1f("max_width_pixels"), g = l.uniform1f("min_width_pixels"), w = l.uniform1i("index"), M = l.uniform1i("dash"), S = l.uniform1f("dash_size"), U = l.uniform1f("dash_offset");
|
|
1076
1076
|
return { execute: ({
|
|
1077
1077
|
projection: N,
|
|
1078
1078
|
modelView: I,
|
|
1079
1079
|
camera: X,
|
|
1080
1080
|
screen: C,
|
|
1081
|
-
count:
|
|
1082
|
-
color:
|
|
1083
|
-
width:
|
|
1081
|
+
count: Y,
|
|
1082
|
+
color: j,
|
|
1083
|
+
width: q,
|
|
1084
1084
|
minWidthPixels: J,
|
|
1085
|
-
maxWidthPixels:
|
|
1086
|
-
index:
|
|
1085
|
+
maxWidthPixels: $,
|
|
1086
|
+
index: k,
|
|
1087
1087
|
dash: Je,
|
|
1088
1088
|
dashSize: et,
|
|
1089
1089
|
dashOffset: O
|
|
1090
1090
|
}) => {
|
|
1091
|
-
|
|
1091
|
+
Y !== 0 && (l.use(), d.use(), p.use(), _.use(), E.use(), x.use(), A.set(N), b.set(I), v.set(X), m.set(C), T.set(j), R.set(q), g.set(J), y.set($), w.set(k), S.set(et), U.set(O), e.activeTexture(e.TEXTURE0), M.set(0), Je.use(), i.use(), e.drawElements(e.TRIANGLES, Y, e.UNSIGNED_SHORT, 0));
|
|
1092
1092
|
} };
|
|
1093
1093
|
}, c = o(), a = o(!0);
|
|
1094
1094
|
return { renderProgram: c, depthProgram: a };
|
|
1095
1095
|
};
|
|
1096
|
-
var
|
|
1096
|
+
var zn = `#version 300 es
|
|
1097
1097
|
|
|
1098
1098
|
precision highp float;
|
|
1099
1099
|
|
|
@@ -1103,7 +1103,7 @@ out vec4 result;
|
|
|
1103
1103
|
void main() {
|
|
1104
1104
|
if (color_out.a == 0.f) discard;
|
|
1105
1105
|
result = color_out;
|
|
1106
|
-
}`,
|
|
1106
|
+
}`, Ln = `#version 300 es
|
|
1107
1107
|
|
|
1108
1108
|
precision highp float;
|
|
1109
1109
|
|
|
@@ -1143,10 +1143,10 @@ void main(void) {
|
|
|
1143
1143
|
|
|
1144
1144
|
color_out = color + diffuse * vec4(vec3(clamp(dot(qn.xyz / qn.w, vec3(0.f, 0.f, 1.f)), 0.f, 1.f)), 1.f);
|
|
1145
1145
|
}`;
|
|
1146
|
-
const
|
|
1146
|
+
const Di = (e, t = {}) => {
|
|
1147
1147
|
const { gl: n } = e;
|
|
1148
1148
|
let i = 0;
|
|
1149
|
-
const r =
|
|
1149
|
+
const r = V({ gl: n, type: "f32", target: "array" }), s = V({ gl: n, type: "u16", target: "element" }), o = V({ gl: n, type: "f32", target: "array" }), { renderProgram: c, depthProgram: a } = Nn(e, {
|
|
1150
1150
|
vertexBuffer: r,
|
|
1151
1151
|
indexBuffer: s,
|
|
1152
1152
|
normalBuffer: o
|
|
@@ -1155,17 +1155,17 @@ const Ii = (e, t = {}) => {
|
|
|
1155
1155
|
depth: x = !1,
|
|
1156
1156
|
index: A = 0
|
|
1157
1157
|
}) => {
|
|
1158
|
-
const
|
|
1158
|
+
const b = t.position?.() ?? [0, 0, 0], v = t.orientation?.() ?? [0, 0, 0, 1], m = t.color?.() ?? [1, 1, 1, 1], T = t.diffuse?.() ?? [0, 0, 0, 0], R = t.size?.() ?? 1, y = t.minSizePixels?.() ?? 0, g = t.maxSizePixels?.() ?? Number.MAX_VALUE;
|
|
1159
1159
|
if (l(), Ee(n, x, t))
|
|
1160
1160
|
return;
|
|
1161
1161
|
const w = ([S = 0, U = 0, P = 0, N = 0]) => [-S, U, P, N];
|
|
1162
1162
|
(x ? a : c).execute({
|
|
1163
1163
|
projection: d,
|
|
1164
1164
|
modelView: p,
|
|
1165
|
-
camera:
|
|
1165
|
+
camera: K(_),
|
|
1166
1166
|
screen: E,
|
|
1167
1167
|
count: i,
|
|
1168
|
-
position:
|
|
1168
|
+
position: K(z(b)),
|
|
1169
1169
|
orientation: Ke(he(), w(v)),
|
|
1170
1170
|
color: m,
|
|
1171
1171
|
diffuse: T,
|
|
@@ -1190,20 +1190,20 @@ const Ii = (e, t = {}) => {
|
|
|
1190
1190
|
dispose: h,
|
|
1191
1191
|
...u
|
|
1192
1192
|
};
|
|
1193
|
-
},
|
|
1193
|
+
}, Nn = ({ gl: e, programs: t }, {
|
|
1194
1194
|
vertexBuffer: n,
|
|
1195
1195
|
indexBuffer: i,
|
|
1196
1196
|
normalBuffer: r
|
|
1197
1197
|
}) => {
|
|
1198
1198
|
const s = (a = !1) => {
|
|
1199
1199
|
const f = t.get({
|
|
1200
|
-
vertexSource:
|
|
1201
|
-
fragmentSource: a ? _e :
|
|
1202
|
-
}), l = f.attribute3f("vertex", n), h = f.attribute3f("normal", r), u = f.uniformMatrix4f("projection"), d = f.uniformMatrix4f("model_view"), p = f.uniform3i("camera"), _ = f.uniform3i("position"), E = f.uniformMatrix4f("orientation"), x = f.uniform2f("screen"), A = f.uniform4f("color"),
|
|
1200
|
+
vertexSource: Ln,
|
|
1201
|
+
fragmentSource: a ? _e : zn
|
|
1202
|
+
}), l = f.attribute3f("vertex", n), h = f.attribute3f("normal", r), u = f.uniformMatrix4f("projection"), d = f.uniformMatrix4f("model_view"), p = f.uniform3i("camera"), _ = f.uniform3i("position"), E = f.uniformMatrix4f("orientation"), x = f.uniform2f("screen"), A = f.uniform4f("color"), b = f.uniform4f("diffuse"), v = f.uniform1f("size"), m = f.uniform1f("min_size_pixels"), T = f.uniform1f("max_size_pixels"), R = f.uniform1i("index");
|
|
1203
1203
|
return { execute: ({
|
|
1204
1204
|
projection: g,
|
|
1205
1205
|
modelView: w,
|
|
1206
|
-
camera:
|
|
1206
|
+
camera: M,
|
|
1207
1207
|
screen: S,
|
|
1208
1208
|
count: U,
|
|
1209
1209
|
position: P,
|
|
@@ -1211,18 +1211,18 @@ const Ii = (e, t = {}) => {
|
|
|
1211
1211
|
color: I,
|
|
1212
1212
|
diffuse: X,
|
|
1213
1213
|
size: C,
|
|
1214
|
-
minSizePixels:
|
|
1215
|
-
maxSizePixels:
|
|
1216
|
-
index:
|
|
1214
|
+
minSizePixels: Y,
|
|
1215
|
+
maxSizePixels: j,
|
|
1216
|
+
index: q
|
|
1217
1217
|
}) => {
|
|
1218
|
-
f.use(), l.use(), h.use(), u.set(g), d.set(w), p.set(
|
|
1218
|
+
f.use(), l.use(), h.use(), u.set(g), d.set(w), p.set(M), x.set(S), _.set(P), E.set(N), A.set(I), b.set(X), v.set(C), m.set(Y), T.set(j), R.set(q), i.use(), e.drawElements(e.TRIANGLES, U, e.UNSIGNED_SHORT, 0);
|
|
1219
1219
|
} };
|
|
1220
1220
|
}, o = s(), c = s(!0);
|
|
1221
1221
|
return { renderProgram: o, depthProgram: c };
|
|
1222
1222
|
};
|
|
1223
|
-
var
|
|
1223
|
+
var wt = function(e, t, n, i, r) {
|
|
1224
1224
|
let s, o = null;
|
|
1225
|
-
if (r ===
|
|
1225
|
+
if (r === Gn(e, t, n, i) > 0)
|
|
1226
1226
|
for (s = t; s < n; s += i)
|
|
1227
1227
|
o = new Xe(s, e[s], e[s + 1], o);
|
|
1228
1228
|
else
|
|
@@ -1244,19 +1244,19 @@ var Tt = function(e, t, n, i, r) {
|
|
|
1244
1244
|
}, ge = function(e, t, n, i, r, s, o) {
|
|
1245
1245
|
if (e === null)
|
|
1246
1246
|
return;
|
|
1247
|
-
o === 0 && s !== 0 &&
|
|
1247
|
+
o === 0 && s !== 0 && Vn(e, i, r, s);
|
|
1248
1248
|
let c = e, a, f;
|
|
1249
1249
|
for (; e.prev !== e.next; ) {
|
|
1250
|
-
if (a = e.prev, f = e.next, s !== 0 ?
|
|
1250
|
+
if (a = e.prev, f = e.next, s !== 0 ? Dn(e, i, r, s) : In(e)) {
|
|
1251
1251
|
t.push(a.i / n), t.push(e.i / n), t.push(f.i / n), Ae(e), e = f.next, c = f.next;
|
|
1252
1252
|
continue;
|
|
1253
1253
|
}
|
|
1254
1254
|
if (e = f, e === c) {
|
|
1255
|
-
o === 0 ? ge(ae(e), t, n, i, r, s, 1) : o === 1 ? (e =
|
|
1255
|
+
o === 0 ? ge(ae(e), t, n, i, r, s, 1) : o === 1 ? (e = On(ae(e), t, n), ge(e, t, n, i, r, s, 2)) : o === 2 && Cn(e, t, n, i, r, s);
|
|
1256
1256
|
break;
|
|
1257
1257
|
}
|
|
1258
1258
|
}
|
|
1259
|
-
},
|
|
1259
|
+
}, In = function(e) {
|
|
1260
1260
|
const t = e.prev, n = e, i = e.next;
|
|
1261
1261
|
if (D(t, n, i) >= 0)
|
|
1262
1262
|
return !1;
|
|
@@ -1267,7 +1267,7 @@ var Tt = function(e, t, n, i, r) {
|
|
|
1267
1267
|
r = r.next;
|
|
1268
1268
|
}
|
|
1269
1269
|
return !0;
|
|
1270
|
-
},
|
|
1270
|
+
}, Dn = function(e, t, n, i) {
|
|
1271
1271
|
const r = e.prev, s = e, o = e.next;
|
|
1272
1272
|
if (D(r, s, o) >= 0)
|
|
1273
1273
|
return !1;
|
|
@@ -1289,20 +1289,20 @@ var Tt = function(e, t, n, i, r) {
|
|
|
1289
1289
|
p = p.nextZ;
|
|
1290
1290
|
}
|
|
1291
1291
|
return !0;
|
|
1292
|
-
},
|
|
1292
|
+
}, On = function(e, t, n) {
|
|
1293
1293
|
let i = e;
|
|
1294
1294
|
do {
|
|
1295
1295
|
const r = i.prev, s = i.next.next;
|
|
1296
|
-
!Be(r, s) &&
|
|
1296
|
+
!Be(r, s) && gt(r, i, i.next, s) && Re(r, s) && Re(s, r) && (t.push(r.i / n), t.push(i.i / n), t.push(s.i / n), Ae(i), Ae(i.next), i = e = s), i = i.next;
|
|
1297
1297
|
} while (i !== e);
|
|
1298
1298
|
return i;
|
|
1299
|
-
},
|
|
1299
|
+
}, Cn = function(e, t, n, i, r, s) {
|
|
1300
1300
|
let o = e;
|
|
1301
1301
|
do {
|
|
1302
1302
|
let c = o.next.next;
|
|
1303
1303
|
for (; c !== o.prev; ) {
|
|
1304
|
-
if (o.i !== c.i &&
|
|
1305
|
-
let a =
|
|
1304
|
+
if (o.i !== c.i && $n(o, c)) {
|
|
1305
|
+
let a = Rt(o, c);
|
|
1306
1306
|
o = ae(o, o.next), a = ae(a, a.next), ge(o, t, n, i, r, s, 0), ge(a, t, n, i, r, s, 0);
|
|
1307
1307
|
return;
|
|
1308
1308
|
}
|
|
@@ -1310,25 +1310,25 @@ var Tt = function(e, t, n, i, r) {
|
|
|
1310
1310
|
}
|
|
1311
1311
|
o = o.next;
|
|
1312
1312
|
} while (o !== e);
|
|
1313
|
-
},
|
|
1313
|
+
}, Xn = function(e, t, n, i) {
|
|
1314
1314
|
const r = [];
|
|
1315
1315
|
let s, o, c, a, f;
|
|
1316
1316
|
for (s = 0, o = t.length; s < o; s++)
|
|
1317
|
-
c = t[s] * i, a = s < o - 1 ? t[s + 1] * i : e.length, f =
|
|
1318
|
-
for (r.sort(
|
|
1319
|
-
n =
|
|
1317
|
+
c = t[s] * i, a = s < o - 1 ? t[s + 1] * i : e.length, f = wt(e, c, a, i, !1), f === f.next && (f.steiner = !0), r.push(Yn(f));
|
|
1318
|
+
for (r.sort(Wn), s = 0; s < r.length; s++)
|
|
1319
|
+
n = jn(r[s], n), n = ae(n, n.next);
|
|
1320
1320
|
return n;
|
|
1321
|
-
}, Xn = function(e, t) {
|
|
1322
|
-
return e.x - t.x;
|
|
1323
1321
|
}, Wn = function(e, t) {
|
|
1324
|
-
|
|
1322
|
+
return e.x - t.x;
|
|
1323
|
+
}, jn = function(e, t) {
|
|
1324
|
+
const n = Bn(e, t);
|
|
1325
1325
|
if (n === null)
|
|
1326
1326
|
return t;
|
|
1327
1327
|
{
|
|
1328
|
-
const i =
|
|
1328
|
+
const i = Rt(n, e), r = ae(n, n.next);
|
|
1329
1329
|
return ae(i, i.next), t === n ? r : t;
|
|
1330
1330
|
}
|
|
1331
|
-
},
|
|
1331
|
+
}, Bn = function(e, t) {
|
|
1332
1332
|
let n = t;
|
|
1333
1333
|
const { x: i, y: r } = e;
|
|
1334
1334
|
let s = -1 / 0, o;
|
|
@@ -1358,13 +1358,13 @@ var Tt = function(e, t, n, i, r) {
|
|
|
1358
1358
|
i >= n.x && n.x >= a && i !== n.x && me(r < f ? i : s, r, a, f, r < f ? s : i, r, n.x, n.y) && (h = Math.abs(r - n.y) / (i - n.x), Re(n, e) && (h < l || h === l && (n.x > o.x || n.x === o.x && D(o.prev, o, n.prev) < 0 && D(n.next, o, o.next) < 0)) && (o = n, l = h)), n = n.next;
|
|
1359
1359
|
while (n !== c);
|
|
1360
1360
|
return o;
|
|
1361
|
-
},
|
|
1361
|
+
}, Vn = function(e, t, n, i) {
|
|
1362
1362
|
let r = e;
|
|
1363
1363
|
do
|
|
1364
1364
|
r.z === void 0 && (r.z = Ge(r.x, r.y, t, n, i)), r.prevZ = r.prev, r.nextZ = r.next, r = r.next;
|
|
1365
1365
|
while (r !== e);
|
|
1366
|
-
r.prevZ !== null && (r.prevZ.nextZ = null), r.prevZ = null,
|
|
1367
|
-
},
|
|
1366
|
+
r.prevZ !== null && (r.prevZ.nextZ = null), r.prevZ = null, Zn(r);
|
|
1367
|
+
}, Zn = function(e) {
|
|
1368
1368
|
let t, n, i, r, s, o, c, a, f = 1;
|
|
1369
1369
|
do {
|
|
1370
1370
|
for (n = e, e = null, s = null, o = 0; n !== null; ) {
|
|
@@ -1379,7 +1379,7 @@ var Tt = function(e, t, n, i, r) {
|
|
|
1379
1379
|
return e;
|
|
1380
1380
|
}, Ge = function(e, t, n, i, r) {
|
|
1381
1381
|
return e = 32767 * (e - n) * r, t = 32767 * (t - i) * r, e = (e | e << 8) & 16711935, e = (e | e << 4) & 252645135, e = (e | e << 2) & 858993459, e = (e | e << 1) & 1431655765, t = (t | t << 8) & 16711935, t = (t | t << 4) & 252645135, t = (t | t << 2) & 858993459, t = (t | t << 1) & 1431655765, e | t << 1;
|
|
1382
|
-
},
|
|
1382
|
+
}, Yn = function(e) {
|
|
1383
1383
|
let t = e, n = e;
|
|
1384
1384
|
do
|
|
1385
1385
|
(t.x < n.x || t.x === n.x && t.y < n.y) && (n = t), t = t.next;
|
|
@@ -1387,42 +1387,42 @@ var Tt = function(e, t, n, i, r) {
|
|
|
1387
1387
|
return n;
|
|
1388
1388
|
}, me = function(e, t, n, i, r, s, o, c) {
|
|
1389
1389
|
return (r - o) * (t - c) - (e - o) * (s - c) >= 0 && (e - o) * (i - c) - (n - o) * (t - c) >= 0 && (n - o) * (s - c) - (r - o) * (i - c) >= 0;
|
|
1390
|
-
},
|
|
1391
|
-
return e.next.i !== t.i && e.prev.i !== t.i &&
|
|
1390
|
+
}, $n = function(e, t) {
|
|
1391
|
+
return e.next.i !== t.i && e.prev.i !== t.i && !kn(e, t) && (Re(e, t) && Re(t, e) && Hn(e, t) && (D(e.prev, e, t.prev) !== 0 || D(e, t.prev, t) !== 0) || Be(e, t) && D(e.prev, e, e.next) > 0 && D(t.prev, t, t.next) > 0);
|
|
1392
1392
|
}, D = function(e, t, n) {
|
|
1393
1393
|
return (t.y - e.y) * (n.x - t.x) - (t.x - e.x) * (n.y - t.y);
|
|
1394
1394
|
}, Be = function(e, t) {
|
|
1395
1395
|
return e.x === t.x && e.y === t.y;
|
|
1396
|
-
},
|
|
1396
|
+
}, gt = function(e, t, n, i) {
|
|
1397
1397
|
const r = ze(D(e, t, n)), s = ze(D(e, t, i)), o = ze(D(n, i, e)), c = ze(D(n, i, t));
|
|
1398
1398
|
return !!(r !== s && o !== c || r === 0 && Le(e, n, t) || s === 0 && Le(e, i, t) || o === 0 && Le(n, e, i) || c === 0 && Le(n, t, i));
|
|
1399
1399
|
}, ze = function(e) {
|
|
1400
1400
|
return e > 0 ? 1 : e < 0 ? -1 : 0;
|
|
1401
1401
|
}, Le = function(e, t, n) {
|
|
1402
1402
|
return t.x <= Math.max(e.x, n.x) && t.x >= Math.min(e.x, n.x) && t.y <= Math.max(e.y, n.y) && t.y >= Math.min(e.y, n.y);
|
|
1403
|
-
},
|
|
1403
|
+
}, kn = function(e, t) {
|
|
1404
1404
|
let n = e;
|
|
1405
1405
|
do {
|
|
1406
|
-
if (n.i !== e.i && n.next?.i !== e.i && n.i !== t.i && n.next?.i !== t.i &&
|
|
1406
|
+
if (n.i !== e.i && n.next?.i !== e.i && n.i !== t.i && n.next?.i !== t.i && gt(n, n.next, e, t))
|
|
1407
1407
|
return !0;
|
|
1408
1408
|
n = n.next;
|
|
1409
1409
|
} while (n !== e);
|
|
1410
1410
|
return !1;
|
|
1411
1411
|
}, Re = function(e, t) {
|
|
1412
1412
|
return D(e.prev, e, e.next) < 0 ? D(e, t, e.next) >= 0 && D(e, e.prev, t) >= 0 : D(e, t, e.prev) < 0 || D(e, e.next, t) < 0;
|
|
1413
|
-
},
|
|
1413
|
+
}, Hn = function(e, t) {
|
|
1414
1414
|
const n = (e.x + t.x) / 2, i = (e.y + t.y) / 2;
|
|
1415
1415
|
let r = e, s = !1;
|
|
1416
1416
|
do
|
|
1417
1417
|
r.y > i != r.next.y > i && r.next.y !== r.y && n < (r.next.x - r.x) * (i - r.y) / (r.next.y - r.y) + r.x && (s = !s), r = r.next;
|
|
1418
1418
|
while (r !== e);
|
|
1419
1419
|
return s;
|
|
1420
|
-
},
|
|
1420
|
+
}, Rt = function(e, t) {
|
|
1421
1421
|
const n = new Xe(e.i, e.x, e.y), i = new Xe(t.i, t.x, t.y), r = e.next, s = t.prev;
|
|
1422
1422
|
return e.next = t, t.prev = e, n.next = r, r.prev = n, i.next = n, n.prev = i, s.next = i, i.prev = s, i;
|
|
1423
1423
|
}, Ae = function(e) {
|
|
1424
1424
|
e.next.prev = e.prev, e.prev.next = e.next, e.prevZ !== null && (e.prevZ.nextZ = e.nextZ), e.nextZ !== null && (e.nextZ.prevZ = e.prevZ);
|
|
1425
|
-
},
|
|
1425
|
+
}, Gn = function(e, t, n, i) {
|
|
1426
1426
|
let r = 0;
|
|
1427
1427
|
for (let s = t, o = n - i; s < n; s += i)
|
|
1428
1428
|
r += (e[o] - e[s]) * (e[s + 1] + e[o + 1]), o = s;
|
|
@@ -1442,14 +1442,14 @@ class Xe {
|
|
|
1442
1442
|
this.i = t, this.x = n, this.y = i, r === null ? (this.prev = this, this.next = this) : (this.next = r.next, this.prev = r, r.next.prev = this, r.next = this);
|
|
1443
1443
|
}
|
|
1444
1444
|
}
|
|
1445
|
-
function
|
|
1445
|
+
function Fn(e, t = [], n = 2) {
|
|
1446
1446
|
const i = t.length > 0, r = i ? t[0] * n : e.length;
|
|
1447
|
-
let s =
|
|
1447
|
+
let s = wt(e, 0, r, n, !0);
|
|
1448
1448
|
const o = [];
|
|
1449
1449
|
if (s === null || s.next === s.prev)
|
|
1450
1450
|
return o;
|
|
1451
1451
|
let c = 1 / 0, a = 1 / 0, f = -1 / 0, l = -1 / 0, h = 0, u, d;
|
|
1452
|
-
if (i && (s =
|
|
1452
|
+
if (i && (s = Xn(e, t, s, n)), e.length > 80 * n) {
|
|
1453
1453
|
c = f = e[0], a = l = e[1];
|
|
1454
1454
|
for (let p = n; p < r; p += n)
|
|
1455
1455
|
u = e[p], d = e[p + 1], u < c && (c = u), d < a && (a = d), u > f && (f = u), d > l && (l = d);
|
|
@@ -1457,20 +1457,20 @@ function Gn(e, t = [], n = 2) {
|
|
|
1457
1457
|
}
|
|
1458
1458
|
return ge(s, o, n, c, a, h, 0), o;
|
|
1459
1459
|
}
|
|
1460
|
-
function
|
|
1461
|
-
const { vertices: i, holeIndices: r, dim: s } =
|
|
1462
|
-
return t !== 1 / 0 &&
|
|
1460
|
+
function Qn(e, t = 1 / 0, n = 0) {
|
|
1461
|
+
const { vertices: i, holeIndices: r, dim: s } = Jn(e), o = Fn(i, r, s);
|
|
1462
|
+
return t !== 1 / 0 && Kn(i, o, t, s), { vertices: i, indices: o.map((c) => c + n) };
|
|
1463
1463
|
}
|
|
1464
|
-
function
|
|
1464
|
+
function Kn(e, t, n, i) {
|
|
1465
1465
|
let r, s, o;
|
|
1466
1466
|
for (let c = 0; c < i; c++)
|
|
1467
1467
|
for (let a = 0; a < t.length; a += 3) {
|
|
1468
1468
|
r = t[a], s = t[a + 1], o = t[a + 2];
|
|
1469
|
-
const f =
|
|
1469
|
+
const f = qn(r, s, o, e, t, i, c, n);
|
|
1470
1470
|
f !== void 0 && (t[a] = f[0], t[a + 1] = f[1], t[a + 2] = f[2], a -= 3);
|
|
1471
1471
|
}
|
|
1472
1472
|
}
|
|
1473
|
-
var
|
|
1473
|
+
var qn = function(e, t, n, i, r, s, o, c) {
|
|
1474
1474
|
const a = i[e * s + o], f = i[t * s + o], l = i[n * s + o];
|
|
1475
1475
|
if (a < f && a < l) {
|
|
1476
1476
|
const h = a + c - le(a, c);
|
|
@@ -1505,38 +1505,38 @@ var Kn = function(e, t, n, i, r, s, o, c) {
|
|
|
1505
1505
|
if (u < l && u >= a && u >= f && (a !== u || f !== u))
|
|
1506
1506
|
return ke(u, n, e, t, l, a, f, i, r, s, o, c);
|
|
1507
1507
|
}
|
|
1508
|
-
},
|
|
1508
|
+
}, G = function(e, t, n, i, r, s, o, c) {
|
|
1509
1509
|
const a = s.length / o, f = (r - i) / (e - i);
|
|
1510
1510
|
let l, h;
|
|
1511
1511
|
for (let u = 0; u < o; u++)
|
|
1512
1512
|
l = s[t * o + u], h = s[n * o + u], u !== c ? s.push(l + (h - l) / f) : s.push(e);
|
|
1513
1513
|
return a;
|
|
1514
1514
|
}, $e = function(e, t, n, i, r, s, o, c, a, f, l, h) {
|
|
1515
|
-
let u =
|
|
1515
|
+
let u = G(e, t, n, r, s, c, f, l), d = G(e, t, i, r, o, c, f, l);
|
|
1516
1516
|
if (a.push(t, u, d), e += h, s < o) {
|
|
1517
1517
|
for (; e < s; )
|
|
1518
|
-
a.push(d, u), d =
|
|
1518
|
+
a.push(d, u), d = G(e, t, i, r, o, c, f, l), a.push(d, d, u), u = G(e, t, n, r, s, c, f, l), a.push(u), e += h;
|
|
1519
1519
|
return a.push(d, u, n), [d, n, i];
|
|
1520
1520
|
} else {
|
|
1521
1521
|
for (; e < o; )
|
|
1522
|
-
a.push(d, u), d =
|
|
1522
|
+
a.push(d, u), d = G(e, t, i, r, o, c, f, l), a.push(d, d, u), u = G(e, t, n, r, s, c, f, l), a.push(u), e += h;
|
|
1523
1523
|
return a.push(d, u, i), [i, u, n];
|
|
1524
1524
|
}
|
|
1525
1525
|
}, ke = function(e, t, n, i, r, s, o, c, a, f, l, h) {
|
|
1526
|
-
let u =
|
|
1526
|
+
let u = G(e, t, n, r, s, c, f, l), d = G(e, t, i, r, o, c, f, l);
|
|
1527
1527
|
if (a.push(t, u, d), e -= h, s > o) {
|
|
1528
1528
|
for (; e > s; )
|
|
1529
|
-
a.push(d, u), d =
|
|
1529
|
+
a.push(d, u), d = G(e, t, i, r, o, c, f, l), a.push(d, d, u), u = G(e, t, n, r, s, c, f, l), a.push(u), e -= h;
|
|
1530
1530
|
return a.push(d, u, n), [d, n, i];
|
|
1531
1531
|
} else {
|
|
1532
1532
|
for (; e > o; )
|
|
1533
|
-
a.push(d, u), d =
|
|
1533
|
+
a.push(d, u), d = G(e, t, i, r, o, c, f, l), a.push(d, d, u), u = G(e, t, n, r, s, c, f, l), a.push(u), e -= h;
|
|
1534
1534
|
return a.push(d, u, i), [i, u, n];
|
|
1535
1535
|
}
|
|
1536
1536
|
}, le = function(e, t) {
|
|
1537
1537
|
return (e % t + t) % t;
|
|
1538
1538
|
};
|
|
1539
|
-
function
|
|
1539
|
+
function Jn(e) {
|
|
1540
1540
|
let t = 0;
|
|
1541
1541
|
const n = e[0][0].length, i = [], r = [];
|
|
1542
1542
|
for (let s = 0, o = e.length; s < o; s++) {
|
|
@@ -1547,7 +1547,7 @@ function qn(e) {
|
|
|
1547
1547
|
}
|
|
1548
1548
|
return { vertices: i, holeIndices: r, dim: n };
|
|
1549
1549
|
}
|
|
1550
|
-
var
|
|
1550
|
+
var ei = `#version 300 es
|
|
1551
1551
|
|
|
1552
1552
|
precision highp float;
|
|
1553
1553
|
|
|
@@ -1556,7 +1556,7 @@ out vec4 result;
|
|
|
1556
1556
|
|
|
1557
1557
|
void main() {
|
|
1558
1558
|
result = color_out;
|
|
1559
|
-
}`,
|
|
1559
|
+
}`, ti = `#version 300 es
|
|
1560
1560
|
|
|
1561
1561
|
precision highp float;
|
|
1562
1562
|
|
|
@@ -1580,10 +1580,10 @@ void main(void) {
|
|
|
1580
1580
|
gl_Position = transform(position);
|
|
1581
1581
|
color_out = color;
|
|
1582
1582
|
}`;
|
|
1583
|
-
const
|
|
1583
|
+
const Oi = (e, t = {}) => {
|
|
1584
1584
|
const { gl: n } = e;
|
|
1585
1585
|
let i = 0;
|
|
1586
|
-
const r =
|
|
1586
|
+
const r = V({ gl: n, type: "i32", target: "array" }), s = V({ gl: n, type: "u16", target: "element" }), { renderProgram: o, depthProgram: c } = ni(e, {
|
|
1587
1587
|
positionBuffer: r,
|
|
1588
1588
|
indexBuffer: s
|
|
1589
1589
|
}), a = ({
|
|
@@ -1597,7 +1597,7 @@ const Di = (e, t = {}) => {
|
|
|
1597
1597
|
(E ? c : o).execute({
|
|
1598
1598
|
projection: u,
|
|
1599
1599
|
modelView: d,
|
|
1600
|
-
camera:
|
|
1600
|
+
camera: K(p),
|
|
1601
1601
|
screen: _,
|
|
1602
1602
|
count: i,
|
|
1603
1603
|
color: A,
|
|
@@ -1606,7 +1606,7 @@ const Di = (e, t = {}) => {
|
|
|
1606
1606
|
}, f = ce(
|
|
1607
1607
|
() => t.points?.() ?? [],
|
|
1608
1608
|
(u) => {
|
|
1609
|
-
const { vertices: d, indices: p } = u.length > 0 ?
|
|
1609
|
+
const { vertices: d, indices: p } = u.length > 0 ? Qn(u.map((_) => _.map((E) => [...K(z(E))]))) : { vertices: [], indices: [] };
|
|
1610
1610
|
r.set(d), s.set(p), i = p.length;
|
|
1611
1611
|
}
|
|
1612
1612
|
), l = () => {
|
|
@@ -1617,32 +1617,32 @@ const Di = (e, t = {}) => {
|
|
|
1617
1617
|
dispose: l,
|
|
1618
1618
|
...h
|
|
1619
1619
|
};
|
|
1620
|
-
},
|
|
1620
|
+
}, ni = ({ gl: e, programs: t }, {
|
|
1621
1621
|
positionBuffer: n,
|
|
1622
1622
|
indexBuffer: i
|
|
1623
1623
|
}) => {
|
|
1624
1624
|
const r = (c = !1) => {
|
|
1625
1625
|
const a = t.get({
|
|
1626
|
-
vertexSource:
|
|
1627
|
-
fragmentSource: c ? _e :
|
|
1626
|
+
vertexSource: ti,
|
|
1627
|
+
fragmentSource: c ? _e : ei
|
|
1628
1628
|
}), f = a.attribute3i("position", n, {
|
|
1629
1629
|
stride: 3 * Int32Array.BYTES_PER_ELEMENT
|
|
1630
1630
|
}), l = a.uniformMatrix4f("projection"), h = a.uniformMatrix4f("model_view"), u = a.uniform3i("camera"), d = a.uniform2f("screen"), p = a.uniform4f("color"), _ = a.uniform1i("index");
|
|
1631
1631
|
return { execute: ({
|
|
1632
1632
|
projection: x,
|
|
1633
1633
|
modelView: A,
|
|
1634
|
-
camera:
|
|
1634
|
+
camera: b,
|
|
1635
1635
|
screen: v,
|
|
1636
1636
|
count: m,
|
|
1637
1637
|
color: T,
|
|
1638
1638
|
index: R
|
|
1639
1639
|
}) => {
|
|
1640
|
-
m !== 0 && (a.use(), f.use(), l.set(x), h.set(A), u.set(
|
|
1640
|
+
m !== 0 && (a.use(), f.use(), l.set(x), h.set(A), u.set(b), d.set(v), p.set(T), _.set(R), i.use(), e.drawElements(e.TRIANGLES, m, e.UNSIGNED_SHORT, 0));
|
|
1641
1641
|
} };
|
|
1642
1642
|
}, s = r(), o = r(!0);
|
|
1643
1643
|
return { renderProgram: s, depthProgram: o };
|
|
1644
1644
|
};
|
|
1645
|
-
var
|
|
1645
|
+
var ii = `#version 300 es
|
|
1646
1646
|
|
|
1647
1647
|
precision highp float;
|
|
1648
1648
|
|
|
@@ -1657,7 +1657,7 @@ void main() {
|
|
|
1657
1657
|
vec4 value = texture(image, vec2(d, a));
|
|
1658
1658
|
if (value.r == 0.f) discard;
|
|
1659
1659
|
result = vec4(0, 1., 0, value.r);
|
|
1660
|
-
}`,
|
|
1660
|
+
}`, ri = `#version 300 es
|
|
1661
1661
|
|
|
1662
1662
|
precision highp float;
|
|
1663
1663
|
|
|
@@ -1684,8 +1684,8 @@ void main(void) {
|
|
|
1684
1684
|
gl_Position = transform(q.xyz / q.w);
|
|
1685
1685
|
uv_out = uv;
|
|
1686
1686
|
}`;
|
|
1687
|
-
const
|
|
1688
|
-
const { gl: n } = e, i =
|
|
1687
|
+
const Ci = (e, t = {}) => {
|
|
1688
|
+
const { gl: n } = e, i = oi(n), r = V({ gl: n, type: "f32", target: "array" }), s = V({ gl: n, type: "u16", target: "element" });
|
|
1689
1689
|
r.set(
|
|
1690
1690
|
[
|
|
1691
1691
|
[-1, -1],
|
|
@@ -1704,7 +1704,7 @@ const Oi = (e, t = {}) => {
|
|
|
1704
1704
|
(u) => {
|
|
1705
1705
|
u && i.set(u);
|
|
1706
1706
|
}
|
|
1707
|
-
), { renderProgram: c, depthProgram: a } =
|
|
1707
|
+
), { renderProgram: c, depthProgram: a } = si(e, {
|
|
1708
1708
|
uvBuffer: r,
|
|
1709
1709
|
indexBuffer: s
|
|
1710
1710
|
}), f = ({
|
|
@@ -1712,18 +1712,18 @@ const Oi = (e, t = {}) => {
|
|
|
1712
1712
|
depth: E = !1,
|
|
1713
1713
|
index: x = 0
|
|
1714
1714
|
}) => {
|
|
1715
|
-
const A = t.position?.() ?? [0, 0, 0],
|
|
1715
|
+
const A = t.position?.() ?? [0, 0, 0], b = t.orientation?.() ?? [0, 0, 0, 1], v = t.range?.() ?? 1e3;
|
|
1716
1716
|
if (o(), Ee(n, E, t))
|
|
1717
1717
|
return;
|
|
1718
1718
|
(E ? a : c).execute({
|
|
1719
1719
|
projection: u,
|
|
1720
1720
|
modelView: d,
|
|
1721
|
-
camera:
|
|
1721
|
+
camera: K(p),
|
|
1722
1722
|
screen: _,
|
|
1723
1723
|
image: i,
|
|
1724
1724
|
range: v,
|
|
1725
|
-
position:
|
|
1726
|
-
orientation: Ke(he(),
|
|
1725
|
+
position: K(z(A)),
|
|
1726
|
+
orientation: Ke(he(), b),
|
|
1727
1727
|
index: x
|
|
1728
1728
|
});
|
|
1729
1729
|
}, l = () => {
|
|
@@ -1734,14 +1734,14 @@ const Oi = (e, t = {}) => {
|
|
|
1734
1734
|
dispose: l,
|
|
1735
1735
|
...h
|
|
1736
1736
|
};
|
|
1737
|
-
},
|
|
1737
|
+
}, si = ({ gl: e, programs: t }, {
|
|
1738
1738
|
uvBuffer: n,
|
|
1739
1739
|
indexBuffer: i
|
|
1740
1740
|
}) => {
|
|
1741
1741
|
const r = (c = !1) => {
|
|
1742
1742
|
const a = t.get({
|
|
1743
|
-
vertexSource:
|
|
1744
|
-
fragmentSource: c ? _e :
|
|
1743
|
+
vertexSource: ri,
|
|
1744
|
+
fragmentSource: c ? _e : ii
|
|
1745
1745
|
}), f = a.attribute2f("uv", n, {
|
|
1746
1746
|
stride: 2 * Float32Array.BYTES_PER_ELEMENT
|
|
1747
1747
|
}), l = a.uniformMatrix4f("projection"), h = a.uniformMatrix4f("model_view"), u = a.uniform3i("camera"), d = a.uniform2f("screen"), p = a.uniform1i("image"), _ = a.uniform1f("range"), E = a.uniform3i("position"), x = a.uniformMatrix4f("orientation"), A = a.uniform1i("index");
|
|
@@ -1753,14 +1753,14 @@ const Oi = (e, t = {}) => {
|
|
|
1753
1753
|
image: y,
|
|
1754
1754
|
range: g,
|
|
1755
1755
|
position: w,
|
|
1756
|
-
orientation:
|
|
1756
|
+
orientation: M,
|
|
1757
1757
|
index: S
|
|
1758
1758
|
}) => {
|
|
1759
|
-
a.use(), f.use(), l.set(v), h.set(m), u.set(T), d.set(R), _.set(g), E.set(w), x.set(
|
|
1759
|
+
a.use(), f.use(), l.set(v), h.set(m), u.set(T), d.set(R), _.set(g), E.set(w), x.set(M), A.set(S), e.activeTexture(e.TEXTURE0), p.set(0), y.use(), i.use(), e.drawElements(e.TRIANGLES, 6, e.UNSIGNED_SHORT, 0);
|
|
1760
1760
|
} };
|
|
1761
1761
|
}, s = r(), o = r(!0);
|
|
1762
1762
|
return { renderProgram: s, depthProgram: o };
|
|
1763
|
-
},
|
|
1763
|
+
}, oi = (e) => {
|
|
1764
1764
|
const t = e.createTexture();
|
|
1765
1765
|
if (!t)
|
|
1766
1766
|
throw new Error("Texture creation failed");
|
|
@@ -1784,7 +1784,7 @@ const Oi = (e, t = {}) => {
|
|
|
1784
1784
|
return { texture: a, downsample: s };
|
|
1785
1785
|
}
|
|
1786
1786
|
}
|
|
1787
|
-
}), ue = typeof performance == "object" && performance && typeof performance.now == "function" ? performance : Date,
|
|
1787
|
+
}), ue = typeof performance == "object" && performance && typeof performance.now == "function" ? performance : Date, At = /* @__PURE__ */ new Set(), Qe = typeof process == "object" && process ? process : {}, bt = (e, t, n, i) => {
|
|
1788
1788
|
typeof Qe.emitWarning == "function" ? Qe.emitWarning(e, t, n, i) : console.error(`[${n}] ${t}: ${e}`);
|
|
1789
1789
|
};
|
|
1790
1790
|
let We = globalThis.AbortController, lt = globalThis.AbortSignal;
|
|
@@ -1813,10 +1813,10 @@ if (typeof We > "u") {
|
|
|
1813
1813
|
};
|
|
1814
1814
|
let e = Qe.env?.LRU_CACHE_IGNORE_AC_WARNING !== "1";
|
|
1815
1815
|
const t = () => {
|
|
1816
|
-
e && (e = !1,
|
|
1816
|
+
e && (e = !1, bt("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.", "NO_ABORT_CONTROLLER", "ENOTSUP", t));
|
|
1817
1817
|
};
|
|
1818
1818
|
}
|
|
1819
|
-
const
|
|
1819
|
+
const ai = (e) => !At.has(e), ee = (e) => e && e === Math.floor(e) && e > 0 && isFinite(e), Mt = (e) => ee(e) ? e <= Math.pow(2, 8) ? Uint8Array : e <= Math.pow(2, 16) ? Uint16Array : e <= Math.pow(2, 32) ? Uint32Array : e <= Number.MAX_SAFE_INTEGER ? Oe : null : null;
|
|
1820
1820
|
class Oe extends Array {
|
|
1821
1821
|
constructor(t) {
|
|
1822
1822
|
super(t), this.fill(0);
|
|
@@ -2014,7 +2014,7 @@ class qe {
|
|
|
2014
2014
|
return this.#v;
|
|
2015
2015
|
}
|
|
2016
2016
|
constructor(t) {
|
|
2017
|
-
const { max: n = 0, ttl: i, ttlResolution: r = 1, ttlAutopurge: s, updateAgeOnGet: o, updateAgeOnHas: c, allowStale: a, dispose: f, disposeAfter: l, noDisposeOnSet: h, noUpdateTTL: u, maxSize: d = 0, maxEntrySize: p = 0, sizeCalculation: _, fetchMethod: E, noDeleteOnFetchRejection: x, noDeleteOnStaleGet: A, allowStaleOnFetchRejection:
|
|
2017
|
+
const { max: n = 0, ttl: i, ttlResolution: r = 1, ttlAutopurge: s, updateAgeOnGet: o, updateAgeOnHas: c, allowStale: a, dispose: f, disposeAfter: l, noDisposeOnSet: h, noUpdateTTL: u, maxSize: d = 0, maxEntrySize: p = 0, sizeCalculation: _, fetchMethod: E, noDeleteOnFetchRejection: x, noDeleteOnStaleGet: A, allowStaleOnFetchRejection: b, allowStaleOnFetchAbort: v, ignoreFetchAbort: m } = t;
|
|
2018
2018
|
if (n !== 0 && !ee(n))
|
|
2019
2019
|
throw new TypeError("max option must be a nonnegative integer");
|
|
2020
2020
|
const T = n ? Mt(n) : Array;
|
|
@@ -2028,7 +2028,7 @@ class qe {
|
|
|
2028
2028
|
}
|
|
2029
2029
|
if (E !== void 0 && typeof E != "function")
|
|
2030
2030
|
throw new TypeError("fetchMethod must be a function if specified");
|
|
2031
|
-
if (this.#U = E, this.#A = !!E, this.#i = /* @__PURE__ */ new Map(), this.#n = new Array(n).fill(void 0), this.#e = new Array(n).fill(void 0), this.#f = new T(n), this.#h = new T(n), this.#a = 0, this.#s = 0, this.#E = pe.create(n), this.#r = 0, this.#x = 0, typeof f == "function" && (this.#p = f), typeof l == "function" ? (this.#v = l, this.#o = []) : (this.#v = void 0, this.#o = void 0), this.#T = !!this.#p, this.#l = !!this.#v, this.noDisposeOnSet = !!h, this.noUpdateTTL = !!u, this.noDeleteOnFetchRejection = !!x, this.allowStaleOnFetchRejection = !!
|
|
2031
|
+
if (this.#U = E, this.#A = !!E, this.#i = /* @__PURE__ */ new Map(), this.#n = new Array(n).fill(void 0), this.#e = new Array(n).fill(void 0), this.#f = new T(n), this.#h = new T(n), this.#a = 0, this.#s = 0, this.#E = pe.create(n), this.#r = 0, this.#x = 0, typeof f == "function" && (this.#p = f), typeof l == "function" ? (this.#v = l, this.#o = []) : (this.#v = void 0, this.#o = void 0), this.#T = !!this.#p, this.#l = !!this.#v, this.noDisposeOnSet = !!h, this.noUpdateTTL = !!u, this.noDeleteOnFetchRejection = !!x, this.allowStaleOnFetchRejection = !!b, this.allowStaleOnFetchAbort = !!v, this.ignoreFetchAbort = !!m, this.maxEntrySize !== 0) {
|
|
2032
2032
|
if (this.#u !== 0 && !ee(this.#u))
|
|
2033
2033
|
throw new TypeError("maxSize must be a positive integer if specified");
|
|
2034
2034
|
if (!ee(this.maxEntrySize))
|
|
@@ -2044,7 +2044,7 @@ class qe {
|
|
|
2044
2044
|
throw new TypeError("At least one of max, maxSize, or ttl is required");
|
|
2045
2045
|
if (!this.ttlAutopurge && !this.#c && !this.#u) {
|
|
2046
2046
|
const R = "LRU_CACHE_UNBOUNDED";
|
|
2047
|
-
|
|
2047
|
+
ai(R) && (At.add(R), bt("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.", "UnboundedCacheWarning", R, qe));
|
|
2048
2048
|
}
|
|
2049
2049
|
}
|
|
2050
2050
|
/**
|
|
@@ -2062,7 +2062,7 @@ class qe {
|
|
|
2062
2062
|
}, o + 1);
|
|
2063
2063
|
a.unref && a.unref();
|
|
2064
2064
|
}
|
|
2065
|
-
}, this.#
|
|
2065
|
+
}, this.#b = (s) => {
|
|
2066
2066
|
n[s] = t[s] !== 0 ? ue.now() : 0;
|
|
2067
2067
|
}, this.#R = (s, o) => {
|
|
2068
2068
|
if (t[o]) {
|
|
@@ -2099,7 +2099,7 @@ class qe {
|
|
|
2099
2099
|
};
|
|
2100
2100
|
}
|
|
2101
2101
|
// conditionally set private methods related to TTL
|
|
2102
|
-
#
|
|
2102
|
+
#b = () => {
|
|
2103
2103
|
};
|
|
2104
2104
|
#R = () => {
|
|
2105
2105
|
};
|
|
@@ -2109,7 +2109,7 @@ class qe {
|
|
|
2109
2109
|
#m = () => !1;
|
|
2110
2110
|
#X() {
|
|
2111
2111
|
const t = new Oe(this.#c);
|
|
2112
|
-
this.#x = 0, this.#_ = t, this.#
|
|
2112
|
+
this.#x = 0, this.#_ = t, this.#M = (n) => {
|
|
2113
2113
|
this.#x -= t[n], t[n] = 0;
|
|
2114
2114
|
}, this.#D = (n, i, r, s) => {
|
|
2115
2115
|
if (this.#t(i))
|
|
@@ -2132,7 +2132,7 @@ class qe {
|
|
|
2132
2132
|
this.#x += t[n], r && (r.entrySize = i, r.totalCalculatedSize = this.#x);
|
|
2133
2133
|
};
|
|
2134
2134
|
}
|
|
2135
|
-
#
|
|
2135
|
+
#M = (t) => {
|
|
2136
2136
|
};
|
|
2137
2137
|
#P = (t, n, i) => {
|
|
2138
2138
|
};
|
|
@@ -2352,7 +2352,7 @@ class qe {
|
|
|
2352
2352
|
d !== void 0 && !o && (this.#T && this.#p?.(d, t, "set"), this.#l && this.#o?.push([d, t, "set"]));
|
|
2353
2353
|
} else
|
|
2354
2354
|
o || (this.#T && this.#p?.(u, t, "set"), this.#l && this.#o?.push([u, t, "set"]));
|
|
2355
|
-
if (this.#
|
|
2355
|
+
if (this.#M(h), this.#P(h, l, a), this.#e[h] = n, a) {
|
|
2356
2356
|
a.set = "replace";
|
|
2357
2357
|
const d = u && this.#t(u) ? u.__staleWhileFetching : u;
|
|
2358
2358
|
d !== void 0 && (a.oldValue = d);
|
|
@@ -2393,7 +2393,7 @@ class qe {
|
|
|
2393
2393
|
}
|
|
2394
2394
|
#z(t) {
|
|
2395
2395
|
const n = this.#a, i = this.#n[n], r = this.#e[n];
|
|
2396
|
-
return this.#A && this.#t(r) ? r.__abortController.abort(new Error("evicted")) : (this.#T || this.#l) && (this.#T && this.#p?.(r, i, "evict"), this.#l && this.#o?.push([r, i, "evict"])), this.#
|
|
2396
|
+
return this.#A && this.#t(r) ? r.__abortController.abort(new Error("evicted")) : (this.#T || this.#l) && (this.#T && this.#p?.(r, i, "evict"), this.#l && this.#o?.push([r, i, "evict"])), this.#M(n), t && (this.#n[n] = void 0, this.#e[n] = void 0, this.#E.push(n)), this.#r === 1 ? (this.#a = this.#s = 0, this.#E.length = 0) : this.#a = this.#f[n], this.#i.delete(i), this.#r--, n;
|
|
2397
2397
|
}
|
|
2398
2398
|
/**
|
|
2399
2399
|
* Check if a key is in the cache, without updating the recency of use.
|
|
@@ -2412,7 +2412,7 @@ class qe {
|
|
|
2412
2412
|
if (this.#m(s))
|
|
2413
2413
|
r && (r.has = "stale", this.#R(r, s));
|
|
2414
2414
|
else
|
|
2415
|
-
return i && this.#
|
|
2415
|
+
return i && this.#b(s), r && (r.has = "hit", this.#R(r, s)), !0;
|
|
2416
2416
|
} else
|
|
2417
2417
|
r && (r.has = "miss");
|
|
2418
2418
|
return !1;
|
|
@@ -2447,11 +2447,11 @@ class qe {
|
|
|
2447
2447
|
const { aborted: x } = o.signal, A = i.ignoreFetchAbort && _ !== void 0;
|
|
2448
2448
|
if (i.status && (x && !E ? (i.status.fetchAborted = !0, i.status.fetchError = o.signal.reason, A && (i.status.fetchAbortIgnored = !0)) : i.status.fetchResolved = !0), x && !A && !E)
|
|
2449
2449
|
return h(o.signal.reason);
|
|
2450
|
-
const
|
|
2451
|
-
return this.#e[n] === d && (_ === void 0 ?
|
|
2450
|
+
const b = d;
|
|
2451
|
+
return this.#e[n] === d && (_ === void 0 ? b.__staleWhileFetching ? this.#e[n] = b.__staleWhileFetching : this.delete(t) : (i.status && (i.status.fetchUpdated = !0), this.set(t, _, a.options))), _;
|
|
2452
2452
|
}, l = (_) => (i.status && (i.status.fetchRejected = !0, i.status.fetchError = _), h(_)), h = (_) => {
|
|
2453
|
-
const { aborted: E } = o.signal, x = E && i.allowStaleOnFetchAbort, A = x || i.allowStaleOnFetchRejection,
|
|
2454
|
-
if (this.#e[n] === d && (!
|
|
2453
|
+
const { aborted: E } = o.signal, x = E && i.allowStaleOnFetchAbort, A = x || i.allowStaleOnFetchRejection, b = A || i.noDeleteOnFetchRejection, v = d;
|
|
2454
|
+
if (this.#e[n] === d && (!b || v.__staleWhileFetching === void 0 ? this.delete(t) : x || (this.#e[n] = v.__staleWhileFetching)), A)
|
|
2455
2455
|
return i.status && v.__staleWhileFetching !== void 0 && (i.status.returnedStale = !0), v.__staleWhileFetching;
|
|
2456
2456
|
if (v.__returned === v)
|
|
2457
2457
|
throw _;
|
|
@@ -2504,7 +2504,7 @@ class qe {
|
|
|
2504
2504
|
noDeleteOnStaleGet: s,
|
|
2505
2505
|
status: x
|
|
2506
2506
|
});
|
|
2507
|
-
const
|
|
2507
|
+
const b = {
|
|
2508
2508
|
allowStale: i,
|
|
2509
2509
|
updateAgeOnGet: r,
|
|
2510
2510
|
noDeleteOnStaleGet: s,
|
|
@@ -2523,7 +2523,7 @@ class qe {
|
|
|
2523
2523
|
let v = this.#i.get(t);
|
|
2524
2524
|
if (v === void 0) {
|
|
2525
2525
|
x && (x.fetch = "miss");
|
|
2526
|
-
const m = this.#L(t, v,
|
|
2526
|
+
const m = this.#L(t, v, b, _);
|
|
2527
2527
|
return m.__returned = m;
|
|
2528
2528
|
} else {
|
|
2529
2529
|
const m = this.#e[v];
|
|
@@ -2533,8 +2533,8 @@ class qe {
|
|
|
2533
2533
|
}
|
|
2534
2534
|
const T = this.#m(v);
|
|
2535
2535
|
if (!E && !T)
|
|
2536
|
-
return x && (x.fetch = "hit"), this.#S(v), r && this.#
|
|
2537
|
-
const R = this.#L(t, v,
|
|
2536
|
+
return x && (x.fetch = "hit"), this.#S(v), r && this.#b(v), x && this.#R(x, v), m;
|
|
2537
|
+
const R = this.#L(t, v, b, _), g = R.__staleWhileFetching !== void 0 && i;
|
|
2538
2538
|
return x && (x.fetch = T ? "stale" : "refresh", g && T && (x.returnedStale = !0)), g ? R.__staleWhileFetching : R.__returned = R;
|
|
2539
2539
|
}
|
|
2540
2540
|
}
|
|
@@ -2548,7 +2548,7 @@ class qe {
|
|
|
2548
2548
|
const { allowStale: i = this.allowStale, updateAgeOnGet: r = this.updateAgeOnGet, noDeleteOnStaleGet: s = this.noDeleteOnStaleGet, status: o } = n, c = this.#i.get(t);
|
|
2549
2549
|
if (c !== void 0) {
|
|
2550
2550
|
const a = this.#e[c], f = this.#t(a);
|
|
2551
|
-
return o && this.#R(o, c), this.#m(c) ? (o && (o.get = "stale"), f ? (o && i && a.__staleWhileFetching !== void 0 && (o.returnedStale = !0), i ? a.__staleWhileFetching : void 0) : (s || this.delete(t), o && i && (o.returnedStale = !0), i ? a : void 0)) : (o && (o.get = "hit"), f ? a.__staleWhileFetching : (this.#S(c), r && this.#
|
|
2551
|
+
return o && this.#R(o, c), this.#m(c) ? (o && (o.get = "stale"), f ? (o && i && a.__staleWhileFetching !== void 0 && (o.returnedStale = !0), i ? a.__staleWhileFetching : void 0) : (s || this.delete(t), o && i && (o.returnedStale = !0), i ? a : void 0)) : (o && (o.get = "hit"), f ? a.__staleWhileFetching : (this.#S(c), r && this.#b(c), a));
|
|
2552
2552
|
} else
|
|
2553
2553
|
o && (o.get = "miss");
|
|
2554
2554
|
}
|
|
@@ -2570,7 +2570,7 @@ class qe {
|
|
|
2570
2570
|
if (n = !0, this.#r === 1)
|
|
2571
2571
|
this.clear();
|
|
2572
2572
|
else {
|
|
2573
|
-
this.#
|
|
2573
|
+
this.#M(i);
|
|
2574
2574
|
const r = this.#e[i];
|
|
2575
2575
|
if (this.#t(r) ? r.__abortController.abort(new Error("deleted")) : (this.#T || this.#l) && (this.#T && this.#p?.(r, t, "delete"), this.#l && this.#o?.push([r, t, "delete"])), this.#i.delete(t), this.#n[i] = void 0, this.#e[i] = void 0, i === this.#s)
|
|
2576
2576
|
this.#s = this.#h[i];
|
|
@@ -2632,7 +2632,7 @@ const je = (e) => {
|
|
|
2632
2632
|
clear: () => t.clear(),
|
|
2633
2633
|
purgeStale: () => t.purgeStale()
|
|
2634
2634
|
};
|
|
2635
|
-
},
|
|
2635
|
+
}, ci = 15, ie = 256, fi = ({
|
|
2636
2636
|
gl: e,
|
|
2637
2637
|
terrainCache: t
|
|
2638
2638
|
}) => {
|
|
@@ -2651,13 +2651,13 @@ const je = (e) => {
|
|
|
2651
2651
|
const x = new Uint8Array(4 * ie * ie);
|
|
2652
2652
|
return e.bindFramebuffer(e.FRAMEBUFFER, r), u.attach(), e.readPixels(0, 0, ie, ie, e.RGBA, e.UNSIGNED_BYTE, x), e.bindFramebuffer(e.FRAMEBUFFER, null), n.set(_, x), { buffer: x, downsample: d };
|
|
2653
2653
|
};
|
|
2654
|
-
return { get: ([a = 0, f = 0], l =
|
|
2654
|
+
return { get: ([a = 0, f = 0], l = ci) => {
|
|
2655
2655
|
const h = 2 ** l, u = z([a, f, 0]).map((w) => w * h), [d = 0, p = 0] = u.map((w) => Math.floor(w % h));
|
|
2656
2656
|
let [_ = 0, E = 0] = u.map((w) => w % 1);
|
|
2657
2657
|
const x = s([d, p, l]);
|
|
2658
2658
|
if (!x)
|
|
2659
2659
|
return 0;
|
|
2660
|
-
const { buffer: A, downsample:
|
|
2660
|
+
const { buffer: A, downsample: b } = x, v = 2 ** b;
|
|
2661
2661
|
[_, E] = [(d % v + _) / v, (p % v + E) / v];
|
|
2662
2662
|
const m = 4 * ie * Math.floor(E * ie) + 4 * Math.floor(_ * ie), [T = 0, R = 0, y = 0] = A.slice(m, m + 4);
|
|
2663
2663
|
return (T * 65536 + R * 256 + y) / 10 - 1e4;
|
|
@@ -2665,7 +2665,7 @@ const je = (e) => {
|
|
|
2665
2665
|
e.deleteFramebuffer(r);
|
|
2666
2666
|
} };
|
|
2667
2667
|
};
|
|
2668
|
-
var
|
|
2668
|
+
var li = `#version 300 es
|
|
2669
2669
|
|
|
2670
2670
|
precision highp float;
|
|
2671
2671
|
|
|
@@ -2702,16 +2702,16 @@ const ut = ({
|
|
|
2702
2702
|
const [l = 0, h = 0, u = 0] = a;
|
|
2703
2703
|
let d = t.replace("{x}", `${l}`).replace("{y}", `${h}`).replace("{z}", `${u}`);
|
|
2704
2704
|
if (d.includes("{bbox}")) {
|
|
2705
|
-
const [_ = 0, E = 0, x = 0] = a, A = 2 ** x - E - 1, [[
|
|
2705
|
+
const [_ = 0, E = 0, x = 0] = a, A = 2 ** x - E - 1, [[b, v] = [], [m, T] = []] = [
|
|
2706
2706
|
[0, 0],
|
|
2707
2707
|
[1, 1]
|
|
2708
|
-
].map(([R = 0, y = 0]) => [_ + R, A + y, x]).map((R) =>
|
|
2708
|
+
].map(([R = 0, y = 0]) => [_ + R, A + y, x]).map((R) => vt(R, R)).map(([R = 0, y = 0]) => [
|
|
2709
2709
|
(R - 0.5) * 2 * Math.PI * 6378137,
|
|
2710
2710
|
(y - 0.5) * 2 * Math.PI * 6378137
|
|
2711
2711
|
]);
|
|
2712
|
-
d = d.replace("{bbox}", [
|
|
2712
|
+
d = d.replace("{bbox}", [b, v, m, T].join(","));
|
|
2713
2713
|
}
|
|
2714
|
-
const p =
|
|
2714
|
+
const p = Tt({
|
|
2715
2715
|
gl: e,
|
|
2716
2716
|
url: d,
|
|
2717
2717
|
onLoad: () => {
|
|
@@ -2724,7 +2724,7 @@ const ut = ({
|
|
|
2724
2724
|
return { get: s, dispose: () => {
|
|
2725
2725
|
clearInterval(o), i.clear();
|
|
2726
2726
|
} };
|
|
2727
|
-
},
|
|
2727
|
+
}, ui = (e) => {
|
|
2728
2728
|
const t = je({
|
|
2729
2729
|
max: 1e4,
|
|
2730
2730
|
ttl: 1e3
|
|
@@ -2738,17 +2738,17 @@ const ut = ({
|
|
|
2738
2738
|
const s = t.get(r);
|
|
2739
2739
|
if (s)
|
|
2740
2740
|
return s;
|
|
2741
|
-
const [o = 0, c = 0, a = 0] = r, f = n.map(([l = 0, h = 0]) => [o + l, c + h, a]).map((l) =>
|
|
2741
|
+
const [o = 0, c = 0, a = 0] = r, f = n.map(([l = 0, h = 0]) => [o + l, c + h, a]).map((l) => vt(l, l)).map((l) => oe(l, l)).map((l) => {
|
|
2742
2742
|
const [h = 0, u = 0] = l, d = Math.max(a - 5, 0);
|
|
2743
2743
|
return z(
|
|
2744
|
-
|
|
2744
|
+
be(l, h, u, e.get([h, u], d)),
|
|
2745
2745
|
l
|
|
2746
2746
|
);
|
|
2747
2747
|
});
|
|
2748
2748
|
return t.set(r, f), f;
|
|
2749
2749
|
} };
|
|
2750
2750
|
};
|
|
2751
|
-
var
|
|
2751
|
+
var hi = `#version 300 es
|
|
2752
2752
|
|
|
2753
2753
|
precision highp float;
|
|
2754
2754
|
|
|
@@ -2785,21 +2785,21 @@ void main(void) {
|
|
|
2785
2785
|
uv = downsample(downsample_imagery);
|
|
2786
2786
|
color_out = color;
|
|
2787
2787
|
}`;
|
|
2788
|
-
const
|
|
2789
|
-
(e) => xe(0,
|
|
2790
|
-
e * (
|
|
2791
|
-
e * (
|
|
2792
|
-
(e + 1) * (
|
|
2793
|
-
e * (
|
|
2794
|
-
(e + 1) * (
|
|
2795
|
-
(e + 1) * (
|
|
2788
|
+
const B = 34, di = 22, mi = xe(0, B).flatMap(
|
|
2789
|
+
(e) => xe(0, B).flatMap((t) => [
|
|
2790
|
+
e * (B + 1) + t,
|
|
2791
|
+
e * (B + 1) + t + 1,
|
|
2792
|
+
(e + 1) * (B + 1) + t + 1,
|
|
2793
|
+
e * (B + 1) + t,
|
|
2794
|
+
(e + 1) * (B + 1) + t + 1,
|
|
2795
|
+
(e + 1) * (B + 1) + t
|
|
2796
2796
|
])
|
|
2797
|
-
), Ne = 0.1,
|
|
2798
|
-
(e) => xe(0,
|
|
2799
|
-
let n = (t - 1) / (
|
|
2800
|
-
return t === 0 && (n = 0, r = -Ne), t ===
|
|
2797
|
+
), Ne = 0.1, pi = xe(0, B + 1).flatMap(
|
|
2798
|
+
(e) => xe(0, B + 1).map((t) => {
|
|
2799
|
+
let n = (t - 1) / (B - 2), i = (e - 1) / (B - 2), r = 0;
|
|
2800
|
+
return t === 0 && (n = 0, r = -Ne), t === B && (n = 1, r = -Ne), e === 0 && (i = 0, r = -Ne), e === B && (i = 1, r = -Ne), [n, i, r];
|
|
2801
2801
|
})
|
|
2802
|
-
),
|
|
2802
|
+
), ji = (e, t = {}) => {
|
|
2803
2803
|
const { gl: n } = e;
|
|
2804
2804
|
let i, r;
|
|
2805
2805
|
const s = n.getExtension(
|
|
@@ -2829,56 +2829,51 @@ const V = 34, hi = 22, di = xe(0, V).flatMap(
|
|
|
2829
2829
|
onLoad: () => {
|
|
2830
2830
|
n.texParameteri(n.TEXTURE_2D, n.TEXTURE_MIN_FILTER, n.NEAREST), n.texParameteri(n.TEXTURE_2D, n.TEXTURE_MAG_FILTER, n.NEAREST), n.texParameteri(n.TEXTURE_2D, n.TEXTURE_WRAP_S, n.CLAMP_TO_EDGE), n.texParameteri(n.TEXTURE_2D, n.TEXTURE_WRAP_T, n.CLAMP_TO_EDGE);
|
|
2831
2831
|
}
|
|
2832
|
-
}), l = Fe(f, 3), h =
|
|
2833
|
-
d.set(
|
|
2834
|
-
const p =
|
|
2835
|
-
p.set(
|
|
2836
|
-
const { renderProgram: _, depthProgram: E } =
|
|
2832
|
+
}), l = Fe(f, 3), h = fi({ gl: n, terrainCache: f }), u = ui(h), d = V({ gl: n, type: "f32", target: "array" });
|
|
2833
|
+
d.set(pi.flatMap(([g = 0, w = 0, M = 0]) => [g, w, M]));
|
|
2834
|
+
const p = V({ gl: n, type: "u16", target: "element" });
|
|
2835
|
+
p.set(mi);
|
|
2836
|
+
const { renderProgram: _, depthProgram: E } = vi(e, {
|
|
2837
2837
|
uvwBuffer: d,
|
|
2838
2838
|
indexBuffer: p
|
|
2839
|
-
}), x = [0, 1, 2, 3], A = x.map(L),
|
|
2840
|
-
const {
|
|
2841
|
-
const [I = 0, X = 0, C = 0] = N,
|
|
2842
|
-
|
|
2843
|
-
|
|
2844
|
-
|
|
2845
|
-
if (xi(H))
|
|
2846
|
-
return [];
|
|
2847
|
-
W = Ei(H.map((k, G) => U(k, v[G]))) > 512 / devicePixelRatio;
|
|
2848
|
-
}
|
|
2849
|
-
return W && C < hi ? [
|
|
2839
|
+
}), x = [0, 1, 2, 3], A = x.map(L), b = x.map(ne), v = x.map(ve), m = (g) => {
|
|
2840
|
+
const { worldToLocal: w, localToClip: M, clipToScreen: S } = g, U = 512 * Math.pow(2, t.downsample?.() ?? 0), P = (N) => {
|
|
2841
|
+
const [I = 0, X = 0, C = 0] = N, j = u.get(N).map(($, k) => w($, A[k])).map(($, k) => M($, b[k]));
|
|
2842
|
+
return xi(j) ? [] : Ei(
|
|
2843
|
+
_i(j).map(($, k) => S($, v[k]))
|
|
2844
|
+
) > U && C < di ? [
|
|
2850
2845
|
[2 * I, 2 * X, C + 1],
|
|
2851
2846
|
[2 * I + 1, 2 * X, C + 1],
|
|
2852
2847
|
[2 * I, 2 * X + 1, C + 1],
|
|
2853
2848
|
[2 * I + 1, 2 * X + 1, C + 1]
|
|
2854
|
-
].flatMap((
|
|
2849
|
+
].flatMap((k) => P(k)) : [N];
|
|
2855
2850
|
};
|
|
2856
2851
|
return P([0, 0, 0]);
|
|
2857
2852
|
}, T = ({
|
|
2858
2853
|
viewport: g,
|
|
2859
2854
|
depth: w = !1,
|
|
2860
|
-
index:
|
|
2855
|
+
index: M = 0
|
|
2861
2856
|
}) => {
|
|
2862
2857
|
const S = t.color?.() ?? [1, 1, 1, 1];
|
|
2863
2858
|
if (c(), Ee(n, w, t))
|
|
2864
2859
|
return;
|
|
2865
2860
|
const U = w ? E : _, { projection: P, modelView: N, camera: I } = g, X = m(g);
|
|
2866
2861
|
for (const C of X) {
|
|
2867
|
-
const
|
|
2868
|
-
if (!w && !
|
|
2862
|
+
const Y = w ? void 0 : r?.get(C), j = l.get(C);
|
|
2863
|
+
if (!w && !Y || !j)
|
|
2869
2864
|
continue;
|
|
2870
|
-
const { texture:
|
|
2865
|
+
const { texture: q, downsample: J } = j, { texture: $ = q, downsample: k = 0 } = Y ?? {};
|
|
2871
2866
|
U.execute({
|
|
2872
2867
|
projection: P,
|
|
2873
2868
|
modelView: N,
|
|
2874
|
-
camera:
|
|
2869
|
+
camera: K(I),
|
|
2875
2870
|
xyz: C,
|
|
2876
|
-
imagery:
|
|
2877
|
-
terrain:
|
|
2878
|
-
downsampleImagery:
|
|
2871
|
+
imagery: $,
|
|
2872
|
+
terrain: q,
|
|
2873
|
+
downsampleImagery: k,
|
|
2879
2874
|
downsampleTerrain: J,
|
|
2880
2875
|
color: S,
|
|
2881
|
-
index:
|
|
2876
|
+
index: M
|
|
2882
2877
|
});
|
|
2883
2878
|
}
|
|
2884
2879
|
}, R = () => {
|
|
@@ -2890,12 +2885,12 @@ const V = 34, hi = 22, di = xe(0, V).flatMap(
|
|
|
2890
2885
|
...y,
|
|
2891
2886
|
elevation: h.get
|
|
2892
2887
|
};
|
|
2893
|
-
},
|
|
2888
|
+
}, vi = ({ gl: e, programs: t }, { uvwBuffer: n, indexBuffer: i }) => {
|
|
2894
2889
|
const r = (c = !1) => {
|
|
2895
2890
|
const a = t.get({
|
|
2896
|
-
vertexSource:
|
|
2897
|
-
fragmentSource: c ? _e :
|
|
2898
|
-
}), f = a.attribute3f("uvw", n), l = a.uniformMatrix4f("projection"), h = a.uniformMatrix4f("model_view"), u = a.uniform1i("imagery"), d = a.uniform1i("terrain"), p = a.uniform1i("downsample_imagery"), _ = a.uniform1i("downsample_terrain"), E = a.uniform4f("color"), x = a.uniform3i("xyz"), A = a.uniform3i("camera"),
|
|
2891
|
+
vertexSource: hi,
|
|
2892
|
+
fragmentSource: c ? _e : li
|
|
2893
|
+
}), f = a.attribute3f("uvw", n), l = a.uniformMatrix4f("projection"), h = a.uniformMatrix4f("model_view"), u = a.uniform1i("imagery"), d = a.uniform1i("terrain"), p = a.uniform1i("downsample_imagery"), _ = a.uniform1i("downsample_terrain"), E = a.uniform4f("color"), x = a.uniform3i("xyz"), A = a.uniform3i("camera"), b = a.uniform1i("index");
|
|
2899
2894
|
return { execute: ({
|
|
2900
2895
|
projection: m,
|
|
2901
2896
|
modelView: T,
|
|
@@ -2903,38 +2898,36 @@ const V = 34, hi = 22, di = xe(0, V).flatMap(
|
|
|
2903
2898
|
xyz: y,
|
|
2904
2899
|
imagery: g,
|
|
2905
2900
|
terrain: w,
|
|
2906
|
-
downsampleImagery:
|
|
2901
|
+
downsampleImagery: M,
|
|
2907
2902
|
downsampleTerrain: S,
|
|
2908
2903
|
color: U,
|
|
2909
2904
|
index: P
|
|
2910
2905
|
}) => {
|
|
2911
|
-
a.use(), f.use(), l.set(m), h.set(T), x.set(y), A.set(R), p.set(
|
|
2906
|
+
a.use(), f.use(), l.set(m), h.set(T), x.set(y), A.set(R), p.set(M), _.set(S), E.set(U), b.set(P), e.activeTexture(e.TEXTURE0), u.set(0), g.use(), e.activeTexture(e.TEXTURE1), d.set(1), w.use(), i.use(), e.drawElements(e.TRIANGLES, B * B * 2 * 3, e.UNSIGNED_SHORT, 0);
|
|
2912
2907
|
} };
|
|
2913
2908
|
}, s = r(), o = r(!0);
|
|
2914
2909
|
return { renderProgram: s, depthProgram: o };
|
|
2915
|
-
},
|
|
2916
|
-
const [n, i, r, s] = t.reduce(
|
|
2917
|
-
([f, l, h, u], [d = 0, p = 0]) => [
|
|
2918
|
-
Math.min(d, f),
|
|
2919
|
-
Math.max(d, l),
|
|
2920
|
-
Math.min(p, h),
|
|
2921
|
-
Math.max(p, u)
|
|
2922
|
-
],
|
|
2923
|
-
[1, 0, 1, 0]
|
|
2924
|
-
), [o = 0, c = 0, a = 0] = e;
|
|
2925
|
-
return o > n && o < i && c > r && c < s && a > 0 && a < i - n;
|
|
2926
|
-
}, xi = (e) => e.every(([t = 0, , , n = 0]) => t > n) || e.every(([t = 0, , , n = 0]) => t < -n) || e.every(([, t = 0, , n = 0]) => t > n) || e.every(([, t = 0, , n = 0]) => t < -n) || e.every(([, , t = 0, n = 0]) => t > n) || e.every(([, , t = 0, n = 0]) => t < -n) || e.every(([, , , t = 0]) => t < 0), Ei = (e) => Math.sqrt(
|
|
2910
|
+
}, xi = (e) => e.every(([t = 0, , , n = 0]) => t > n) || e.every(([t = 0, , , n = 0]) => t < -n) || e.every(([, t = 0, , n = 0]) => t > n) || e.every(([, t = 0, , n = 0]) => t < -n) || e.every(([, , t = 0, n = 0]) => t > n) || e.every(([, , t = 0]) => t < 0), Ei = (e) => Math.sqrt(
|
|
2927
2911
|
e.map(
|
|
2928
|
-
(t, n) =>
|
|
2912
|
+
(t, n) => vn(
|
|
2929
2913
|
e[n] ?? [0, 0],
|
|
2930
2914
|
e[(n + 1) % e.length] ?? [0, 0]
|
|
2931
2915
|
)
|
|
2932
2916
|
).reduce((t, n) => t + n, 0) / e.length
|
|
2933
|
-
),
|
|
2917
|
+
), ht = (e, t) => {
|
|
2918
|
+
const [n = 0, i = 0, r = 0, s = 0] = t, o = ([l = 0, h = 0, u = 0, d = 0]) => n * l + i * h + r * u + s * d >= 0, c = ([l = 0, h = 0, u = 0, d = 0], [p = 0, _ = 0, E = 0, x = 0]) => {
|
|
2919
|
+
const A = n * l + i * h + r * u + s * d, b = n * p + i * _ + r * E + s * x, v = A / (A - b), m = l + v * (p - l), T = h + v * (_ - h), R = u + v * (E - u), y = d + v * (x - d);
|
|
2920
|
+
return [m, T, R, y];
|
|
2921
|
+
}, a = [];
|
|
2922
|
+
let f = e[e.length - 1] ?? [0, 0, 0, 0];
|
|
2923
|
+
for (const l of e)
|
|
2924
|
+
o(l) ? (o(f) || a.push(c(f, l)), a.push(l)) : o(f) && a.push(c(f, l)), f = l;
|
|
2925
|
+
return a;
|
|
2926
|
+
}, _i = (e) => ht(ht(e, [0, 0, 1, 0]), [0, 0, -1, 1]), Bi = {
|
|
2934
2927
|
pickable: !0,
|
|
2935
2928
|
depth: !0,
|
|
2936
2929
|
polygonOffset: 0
|
|
2937
|
-
},
|
|
2930
|
+
}, Vi = (e, t) => {
|
|
2938
2931
|
let n;
|
|
2939
2932
|
return () => {
|
|
2940
2933
|
const i = e.map((s) => s());
|
|
@@ -2987,27 +2980,27 @@ const V = 34, hi = 22, di = xe(0, V).flatMap(
|
|
|
2987
2980
|
const o = t();
|
|
2988
2981
|
return n = n ?? o, n = e({ time: s, current: n, target: o }), n;
|
|
2989
2982
|
};
|
|
2990
|
-
},
|
|
2983
|
+
}, yi = fe(
|
|
2991
2984
|
({ time: e, current: t, target: n }) => (Math.abs(n - t) < Ue ? t = n : t = t + (n - t) * (1 - Math.exp(-Se * e)), t)
|
|
2992
|
-
),
|
|
2985
|
+
), Ti = (e) => fe(({ time: t, current: n, target: i }) => (pn(n, i) < Ue ? ln(n, i) : n = hn(
|
|
2993
2986
|
ve(),
|
|
2994
2987
|
n,
|
|
2995
|
-
|
|
2988
|
+
mn(
|
|
2996
2989
|
ve(),
|
|
2997
|
-
|
|
2990
|
+
xn(ve(), i, n),
|
|
2998
2991
|
1 - Math.exp(-Se * t)
|
|
2999
2992
|
)
|
|
3000
|
-
), n))(() =>
|
|
2993
|
+
), n))(() => fn(e())), Zi = (e) => fe(({ time: t, current: n, target: i }) => (Jt(n, i) < Ue ? Ft(n, i) : n = Qt(
|
|
3001
2994
|
ne(),
|
|
3002
2995
|
n,
|
|
3003
|
-
|
|
2996
|
+
qt(
|
|
3004
2997
|
ne(),
|
|
3005
|
-
|
|
2998
|
+
nn(ne(), i, n),
|
|
3006
2999
|
1 - Math.exp(-Se * t)
|
|
3007
3000
|
)
|
|
3008
|
-
), n))(() =>
|
|
3009
|
-
const r =
|
|
3010
|
-
return r *
|
|
3001
|
+
), n))(() => mt(e())), Yi = (e) => fe(({ time: t, current: n, target: i }) => {
|
|
3002
|
+
const r = Me(z(n), z(i));
|
|
3003
|
+
return r * F < Ue || r > 1e5 / F ? Zt(n, i) : n = oe(
|
|
3011
3004
|
re(
|
|
3012
3005
|
L(),
|
|
3013
3006
|
z(n),
|
|
@@ -3018,10 +3011,10 @@ const V = 34, hi = 22, di = xe(0, V).flatMap(
|
|
|
3018
3011
|
)
|
|
3019
3012
|
)
|
|
3020
3013
|
), n;
|
|
3021
|
-
})(() =>
|
|
3014
|
+
})(() => dt(e())), $i = (e) => {
|
|
3022
3015
|
let t = [0, 0, 0], n = [0, 0, 0], i, r;
|
|
3023
3016
|
return fe(({ time: o, current: c, target: a }) => {
|
|
3024
|
-
if (a === c || o > 1 ||
|
|
3017
|
+
if (a === c || o > 1 || Me(z(a), z(c)) > 1e3 / F)
|
|
3025
3018
|
return i = void 0, t = [0, 0, 0], n = [0, 0, 0], a;
|
|
3026
3019
|
const f = performance.now();
|
|
3027
3020
|
i ? a !== i && r !== void 0 && f - r > 1 && (n = de(
|
|
@@ -3057,24 +3050,24 @@ const V = 34, hi = 22, di = xe(0, V).flatMap(
|
|
|
3057
3050
|
)
|
|
3058
3051
|
)
|
|
3059
3052
|
), t = l, c;
|
|
3060
|
-
})(() =>
|
|
3061
|
-
},
|
|
3062
|
-
const t =
|
|
3063
|
-
return () =>
|
|
3064
|
-
},
|
|
3065
|
-
let r =
|
|
3053
|
+
})(() => dt(e()));
|
|
3054
|
+
}, wi = (e) => {
|
|
3055
|
+
const t = gi(() => xt(e()));
|
|
3056
|
+
return () => Tn(t());
|
|
3057
|
+
}, gi = (e) => fe(({ time: t, current: n, target: i }) => {
|
|
3058
|
+
let r = sn(n, i);
|
|
3066
3059
|
return isNaN(r) && (r = 0), n = Ie(
|
|
3067
3060
|
He(),
|
|
3068
3061
|
n,
|
|
3069
3062
|
i,
|
|
3070
3063
|
Se * 0.5 * Math.max(0.5, r) * t
|
|
3071
3064
|
), r < Ue && (n = i), n;
|
|
3072
|
-
})(() =>
|
|
3073
|
-
const t =
|
|
3065
|
+
})(() => an(e())), Ri = 8, ki = (e) => {
|
|
3066
|
+
const t = wi(() => e().orientation), n = Ti(() => e().offset), i = yi(() => e().fieldOfView);
|
|
3074
3067
|
return fe(({ time: s, current: o, target: c }) => {
|
|
3075
|
-
let a =
|
|
3068
|
+
let a = Me(z(o.target), z(c.target)) * F;
|
|
3076
3069
|
a < 1e3 && (a = 0);
|
|
3077
|
-
const f = Math.max(c.distance, a), l = 1 - Math.exp(-
|
|
3070
|
+
const f = Math.max(c.distance, a), l = 1 - Math.exp(-Ri * s), h = Math.exp(
|
|
3078
3071
|
Math.log(o.distance) + (Math.log(f) - Math.log(o.distance)) * l
|
|
3079
3072
|
), u = o.distance > a ? 1 : o.distance / a, d = oe(
|
|
3080
3073
|
re(
|
|
@@ -3100,7 +3093,7 @@ const V = 34, hi = 22, di = xe(0, V).flatMap(
|
|
|
3100
3093
|
fieldOfView: i()
|
|
3101
3094
|
};
|
|
3102
3095
|
})(e);
|
|
3103
|
-
},
|
|
3096
|
+
}, Ai = (e) => {
|
|
3104
3097
|
const t = e.createTexture();
|
|
3105
3098
|
e.bindTexture(e.TEXTURE_2D, t), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_MIN_FILTER, e.NEAREST), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_MAG_FILTER, e.NEAREST), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_WRAP_S, e.CLAMP_TO_EDGE), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_WRAP_T, e.CLAMP_TO_EDGE);
|
|
3106
3099
|
const n = e.createRenderbuffer();
|
|
@@ -3149,7 +3142,7 @@ const V = 34, hi = 22, di = xe(0, V).flatMap(
|
|
|
3149
3142
|
e.deleteTexture(t), e.deleteFramebuffer(i), e.deleteRenderbuffer(n);
|
|
3150
3143
|
}
|
|
3151
3144
|
};
|
|
3152
|
-
},
|
|
3145
|
+
}, bi = (e, {
|
|
3153
3146
|
view: t,
|
|
3154
3147
|
screen: n,
|
|
3155
3148
|
pick: i
|
|
@@ -3177,18 +3170,18 @@ const V = 34, hi = 22, di = xe(0, V).flatMap(
|
|
|
3177
3170
|
(y?.onDrag || y?.onDragFlat) && (o = y, o.onDragStart?.({ point: T, position: R, layer: y }), [, , c] = R);
|
|
3178
3171
|
return;
|
|
3179
3172
|
}
|
|
3180
|
-
const { point:
|
|
3181
|
-
m?.onMouseMove?.({ point:
|
|
3173
|
+
const { point: b, position: v, layer: m } = i([_, E]);
|
|
3174
|
+
m?.onMouseMove?.({ point: b, position: v, layer: m });
|
|
3182
3175
|
}, l = (p) => {
|
|
3183
3176
|
if (s && h(p), s = !1, o) {
|
|
3184
|
-
const { x: _, y: E } = p, { point: x, position: A, layer:
|
|
3185
|
-
o.onDragEnd?.({ point: x, position: A, layer:
|
|
3177
|
+
const { x: _, y: E } = p, { point: x, position: A, layer: b } = i([_, E]);
|
|
3178
|
+
o.onDragEnd?.({ point: x, position: A, layer: b });
|
|
3186
3179
|
}
|
|
3187
3180
|
o = void 0;
|
|
3188
3181
|
}, h = (p) => {
|
|
3189
|
-
const { x: _, y: E, button: x } = p, { point: A, position:
|
|
3182
|
+
const { x: _, y: E, button: x } = p, { point: A, position: b, layer: v } = i([_, E]);
|
|
3190
3183
|
(x === 2 ? v?.onRightClick : v?.onClick)?.(
|
|
3191
|
-
{ point: A, position:
|
|
3184
|
+
{ point: A, position: b, layer: v },
|
|
3192
3185
|
p
|
|
3193
3186
|
);
|
|
3194
3187
|
}, u = ({ x: p, y: _ }) => {
|
|
@@ -3204,12 +3197,12 @@ const V = 34, hi = 22, di = xe(0, V).flatMap(
|
|
|
3204
3197
|
}
|
|
3205
3198
|
};
|
|
3206
3199
|
};
|
|
3207
|
-
|
|
3208
|
-
const
|
|
3200
|
+
It(Array);
|
|
3201
|
+
const Hi = ({ gl: e }, t) => {
|
|
3209
3202
|
const { view: n, layers: i } = t;
|
|
3210
3203
|
let r = !0, s = [0, 0];
|
|
3211
3204
|
e.enable(e.CULL_FACE), e.cullFace(e.FRONT), e.depthFunc(e.LEQUAL);
|
|
3212
|
-
const o =
|
|
3205
|
+
const o = Ai(e), { canvas: c } = e, a = ([v = 0, m = 0]) => {
|
|
3213
3206
|
v = v || 1, m = m || 1, s = [v, m], c.width = v * devicePixelRatio, c.height = m * devicePixelRatio, o.resize([c.width, c.height]);
|
|
3214
3207
|
};
|
|
3215
3208
|
a([c.width, c.height]);
|
|
@@ -3242,12 +3235,12 @@ const ki = ({ gl: e }, t) => {
|
|
|
3242
3235
|
o.use();
|
|
3243
3236
|
const [g] = m ? i() : [];
|
|
3244
3237
|
u(g);
|
|
3245
|
-
const [w = 0,
|
|
3238
|
+
const [w = 0, M = 0] = v, [S, U] = o.read([
|
|
3246
3239
|
w * devicePixelRatio,
|
|
3247
|
-
|
|
3240
|
+
M * devicePixelRatio
|
|
3248
3241
|
]), [P = 0, N = 0] = T(v), I = oe(y(R([P, N, S, 1]))), X = U === 0 ? void 0 : g ?? Ce(i())[U - 1];
|
|
3249
3242
|
return { point: v, position: I, layer: X };
|
|
3250
|
-
}, x =
|
|
3243
|
+
}, x = bi(e, {
|
|
3251
3244
|
view: n,
|
|
3252
3245
|
screen: () => s,
|
|
3253
3246
|
pick: E
|
|
@@ -3270,43 +3263,43 @@ const ki = ({ gl: e }, t) => {
|
|
|
3270
3263
|
}, Ce = (e) => e.flatMap((t) => [...Ce(t.children ?? []), t]);
|
|
3271
3264
|
export {
|
|
3272
3265
|
ce as cache,
|
|
3273
|
-
|
|
3274
|
-
|
|
3275
|
-
|
|
3276
|
-
|
|
3266
|
+
Vi as cacheAll,
|
|
3267
|
+
F as circumference,
|
|
3268
|
+
Ui as createBillboardLayer,
|
|
3269
|
+
Pi as createContainer,
|
|
3277
3270
|
Mi as createContext,
|
|
3278
|
-
|
|
3279
|
-
|
|
3280
|
-
|
|
3281
|
-
|
|
3282
|
-
|
|
3271
|
+
zi as createDynamicContainer,
|
|
3272
|
+
Ni as createEmptyLayer,
|
|
3273
|
+
Ii as createLineLayer,
|
|
3274
|
+
oi as createMemoryTexture,
|
|
3275
|
+
Si as createMouseControl,
|
|
3283
3276
|
ye as createMouseEvents,
|
|
3284
|
-
|
|
3285
|
-
|
|
3286
|
-
|
|
3287
|
-
|
|
3288
|
-
|
|
3289
|
-
|
|
3290
|
-
|
|
3291
|
-
|
|
3292
|
-
|
|
3293
|
-
|
|
3277
|
+
yi as createNumberTransition,
|
|
3278
|
+
Di as createObjectLayer,
|
|
3279
|
+
wi as createOrientationTransition,
|
|
3280
|
+
Oi as createPolygonLayer,
|
|
3281
|
+
Yi as createPositionTransition,
|
|
3282
|
+
$i as createPositionVelocityTransition,
|
|
3283
|
+
gi as createQuaternionTransition,
|
|
3284
|
+
Ci as createRadarLayer,
|
|
3285
|
+
Li as createRenderLayer,
|
|
3286
|
+
ji as createTerrainLayer,
|
|
3294
3287
|
fe as createTransition,
|
|
3295
|
-
|
|
3296
|
-
|
|
3297
|
-
|
|
3298
|
-
|
|
3299
|
-
|
|
3300
|
-
|
|
3301
|
-
|
|
3302
|
-
|
|
3288
|
+
Ti as createVec2Transition,
|
|
3289
|
+
Zi as createVec4Transition,
|
|
3290
|
+
ki as createViewTransition,
|
|
3291
|
+
Hi as createWorld,
|
|
3292
|
+
Pt as debounce,
|
|
3293
|
+
Bi as defaultLayerOptions,
|
|
3294
|
+
Et as defaultView,
|
|
3295
|
+
En as degrees,
|
|
3303
3296
|
oe as geodetic,
|
|
3304
3297
|
z as mercator,
|
|
3305
|
-
|
|
3298
|
+
_n as quadratic,
|
|
3306
3299
|
De as radians,
|
|
3307
3300
|
xe as range,
|
|
3308
|
-
|
|
3309
|
-
|
|
3310
|
-
|
|
3301
|
+
vt as tileToMercator,
|
|
3302
|
+
Tn as toOrientation,
|
|
3303
|
+
xt as toQuaternion
|
|
3311
3304
|
};
|
|
3312
3305
|
//# sourceMappingURL=index.js.map
|