three-low-poly 0.9.20 → 0.9.21
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.cjs.js +6 -6
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +39 -0
- package/dist/index.es.js +1186 -1150
- package/dist/index.es.js.map +1 -1
- package/dist/index.iife.js +8 -8
- package/dist/index.iife.js.map +1 -1
- package/dist/index.umd.js +8 -8
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
package/dist/index.es.js
CHANGED
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
var St = Object.defineProperty;
|
|
2
|
-
var Pt = (e, t,
|
|
3
|
-
var I = (e, t,
|
|
4
|
-
import { Vector3 as M, MathUtils as L, Quaternion as wt, InstancedMesh as
|
|
5
|
-
function
|
|
6
|
-
const a = e.position.clone(),
|
|
2
|
+
var Pt = (e, t, o) => t in e ? St(e, t, { enumerable: !0, configurable: !0, writable: !0, value: o }) : e[t] = o;
|
|
3
|
+
var I = (e, t, o) => Pt(e, typeof t != "symbol" ? t + "" : t, o);
|
|
4
|
+
import { Vector3 as M, MathUtils as L, Quaternion as wt, InstancedMesh as nt, SphereGeometry as z, MeshStandardMaterial as w, Matrix4 as X, BufferGeometry as E, Float32BufferAttribute as F, DoubleSide as Y, Euler as Gt, BufferAttribute as _, BoxGeometry as b, Shape as Z, ExtrudeGeometry as j, Object3D as Ct, Vector2 as A, LatheGeometry as q, CylinderGeometry as G, ConeGeometry as J, DodecahedronGeometry as et, CircleGeometry as Rt, TorusGeometry as Mt, Mesh as x, ShaderMaterial as st, MeshPhysicalMaterial as rt, Group as k, PointLight as Bt, CatmullRomCurve3 as Nt, TubeGeometry as Ot, Path as _t, Color as ot, BackSide as mt, DataTexture as Ut, RGBAFormat as zt, UnsignedByteType as Ft, RepeatWrapping as pt, NearestFilter as Lt, Box3 as V } from "three";
|
|
5
|
+
function Ro(e, t, o, s) {
|
|
6
|
+
const a = e.position.clone(), n = a.clone().add(e.getWorldDirection(new M()).multiplyScalar(-t));
|
|
7
7
|
let r = null;
|
|
8
8
|
function i(c) {
|
|
9
9
|
r === null && (r = c);
|
|
10
|
-
const u = (c - r) /
|
|
10
|
+
const u = (c - r) / o;
|
|
11
11
|
if (u >= 1) {
|
|
12
|
-
e.position.copy(
|
|
12
|
+
e.position.copy(n), s && s();
|
|
13
13
|
return;
|
|
14
14
|
}
|
|
15
|
-
e.position.lerpVectors(a,
|
|
15
|
+
e.position.lerpVectors(a, n, u), requestAnimationFrame(i);
|
|
16
16
|
}
|
|
17
17
|
requestAnimationFrame(i);
|
|
18
18
|
}
|
|
19
|
-
function
|
|
19
|
+
function Bo(e, t, o, s) {
|
|
20
20
|
const a = t.length - 1;
|
|
21
|
-
let
|
|
21
|
+
let n = null;
|
|
22
22
|
function r(i) {
|
|
23
|
-
|
|
24
|
-
const l = (i -
|
|
23
|
+
n === null && (n = i);
|
|
24
|
+
const l = (i - n) / o;
|
|
25
25
|
if (l >= 1) {
|
|
26
26
|
e.position.copy(t[t.length - 1]), s && s();
|
|
27
27
|
return;
|
|
@@ -31,52 +31,52 @@ function Rn(e, t, n, s) {
|
|
|
31
31
|
}
|
|
32
32
|
requestAnimationFrame(r);
|
|
33
33
|
}
|
|
34
|
-
function
|
|
35
|
-
let
|
|
34
|
+
function No(e, t, o, s, a) {
|
|
35
|
+
let n = null;
|
|
36
36
|
function r(i) {
|
|
37
|
-
|
|
38
|
-
const l = (i -
|
|
37
|
+
n || (n = i);
|
|
38
|
+
const l = (i - n) / s;
|
|
39
39
|
if (l >= 1) {
|
|
40
40
|
a && a();
|
|
41
41
|
return;
|
|
42
42
|
}
|
|
43
|
-
const u = l * Math.PI * 2, m = t.x +
|
|
43
|
+
const u = l * Math.PI * 2, m = t.x + o * Math.cos(u), h = t.z + o * Math.sin(u);
|
|
44
44
|
e.position.set(m, e.position.y, h), e.lookAt(t), requestAnimationFrame(r);
|
|
45
45
|
}
|
|
46
46
|
requestAnimationFrame(r);
|
|
47
47
|
}
|
|
48
|
-
function
|
|
48
|
+
function Oo(e, t, o, s, a, n) {
|
|
49
49
|
let r = null, i = 0;
|
|
50
50
|
function c(l) {
|
|
51
51
|
r === null && (r = l);
|
|
52
|
-
const u = l - r, m = s / a, h = u % m / m, f = Math.sin(h * Math.PI * 2) * Math.PI / 6, p = t.x +
|
|
52
|
+
const u = l - r, m = s / a, h = u % m / m, f = Math.sin(h * Math.PI * 2) * Math.PI / 6, p = t.x + o * Math.sin(f), d = t.z + o * Math.cos(f);
|
|
53
53
|
if (e.position.set(p, e.position.y, d), e.lookAt(t), u >= (i + 1) * m && i++, i >= a) {
|
|
54
|
-
|
|
54
|
+
n && n();
|
|
55
55
|
return;
|
|
56
56
|
}
|
|
57
57
|
requestAnimationFrame(c);
|
|
58
58
|
}
|
|
59
59
|
requestAnimationFrame(c);
|
|
60
60
|
}
|
|
61
|
-
function
|
|
61
|
+
function _o(e, t, o, s, a, n, r) {
|
|
62
62
|
let i = null;
|
|
63
63
|
function c(l) {
|
|
64
64
|
i === null && (i = l);
|
|
65
|
-
const m = (l - i) /
|
|
65
|
+
const m = (l - i) / n;
|
|
66
66
|
if (m >= 1) {
|
|
67
67
|
r && r();
|
|
68
68
|
return;
|
|
69
69
|
}
|
|
70
|
-
const h = m * Math.PI * 2 * a, f = t.x +
|
|
70
|
+
const h = m * Math.PI * 2 * a, f = t.x + o * Math.cos(h), p = t.z + o * Math.sin(h), d = t.y + s * m;
|
|
71
71
|
e.position.set(f, d, p), e.lookAt(t), requestAnimationFrame(c);
|
|
72
72
|
}
|
|
73
73
|
requestAnimationFrame(c);
|
|
74
74
|
}
|
|
75
|
-
function
|
|
75
|
+
function Uo(e, t, o, s) {
|
|
76
76
|
const a = e.position.clone();
|
|
77
|
-
let
|
|
77
|
+
let n = null;
|
|
78
78
|
function r(i) {
|
|
79
|
-
if (
|
|
79
|
+
if (n === null && (n = i), (i - n) / o >= 1) {
|
|
80
80
|
e.position.copy(a), s && s();
|
|
81
81
|
return;
|
|
82
82
|
}
|
|
@@ -89,34 +89,34 @@ function _n(e, t, n, s) {
|
|
|
89
89
|
}
|
|
90
90
|
requestAnimationFrame(r);
|
|
91
91
|
}
|
|
92
|
-
function
|
|
92
|
+
function zo(e, t, o, s, a, n) {
|
|
93
93
|
const r = e.fov;
|
|
94
|
-
e.fov =
|
|
94
|
+
e.fov = o, e.updateProjectionMatrix();
|
|
95
95
|
let i = null;
|
|
96
96
|
function c(l) {
|
|
97
97
|
i === null && (i = l);
|
|
98
98
|
const m = (l - i) / a;
|
|
99
99
|
if (m >= 1) {
|
|
100
|
-
e.fov = s, e.updateProjectionMatrix(), e.lookAt(t), e.fov = r, e.updateProjectionMatrix(),
|
|
100
|
+
e.fov = s, e.updateProjectionMatrix(), e.lookAt(t), e.fov = r, e.updateProjectionMatrix(), n && n();
|
|
101
101
|
return;
|
|
102
102
|
}
|
|
103
|
-
e.fov = L.lerp(
|
|
103
|
+
e.fov = L.lerp(o, s, m), e.updateProjectionMatrix(), e.lookAt(t), requestAnimationFrame(c);
|
|
104
104
|
}
|
|
105
105
|
requestAnimationFrame(c);
|
|
106
106
|
}
|
|
107
|
-
class
|
|
107
|
+
class Fo {
|
|
108
108
|
constructor(t) {
|
|
109
109
|
I(this, "speed");
|
|
110
110
|
I(this, "maxIntensity");
|
|
111
111
|
I(this, "minIntensity");
|
|
112
112
|
I(this, "material");
|
|
113
113
|
const {
|
|
114
|
-
speed:
|
|
114
|
+
speed: o = 2,
|
|
115
115
|
//
|
|
116
116
|
maxIntensity: s = 0.8,
|
|
117
117
|
minIntensity: a = 0.2
|
|
118
118
|
} = t;
|
|
119
|
-
this.speed =
|
|
119
|
+
this.speed = o, this.maxIntensity = s, this.minIntensity = a, this.material = t.material;
|
|
120
120
|
}
|
|
121
121
|
/**
|
|
122
122
|
* Update the emissive intensity of the material.
|
|
@@ -136,22 +136,22 @@ class Fn {
|
|
|
136
136
|
function ht(e = 0, t = 1) {
|
|
137
137
|
return Math.random() * (t - e) + e;
|
|
138
138
|
}
|
|
139
|
-
function
|
|
139
|
+
function Lo(e = 0, t = 1) {
|
|
140
140
|
return Math.floor(Math.random() * (t - e + 1)) + e;
|
|
141
141
|
}
|
|
142
|
-
function
|
|
143
|
-
return t + (
|
|
142
|
+
function Dt(e = 0.5, t = 0, o = 1) {
|
|
143
|
+
return t + (o - t) * Math.pow(Math.random(), e);
|
|
144
144
|
}
|
|
145
|
-
function
|
|
146
|
-
return t + (
|
|
145
|
+
function kt(e = 0.5, t = 0, o = 1) {
|
|
146
|
+
return t + (o - t) * Math.pow(1 - Math.random(), e);
|
|
147
147
|
}
|
|
148
|
-
class
|
|
148
|
+
class Do {
|
|
149
149
|
constructor({
|
|
150
150
|
light: t,
|
|
151
|
-
minIntensity:
|
|
151
|
+
minIntensity: o = 0.8,
|
|
152
152
|
maxIntensity: s = 1.2,
|
|
153
153
|
x: a = 0,
|
|
154
|
-
y:
|
|
154
|
+
y: n = 0,
|
|
155
155
|
z: r = 0,
|
|
156
156
|
jitterX: i = 0.02,
|
|
157
157
|
jitterY: c = 0,
|
|
@@ -166,44 +166,44 @@ class Ln {
|
|
|
166
166
|
I(this, "jitterX");
|
|
167
167
|
I(this, "jitterY");
|
|
168
168
|
I(this, "jitterZ");
|
|
169
|
-
this.light = t, this.minIntensity =
|
|
169
|
+
this.light = t, this.minIntensity = o, this.maxIntensity = s, this.x = a, this.y = n, this.z = r, this.jitterX = i, this.jitterY = c, this.jitterZ = l;
|
|
170
170
|
}
|
|
171
171
|
update() {
|
|
172
172
|
this.light && (this.light.intensity = ht(this.minIntensity, this.maxIntensity), this.light.position.x = Math.random() * this.jitterX - this.jitterX / 2 + this.x, this.light.position.y = Math.random() * this.jitterY - this.jitterY / 2 + this.y, this.light.position.z = Math.random() * this.jitterZ - this.jitterZ / 2 + this.z);
|
|
173
173
|
}
|
|
174
174
|
}
|
|
175
|
-
function
|
|
176
|
-
const s = t + Math.random() * (
|
|
175
|
+
function Vt(e, t, o) {
|
|
176
|
+
const s = t + Math.random() * (o - t);
|
|
177
177
|
return setTimeout(e, s);
|
|
178
178
|
}
|
|
179
|
-
function
|
|
179
|
+
function ko(e, t, o) {
|
|
180
180
|
let s;
|
|
181
181
|
function a() {
|
|
182
|
-
const
|
|
182
|
+
const n = t + Math.random() * (o - t);
|
|
183
183
|
s = setTimeout(() => {
|
|
184
184
|
e(), a();
|
|
185
|
-
},
|
|
185
|
+
}, n);
|
|
186
186
|
}
|
|
187
187
|
return a(), () => clearTimeout(s);
|
|
188
188
|
}
|
|
189
|
-
class
|
|
189
|
+
class Vo {
|
|
190
190
|
constructor({
|
|
191
191
|
light: t,
|
|
192
192
|
//
|
|
193
|
-
minIntensity:
|
|
193
|
+
minIntensity: o = 15,
|
|
194
194
|
maxIntensity: s = 20,
|
|
195
195
|
minDuration: a = 50,
|
|
196
|
-
maxDuration:
|
|
196
|
+
maxDuration: n = 250
|
|
197
197
|
} = {}) {
|
|
198
198
|
I(this, "light");
|
|
199
199
|
I(this, "minIntensity");
|
|
200
200
|
I(this, "maxIntensity");
|
|
201
201
|
I(this, "minDuration");
|
|
202
202
|
I(this, "maxDuration");
|
|
203
|
-
this.light = t, this.minIntensity =
|
|
203
|
+
this.light = t, this.minIntensity = o, this.maxIntensity = s, this.minDuration = a, this.maxDuration = n;
|
|
204
204
|
}
|
|
205
205
|
triggerLightning() {
|
|
206
|
-
this.light && (this.light.intensity = ht(this.minIntensity, this.maxIntensity)),
|
|
206
|
+
this.light && (this.light.intensity = ht(this.minIntensity, this.maxIntensity)), Vt(
|
|
207
207
|
() => {
|
|
208
208
|
this.light && (this.light.intensity = 0);
|
|
209
209
|
},
|
|
@@ -233,77 +233,77 @@ const W = {
|
|
|
233
233
|
GAUSSIAN: (e, t) => Math.exp(-Math.pow(e, 2) / (2 * Math.pow(t / 3, 2))),
|
|
234
234
|
INVERSE: (e, t) => t / (t + e),
|
|
235
235
|
SMOOTHSTEP: (e, t) => {
|
|
236
|
-
const
|
|
237
|
-
return
|
|
236
|
+
const o = Math.max(0, Math.min(1, 1 - e / t));
|
|
237
|
+
return o * o * (3 - 2 * o);
|
|
238
238
|
}
|
|
239
|
-
},
|
|
239
|
+
}, qo = (e, t, o, s, a = W.UP, n = tt.LINEAR) => {
|
|
240
240
|
const r = e.attributes.position;
|
|
241
241
|
for (let i = 0; i < r.count; i++) {
|
|
242
242
|
const c = new M();
|
|
243
243
|
c.fromBufferAttribute(r, i);
|
|
244
244
|
const l = c.distanceTo(t);
|
|
245
|
-
if (l <
|
|
246
|
-
const m =
|
|
245
|
+
if (l < o) {
|
|
246
|
+
const m = n(l, o) * s;
|
|
247
247
|
c.add(a.clone().multiplyScalar(m)), r.setXYZ(i, c.x, c.y, c.z);
|
|
248
248
|
}
|
|
249
249
|
}
|
|
250
250
|
r.needsUpdate = !0;
|
|
251
|
-
},
|
|
251
|
+
}, Yo = (e, t, o, s, a, n = W.UP, r = tt.LINEAR) => {
|
|
252
252
|
const i = e.attributes.position;
|
|
253
253
|
for (let c = 0; c < i.count; c++) {
|
|
254
254
|
const l = new M();
|
|
255
255
|
l.fromBufferAttribute(i, c);
|
|
256
256
|
const u = l.distanceTo(t);
|
|
257
|
-
if (u <
|
|
258
|
-
const h = r(u,
|
|
259
|
-
l.add(
|
|
257
|
+
if (u < o) {
|
|
258
|
+
const h = r(u, o) * a, f = l.dot(n.normalize()), p = s - f;
|
|
259
|
+
l.add(n.clone().multiplyScalar(p * h)), i.setXYZ(c, l.x, l.y, l.z);
|
|
260
260
|
}
|
|
261
261
|
}
|
|
262
262
|
i.needsUpdate = !0;
|
|
263
|
-
},
|
|
263
|
+
}, Ho = (e, t, o, s, a = W.UP, n = tt.LINEAR) => {
|
|
264
264
|
const r = e.attributes.position;
|
|
265
265
|
for (let i = 0; i < r.count; i++) {
|
|
266
266
|
const c = new M();
|
|
267
267
|
c.fromBufferAttribute(r, i);
|
|
268
268
|
const l = c.distanceTo(t);
|
|
269
|
-
if (l <
|
|
270
|
-
const u =
|
|
269
|
+
if (l < o) {
|
|
270
|
+
const u = n(l, o), m = s * u, h = a.clone().normalize();
|
|
271
271
|
c.x += L.randFloatSpread(m) * h.x, c.y += L.randFloatSpread(m) * h.y, c.z += L.randFloatSpread(m) * h.z, r.setXYZ(i, c.x, c.y, c.z);
|
|
272
272
|
}
|
|
273
273
|
}
|
|
274
274
|
r.needsUpdate = !0;
|
|
275
|
-
},
|
|
276
|
-
const a = e.attributes.position,
|
|
275
|
+
}, Xo = (e, t, o, s) => {
|
|
276
|
+
const a = e.attributes.position, n = new M();
|
|
277
277
|
for (let r = 0; r < a.count; r++) {
|
|
278
278
|
const i = new M();
|
|
279
|
-
if (i.fromBufferAttribute(a, r), i.distanceTo(t) <
|
|
279
|
+
if (i.fromBufferAttribute(a, r), i.distanceTo(t) < o) {
|
|
280
280
|
let l = new M(), u = 0;
|
|
281
281
|
for (let m = 0; m < a.count; m++)
|
|
282
|
-
|
|
282
|
+
n.fromBufferAttribute(a, m), n.distanceTo(i) < o && (l.add(n), u++);
|
|
283
283
|
u > 0 && (l.divideScalar(u), i.lerp(l, s), a.setXYZ(r, i.x, i.y, i.z));
|
|
284
284
|
}
|
|
285
285
|
}
|
|
286
286
|
a.needsUpdate = !0;
|
|
287
|
-
},
|
|
287
|
+
}, Zo = (e, t, o, s, a = !1, n = tt.LINEAR) => {
|
|
288
288
|
const r = e.attributes.position;
|
|
289
289
|
for (let i = 0; i < r.count; i++) {
|
|
290
290
|
const c = new M();
|
|
291
291
|
c.fromBufferAttribute(r, i);
|
|
292
292
|
const l = c.distanceTo(t);
|
|
293
|
-
if (l <
|
|
294
|
-
const m =
|
|
293
|
+
if (l < o) {
|
|
294
|
+
const m = n(l, o) * s * (a ? -1 : 1), h = c.clone().sub(t).normalize();
|
|
295
295
|
c.add(h.multiplyScalar(m)), r.setXYZ(i, c.x, c.y, c.z);
|
|
296
296
|
}
|
|
297
297
|
}
|
|
298
298
|
r.needsUpdate = !0;
|
|
299
|
-
},
|
|
299
|
+
}, jo = (e, t, o, s, a = W.UP, n = tt.LINEAR) => {
|
|
300
300
|
const r = e.attributes.position, i = new wt();
|
|
301
301
|
for (let c = 0; c < r.count; c++) {
|
|
302
302
|
const l = new M();
|
|
303
303
|
l.fromBufferAttribute(r, c);
|
|
304
304
|
const u = l.distanceTo(t);
|
|
305
|
-
if (u <
|
|
306
|
-
const h =
|
|
305
|
+
if (u < o) {
|
|
306
|
+
const h = n(u, o) * s;
|
|
307
307
|
i.setFromAxisAngle(a, h), l.sub(t).applyQuaternion(i).add(t), r.setXYZ(c, l.x, l.y, l.z);
|
|
308
308
|
}
|
|
309
309
|
}
|
|
@@ -317,7 +317,7 @@ const W = {
|
|
|
317
317
|
YZ: new M(0, 1, 1).normalize(),
|
|
318
318
|
XYZ: new M(1, 1, 1).normalize()
|
|
319
319
|
};
|
|
320
|
-
var
|
|
320
|
+
var N = /* @__PURE__ */ ((e) => (e.LEFT = "left", e.RIGHT = "right", e.TOP = "top", e.BOTTOM = "bottom", e.FRONT = "front", e.BACK = "back", e))(N || {});
|
|
321
321
|
const H = {
|
|
322
322
|
// Red
|
|
323
323
|
CADMIUM_RED: 15073318,
|
|
@@ -465,75 +465,75 @@ const H = {
|
|
|
465
465
|
// White Smoke or Light Gray. It’s a soft, pale gray shade with a hint of warmth.
|
|
466
466
|
TITANIUM_WHITE: 16777215
|
|
467
467
|
// Pure white, the brightest color possible.
|
|
468
|
-
},
|
|
469
|
-
SINE_EASE_IN:
|
|
470
|
-
SINE_EASE_OUT:
|
|
471
|
-
SINE_EASE_IN_OUT:
|
|
472
|
-
QUADRATIC_EASE_IN:
|
|
473
|
-
QUADRATIC_EASE_OUT:
|
|
474
|
-
QUADRATIC_EASE_IN_OUT:
|
|
475
|
-
CUBIC_EASE_IN:
|
|
476
|
-
CUBIC_EASE_OUT:
|
|
477
|
-
CUBIC_EASE_IN_OUT:
|
|
478
|
-
QUARTIC_EASE_IN:
|
|
479
|
-
QUARTIC_EASE_OUT:
|
|
480
|
-
QUARTIC_EASE_IN_OUT:
|
|
481
|
-
QUINTIC_EASE_IN:
|
|
482
|
-
QUINTIC_EASE_OUT:
|
|
468
|
+
}, qt = (e) => 1 - Math.cos(e * Math.PI / 2), Yt = (e) => Math.sin(e * Math.PI / 2), Ht = (e) => -0.5 * (Math.cos(Math.PI * e) - 1), Xt = (e) => e * e, Zt = (e) => 1 - Math.pow(1 - e, 2), jt = (e) => e < 0.5 ? 2 * e * e : 1 - Math.pow(-2 * e + 2, 2) / 2, Qt = (e) => e * e * e, Kt = (e) => 1 - Math.pow(1 - e, 3), $t = (e) => e < 0.5 ? 4 * e * e * e : 1 - Math.pow(-2 * e + 2, 3) / 2, Jt = (e) => e * e * e * e, Wt = (e) => 1 - Math.pow(1 - e, 4), te = (e) => e < 0.5 ? 8 * e * e * e * e : 1 - Math.pow(-2 * e + 2, 4) / 2, ee = (e) => e * e * e * e * e, oe = (e) => 1 - Math.pow(1 - e, 5), ne = (e) => e < 0.5 ? 16 * e * e * e * e * e : 1 - Math.pow(-2 * e + 2, 5) / 2, se = (e) => e === 0 ? 0 : Math.pow(2, 10 * e - 10), re = (e) => e === 1 ? 1 : 1 - Math.pow(2, -10 * e), ae = (e) => e === 0 ? 0 : e === 1 ? 1 : e < 0.5 ? Math.pow(2, 20 * e - 10) / 2 : (2 - Math.pow(2, -20 * e + 10)) / 2, ie = (e) => 1 - Math.sqrt(1 - Math.pow(e, 2)), ce = (e) => Math.sqrt(1 - Math.pow(e - 1, 2)), le = (e) => e < 0.5 ? (1 - Math.sqrt(1 - Math.pow(2 * e, 2))) / 2 : (Math.sqrt(1 - Math.pow(-2 * e + 2, 2)) + 1) / 2, ue = (e) => e, me = (e) => e * e * (3 - 2 * e), he = (e) => 1 - Math.pow(1 - e, 0.3), fe = (e) => Math.pow(e, 0.3), pe = (e) => Math.log(Math.max(0.01, e)) / Math.log(2), de = (e) => Math.sqrt(e), ye = (e) => 1 - e, we = (e) => Math.exp(-Math.pow(e - 0.5, 2) / (2 * 0.5)), Qo = {
|
|
469
|
+
SINE_EASE_IN: qt,
|
|
470
|
+
SINE_EASE_OUT: Yt,
|
|
471
|
+
SINE_EASE_IN_OUT: Ht,
|
|
472
|
+
QUADRATIC_EASE_IN: Xt,
|
|
473
|
+
QUADRATIC_EASE_OUT: Zt,
|
|
474
|
+
QUADRATIC_EASE_IN_OUT: jt,
|
|
475
|
+
CUBIC_EASE_IN: Qt,
|
|
476
|
+
CUBIC_EASE_OUT: Kt,
|
|
477
|
+
CUBIC_EASE_IN_OUT: $t,
|
|
478
|
+
QUARTIC_EASE_IN: Jt,
|
|
479
|
+
QUARTIC_EASE_OUT: Wt,
|
|
480
|
+
QUARTIC_EASE_IN_OUT: te,
|
|
481
|
+
QUINTIC_EASE_IN: ee,
|
|
482
|
+
QUINTIC_EASE_OUT: oe,
|
|
483
483
|
QUINTIC_EASE_IN_OUT: ne,
|
|
484
|
-
EXPONENTIAL_EASE_IN:
|
|
485
|
-
EXPONENTIAL_EASE_OUT:
|
|
486
|
-
EXPONENTIAL_EASE_IN_OUT:
|
|
487
|
-
CIRCULAR_EASE_IN:
|
|
488
|
-
CIRCULAR_EASE_OUT:
|
|
489
|
-
CIRCULAR_EASE_IN_OUT:
|
|
490
|
-
LINEAR:
|
|
491
|
-
SMOOTHSTEP:
|
|
492
|
-
CONCAVE:
|
|
493
|
-
CONVEX:
|
|
494
|
-
LOGARITHMIC:
|
|
495
|
-
SQUARE_ROOT:
|
|
496
|
-
INVERSE:
|
|
497
|
-
GAUSSIAN:
|
|
498
|
-
},
|
|
499
|
-
const
|
|
500
|
-
return r * r * r * t + 3 * r * r *
|
|
501
|
-
},
|
|
502
|
-
const
|
|
503
|
-
return (1 - Math.exp(-
|
|
504
|
-
},
|
|
484
|
+
EXPONENTIAL_EASE_IN: se,
|
|
485
|
+
EXPONENTIAL_EASE_OUT: re,
|
|
486
|
+
EXPONENTIAL_EASE_IN_OUT: ae,
|
|
487
|
+
CIRCULAR_EASE_IN: ie,
|
|
488
|
+
CIRCULAR_EASE_OUT: ce,
|
|
489
|
+
CIRCULAR_EASE_IN_OUT: le,
|
|
490
|
+
LINEAR: ue,
|
|
491
|
+
SMOOTHSTEP: me,
|
|
492
|
+
CONCAVE: he,
|
|
493
|
+
CONVEX: fe,
|
|
494
|
+
LOGARITHMIC: pe,
|
|
495
|
+
SQUARE_ROOT: de,
|
|
496
|
+
INVERSE: ye,
|
|
497
|
+
GAUSSIAN: we
|
|
498
|
+
}, Me = (e, t, o, s, a) => {
|
|
499
|
+
const n = Math.max(0, Math.min(1, e)), r = 1 - n;
|
|
500
|
+
return r * r * r * t + 3 * r * r * n * o + 3 * r * n * n * s + n * n * n * a;
|
|
501
|
+
}, xe = (e, t = 1) => {
|
|
502
|
+
const o = Math.max(1e-3, t);
|
|
503
|
+
return (1 - Math.exp(-o * e)) / (1 - Math.exp(-o));
|
|
504
|
+
}, ve = (e, t = 1, o = 1) => {
|
|
505
505
|
const s = Math.max(0, Math.min(1, e));
|
|
506
|
-
return t * Math.pow(s,
|
|
507
|
-
},
|
|
506
|
+
return t * Math.pow(s, o);
|
|
507
|
+
}, ge = (e, t = 1, o = 1) => {
|
|
508
508
|
const s = Math.max(1e-3, Math.min(1, e));
|
|
509
|
-
return t * Math.log(
|
|
510
|
-
},
|
|
509
|
+
return t * Math.log(o * s + 1);
|
|
510
|
+
}, Ae = (e, t = 1, o = 0, s = 0) => {
|
|
511
511
|
const a = Math.max(0, Math.min(1, e));
|
|
512
|
-
return t * a * a +
|
|
513
|
-
},
|
|
514
|
-
const a = Math.max(0, Math.min(1, e)),
|
|
515
|
-
return
|
|
516
|
-
},
|
|
517
|
-
const
|
|
518
|
-
return 1 / (1 + Math.exp(-t * (
|
|
519
|
-
},
|
|
520
|
-
CUBIC:
|
|
521
|
-
DAMPED:
|
|
522
|
-
EXPONENTIAL:
|
|
523
|
-
LOGARITHMIC:
|
|
524
|
-
PARABOLIC:
|
|
525
|
-
QUADRATIC:
|
|
526
|
-
SIGMOID:
|
|
527
|
-
SINUSOIDAL:
|
|
512
|
+
return t * a * a + o * a + s;
|
|
513
|
+
}, Ie = (e, t, o, s) => {
|
|
514
|
+
const a = Math.max(0, Math.min(1, e)), n = 1 - a;
|
|
515
|
+
return n * n * t + 2 * n * a * o + a * a * s;
|
|
516
|
+
}, Ee = (e, t = 10) => {
|
|
517
|
+
const o = Math.max(0, Math.min(1, e));
|
|
518
|
+
return 1 / (1 + Math.exp(-t * (o - 0.5)));
|
|
519
|
+
}, be = (e) => Math.sin(e * Math.PI * 0.5), D = {
|
|
520
|
+
CUBIC: Me,
|
|
521
|
+
DAMPED: xe,
|
|
522
|
+
EXPONENTIAL: ve,
|
|
523
|
+
LOGARITHMIC: ge,
|
|
524
|
+
PARABOLIC: Ae,
|
|
525
|
+
QUADRATIC: Ie,
|
|
526
|
+
SIGMOID: Ee,
|
|
527
|
+
SINUSOIDAL: be
|
|
528
528
|
};
|
|
529
|
-
class
|
|
530
|
-
constructor(
|
|
529
|
+
class Ko extends nt {
|
|
530
|
+
constructor(o = {}) {
|
|
531
531
|
const {
|
|
532
532
|
count: s = 20,
|
|
533
533
|
width: a = 1.5,
|
|
534
|
-
height:
|
|
534
|
+
height: n = 3,
|
|
535
535
|
depth: r = 1.5,
|
|
536
|
-
geometry: i = new
|
|
536
|
+
geometry: i = new z(0.1, 6, 6),
|
|
537
537
|
// Small spheres
|
|
538
538
|
material: c = new w({
|
|
539
539
|
color: 16777215,
|
|
@@ -542,18 +542,18 @@ class Qn extends ut {
|
|
|
542
542
|
roughness: 0.3,
|
|
543
543
|
metalness: 0.3
|
|
544
544
|
})
|
|
545
|
-
} =
|
|
545
|
+
} = o;
|
|
546
546
|
super(i, c, s);
|
|
547
547
|
I(this, "bubblePositions", []);
|
|
548
548
|
I(this, "velocities", []);
|
|
549
549
|
I(this, "width");
|
|
550
550
|
I(this, "height");
|
|
551
551
|
I(this, "depth");
|
|
552
|
-
this.height =
|
|
552
|
+
this.height = n, this.width = a, this.depth = r;
|
|
553
553
|
for (let l = 0; l < this.count; l++) {
|
|
554
554
|
const u = new M(
|
|
555
555
|
(Math.random() - 0.5) * a,
|
|
556
|
-
Math.random() * (
|
|
556
|
+
Math.random() * (n - 1) + 0.5,
|
|
557
557
|
(Math.random() - 0.5) * r
|
|
558
558
|
);
|
|
559
559
|
this.bubblePositions.push(u), this.velocities.push(0.01 + Math.random() * 0.02), this.updateInstanceMatrix(l);
|
|
@@ -562,25 +562,25 @@ class Qn extends ut {
|
|
|
562
562
|
/**
|
|
563
563
|
* Updates the position of a specific bubble instance in the InstancedMesh.
|
|
564
564
|
*/
|
|
565
|
-
updateInstanceMatrix(
|
|
566
|
-
const s = this.bubblePositions[
|
|
567
|
-
this.setMatrixAt(
|
|
565
|
+
updateInstanceMatrix(o) {
|
|
566
|
+
const s = this.bubblePositions[o], a = new X().setPosition(s);
|
|
567
|
+
this.setMatrixAt(o, a), this.instanceMatrix.needsUpdate = !0;
|
|
568
568
|
}
|
|
569
569
|
/**
|
|
570
570
|
* Updates bubble positions, moving them upward and resetting them
|
|
571
571
|
* to the bottom if they reach the top.
|
|
572
572
|
*/
|
|
573
573
|
update() {
|
|
574
|
-
for (let
|
|
575
|
-
const s = this.bubblePositions[
|
|
576
|
-
s.y += this.velocities[
|
|
574
|
+
for (let o = 0; o < this.count; o++) {
|
|
575
|
+
const s = this.bubblePositions[o];
|
|
576
|
+
s.y += this.velocities[o], s.y > this.height && (s.x = (Math.random() - 0.5) * this.width, s.y = 0, s.z = (Math.random() - 0.5) * this.depth), this.updateInstanceMatrix(o);
|
|
577
577
|
}
|
|
578
578
|
}
|
|
579
579
|
}
|
|
580
|
-
class
|
|
580
|
+
class Te extends E {
|
|
581
581
|
constructor(t = 0.1) {
|
|
582
582
|
super();
|
|
583
|
-
const
|
|
583
|
+
const o = [], s = [], a = [
|
|
584
584
|
[0, 1],
|
|
585
585
|
// Top point
|
|
586
586
|
[0.5, 0.75],
|
|
@@ -600,23 +600,23 @@ class be extends E {
|
|
|
600
600
|
];
|
|
601
601
|
for (let r = 0; r < a.length; r++) {
|
|
602
602
|
const [i, c] = a[r];
|
|
603
|
-
|
|
603
|
+
o.push(i * t, c * t, 0);
|
|
604
604
|
}
|
|
605
605
|
for (let r = 1; r < a.length - 1; r++)
|
|
606
606
|
s.push(0, r, r + 1);
|
|
607
607
|
s.push(0, a.length - 1, 1);
|
|
608
|
-
const
|
|
609
|
-
this.setAttribute("position",
|
|
608
|
+
const n = new F(o, 3);
|
|
609
|
+
this.setAttribute("position", n), this.setIndex(s), this.computeVertexNormals();
|
|
610
610
|
}
|
|
611
611
|
}
|
|
612
|
-
class
|
|
613
|
-
constructor(
|
|
612
|
+
class $o extends nt {
|
|
613
|
+
constructor(o = {}) {
|
|
614
614
|
const {
|
|
615
615
|
count: s = 200,
|
|
616
616
|
width: a = 20,
|
|
617
|
-
height:
|
|
617
|
+
height: n = 10,
|
|
618
618
|
depth: r = 20,
|
|
619
|
-
geometry: i = new
|
|
619
|
+
geometry: i = new Te(),
|
|
620
620
|
material: c = new w({
|
|
621
621
|
color: 8956467,
|
|
622
622
|
metalness: 0.1,
|
|
@@ -624,16 +624,16 @@ class Kn extends ut {
|
|
|
624
624
|
flatShading: !0,
|
|
625
625
|
side: Y
|
|
626
626
|
})
|
|
627
|
-
} =
|
|
627
|
+
} = o;
|
|
628
628
|
super(i, c, s);
|
|
629
629
|
I(this, "dummyMatrix");
|
|
630
630
|
I(this, "velocities");
|
|
631
631
|
I(this, "width");
|
|
632
632
|
I(this, "height");
|
|
633
633
|
I(this, "depth");
|
|
634
|
-
this.dummyMatrix = new X(), this.velocities = [], this.width = a, this.height =
|
|
634
|
+
this.dummyMatrix = new X(), this.velocities = [], this.width = a, this.height = n, this.depth = r;
|
|
635
635
|
for (let l = 0; l < s; l++) {
|
|
636
|
-
const u = (Math.random() - 0.5) * a, m = Math.random() * (
|
|
636
|
+
const u = (Math.random() - 0.5) * a, m = Math.random() * (n - 1) + 0.5, h = (Math.random() - 0.5) * r, f = (Math.random() - 0.5) * Math.PI, p = (Math.random() - 0.5) * Math.PI, d = (Math.random() - 0.5) * Math.PI;
|
|
637
637
|
this.dummyMatrix.makeRotationFromEuler(new Gt(f, p, d)), this.dummyMatrix.setPosition(u, m, h), this.setMatrixAt(l, this.dummyMatrix);
|
|
638
638
|
const y = new M((Math.random() - 0.5) * 0.01, -5e-3, (Math.random() - 0.5) * 0.01);
|
|
639
639
|
this.velocities.push(y);
|
|
@@ -641,27 +641,27 @@ class Kn extends ut {
|
|
|
641
641
|
this.instanceMatrix.needsUpdate = !0;
|
|
642
642
|
}
|
|
643
643
|
update() {
|
|
644
|
-
for (let
|
|
644
|
+
for (let o = 0; o < this.count; o++) {
|
|
645
645
|
const s = new X();
|
|
646
|
-
this.getMatrixAt(
|
|
646
|
+
this.getMatrixAt(o, s);
|
|
647
647
|
const a = new M();
|
|
648
648
|
a.setFromMatrixPosition(s);
|
|
649
|
-
const
|
|
650
|
-
a.add(
|
|
649
|
+
const n = this.velocities[o];
|
|
650
|
+
a.add(n), a.y < 0 && (a.set(
|
|
651
651
|
(Math.random() - 0.5) * this.width,
|
|
652
652
|
Math.random() * (this.height - 1) + 0.5,
|
|
653
653
|
(Math.random() - 0.5) * this.depth
|
|
654
|
-
),
|
|
654
|
+
), n.set((Math.random() - 0.5) * 0.01, -5e-3, (Math.random() - 0.5) * 0.01)), s.setPosition(a), this.setMatrixAt(o, s);
|
|
655
655
|
}
|
|
656
656
|
this.instanceMatrix.needsUpdate = !0;
|
|
657
657
|
}
|
|
658
658
|
}
|
|
659
659
|
const T = (e, t) => {
|
|
660
|
-
const
|
|
660
|
+
const o = e[0].index !== null, s = new Set(Object.keys(e[0].attributes)), a = new Set(Object.keys(e[0].morphAttributes)), n = {}, r = {}, i = e[0].morphTargetsRelative, c = new E();
|
|
661
661
|
let l = 0;
|
|
662
662
|
if (e.forEach((u, m) => {
|
|
663
663
|
let h = 0;
|
|
664
|
-
if (
|
|
664
|
+
if (o !== (u.index !== null))
|
|
665
665
|
return console.error(
|
|
666
666
|
"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index " + m + ". All geometries must have compatible attributes; make sure index attribute exists among all geometries, or in none of them."
|
|
667
667
|
), null;
|
|
@@ -670,7 +670,7 @@ const T = (e, t) => {
|
|
|
670
670
|
return console.error(
|
|
671
671
|
"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index " + m + '. All geometries must have compatible attributes; make sure "' + f + '" attribute exists among all geometries, or in none of them.'
|
|
672
672
|
), null;
|
|
673
|
-
|
|
673
|
+
n[f] === void 0 && (n[f] = []), n[f].push(u.attributes[f]), h++;
|
|
674
674
|
}
|
|
675
675
|
if (h !== s.size)
|
|
676
676
|
return console.error(
|
|
@@ -699,7 +699,7 @@ const T = (e, t) => {
|
|
|
699
699
|
), null;
|
|
700
700
|
c.addGroup(l, f, m), l += f;
|
|
701
701
|
}
|
|
702
|
-
}),
|
|
702
|
+
}), o) {
|
|
703
703
|
let u = 0;
|
|
704
704
|
const m = [];
|
|
705
705
|
e.forEach((h) => {
|
|
@@ -709,8 +709,8 @@ const T = (e, t) => {
|
|
|
709
709
|
u += h.attributes.position.count;
|
|
710
710
|
}), c.setIndex(m);
|
|
711
711
|
}
|
|
712
|
-
for (let u in
|
|
713
|
-
const m = dt(
|
|
712
|
+
for (let u in n) {
|
|
713
|
+
const m = dt(n[u]);
|
|
714
714
|
if (!m)
|
|
715
715
|
return console.error(
|
|
716
716
|
"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed while trying to merge the " + u + " attribute."
|
|
@@ -736,32 +736,32 @@ const T = (e, t) => {
|
|
|
736
736
|
}
|
|
737
737
|
return c;
|
|
738
738
|
}, dt = (e) => {
|
|
739
|
-
let t,
|
|
740
|
-
if (e.forEach((
|
|
741
|
-
if (t === void 0 && (t =
|
|
739
|
+
let t, o, s, a = 0;
|
|
740
|
+
if (e.forEach((n) => {
|
|
741
|
+
if (t === void 0 && (t = n.array.constructor), t !== n.array.constructor)
|
|
742
742
|
return console.error(
|
|
743
743
|
"THREE.BufferGeometryUtils: .mergeBufferAttributes() failed. BufferAttribute.array must be of consistent array types across matching attributes."
|
|
744
744
|
), null;
|
|
745
|
-
if (
|
|
745
|
+
if (o === void 0 && (o = n.itemSize), o !== n.itemSize)
|
|
746
746
|
return console.error(
|
|
747
747
|
"THREE.BufferGeometryUtils: .mergeBufferAttributes() failed. BufferAttribute.itemSize must be consistent across matching attributes."
|
|
748
748
|
), null;
|
|
749
|
-
if (s === void 0 && (s =
|
|
749
|
+
if (s === void 0 && (s = n.normalized), s !== n.normalized)
|
|
750
750
|
return console.error(
|
|
751
751
|
"THREE.BufferGeometryUtils: .mergeBufferAttributes() failed. BufferAttribute.normalized must be consistent across matching attributes."
|
|
752
752
|
), null;
|
|
753
|
-
a +=
|
|
754
|
-
}), t &&
|
|
755
|
-
const
|
|
753
|
+
a += n.array.length;
|
|
754
|
+
}), t && o) {
|
|
755
|
+
const n = new t(a);
|
|
756
756
|
let r = 0;
|
|
757
757
|
return e.forEach((i) => {
|
|
758
|
-
|
|
759
|
-
}), new
|
|
758
|
+
n.set(i.array, r), r += i.array.length;
|
|
759
|
+
}), new _(n, o, s);
|
|
760
760
|
}
|
|
761
761
|
};
|
|
762
|
-
function
|
|
762
|
+
function Se(e, t = 1e-4) {
|
|
763
763
|
t = Math.max(t, Number.EPSILON);
|
|
764
|
-
const
|
|
764
|
+
const o = {}, s = e.getIndex(), a = e.getAttribute("position"), n = s ? s.count : a.count;
|
|
765
765
|
let r = 0;
|
|
766
766
|
const i = Object.keys(e.attributes), c = {}, l = {}, u = [], m = ["getX", "getY", "getZ", "getW"];
|
|
767
767
|
for (let d = 0, y = i.length; d < y; d++) {
|
|
@@ -771,67 +771,67 @@ function Te(e, t = 1e-4) {
|
|
|
771
771
|
v && (l[g] = new Array(v.length).fill(0).map(() => []));
|
|
772
772
|
}
|
|
773
773
|
const h = Math.log10(1 / t), f = Math.pow(10, h);
|
|
774
|
-
for (let d = 0; d <
|
|
774
|
+
for (let d = 0; d < n; d++) {
|
|
775
775
|
const y = s ? s.getX(d) : d;
|
|
776
776
|
let g = "";
|
|
777
|
-
for (let v = 0,
|
|
778
|
-
const
|
|
779
|
-
for (let
|
|
780
|
-
g += `${~~(
|
|
777
|
+
for (let v = 0, C = i.length; v < C; v++) {
|
|
778
|
+
const S = i[v], P = e.getAttribute(S), R = P.itemSize;
|
|
779
|
+
for (let O = 0; O < R; O++)
|
|
780
|
+
g += `${~~(P[m[O]](y) * f)},`;
|
|
781
781
|
}
|
|
782
|
-
if (g in
|
|
783
|
-
u.push(
|
|
782
|
+
if (g in o)
|
|
783
|
+
u.push(o[g]);
|
|
784
784
|
else {
|
|
785
|
-
for (let v = 0,
|
|
786
|
-
const
|
|
787
|
-
for (let
|
|
788
|
-
const
|
|
789
|
-
if (U.push(
|
|
790
|
-
for (let
|
|
791
|
-
|
|
785
|
+
for (let v = 0, C = i.length; v < C; v++) {
|
|
786
|
+
const S = i[v], P = e.getAttribute(S), R = e.morphAttributes[S], O = P.itemSize, U = c[S], at = l[S];
|
|
787
|
+
for (let Q = 0; Q < O; Q++) {
|
|
788
|
+
const K = m[Q];
|
|
789
|
+
if (U.push(P[K](y)), R)
|
|
790
|
+
for (let B = 0, Tt = R.length; B < Tt; B++)
|
|
791
|
+
at[B].push(R[B][K](y));
|
|
792
792
|
}
|
|
793
793
|
}
|
|
794
|
-
|
|
794
|
+
o[g] = r, u.push(r), r++;
|
|
795
795
|
}
|
|
796
796
|
}
|
|
797
797
|
const p = e.clone();
|
|
798
798
|
for (let d = 0, y = i.length; d < y; d++) {
|
|
799
|
-
const g = i[d], v = e.getAttribute(g),
|
|
800
|
-
if (p.setAttribute(g,
|
|
801
|
-
for (let
|
|
802
|
-
const
|
|
803
|
-
p.morphAttributes[g][
|
|
799
|
+
const g = i[d], v = e.getAttribute(g), C = new v.array.constructor(c[g]), S = new _(C, v.itemSize, v.normalized);
|
|
800
|
+
if (p.setAttribute(g, S), g in l)
|
|
801
|
+
for (let P = 0; P < l[g].length; P++) {
|
|
802
|
+
const R = e.morphAttributes[g][P], O = new R.array.constructor(l[g][P]), U = new _(O, R.itemSize, R.normalized);
|
|
803
|
+
p.morphAttributes[g][P] = U;
|
|
804
804
|
}
|
|
805
805
|
}
|
|
806
806
|
return p.setIndex(u), p;
|
|
807
807
|
}
|
|
808
|
-
class
|
|
809
|
-
constructor(t = (a,
|
|
808
|
+
class Pe extends E {
|
|
809
|
+
constructor(t = (a, n, r) => r.set(a, n, Math.cos(a) * Math.sin(n)), o = 8, s = 8) {
|
|
810
810
|
super(), this.type = "ParametricGeometry", this.parameters = {
|
|
811
811
|
func: t,
|
|
812
|
-
slices:
|
|
812
|
+
slices: o,
|
|
813
813
|
stacks: s
|
|
814
814
|
};
|
|
815
|
-
const a = [],
|
|
815
|
+
const a = [], n = [], r = [], i = [], c = 1e-5, l = new M(), u = new M(), m = new M(), h = new M(), f = new M(), p = o + 1;
|
|
816
816
|
for (let d = 0; d <= s; d++) {
|
|
817
817
|
const y = d / s;
|
|
818
|
-
for (let g = 0; g <=
|
|
819
|
-
const v = g /
|
|
820
|
-
t(v, y, u),
|
|
818
|
+
for (let g = 0; g <= o; g++) {
|
|
819
|
+
const v = g / o;
|
|
820
|
+
t(v, y, u), n.push(u.x, u.y, u.z), v - c >= 0 ? (t(v - c, y, m), h.subVectors(u, m)) : (t(v + c, y, m), h.subVectors(m, u)), y - c >= 0 ? (t(v, y - c, m), f.subVectors(u, m)) : (t(v, y + c, m), f.subVectors(m, u)), l.crossVectors(h, f).normalize(), r.push(l.x, l.y, l.z), i.push(v, y);
|
|
821
821
|
}
|
|
822
822
|
}
|
|
823
823
|
for (let d = 0; d < s; d++)
|
|
824
|
-
for (let y = 0; y <
|
|
825
|
-
const g = d * p + y, v = d * p + y + 1,
|
|
826
|
-
a.push(g, v,
|
|
824
|
+
for (let y = 0; y < o; y++) {
|
|
825
|
+
const g = d * p + y, v = d * p + y + 1, C = (d + 1) * p + y + 1, S = (d + 1) * p + y;
|
|
826
|
+
a.push(g, v, S), a.push(v, C, S);
|
|
827
827
|
}
|
|
828
|
-
this.setIndex(a), this.setAttribute("position", new
|
|
828
|
+
this.setIndex(a), this.setAttribute("position", new F(n, 3)), this.setAttribute("normal", new F(r, 3)), this.setAttribute("uv", new F(i, 2));
|
|
829
829
|
}
|
|
830
830
|
}
|
|
831
831
|
class xt extends E {
|
|
832
|
-
constructor(t = 1,
|
|
832
|
+
constructor(t = 1, o = 1.5, s = 0.5, a = 0.05, n = 0.05) {
|
|
833
833
|
super();
|
|
834
|
-
const r = t, i =
|
|
834
|
+
const r = t, i = o, c = s, l = a, u = n, m = [
|
|
835
835
|
// Front cover
|
|
836
836
|
0,
|
|
837
837
|
0,
|
|
@@ -1423,81 +1423,99 @@ class xt extends E {
|
|
|
1423
1423
|
54,
|
|
1424
1424
|
55
|
|
1425
1425
|
// Back cover edge
|
|
1426
|
-
], g = new Float32Array(m), v = new Float32Array(h),
|
|
1427
|
-
|
|
1428
|
-
const
|
|
1429
|
-
|
|
1426
|
+
], g = new Float32Array(m), v = new Float32Array(h), C = new Float32Array(d), S = new Uint16Array(y), P = new E();
|
|
1427
|
+
P.setAttribute("position", new _(g, 3)), P.setAttribute("normal", new _(v, 3)), P.setAttribute("uv", new _(C, 2)), P.setIndex(new _(S, 1));
|
|
1428
|
+
const R = new b(t - l - u, i - u * 2, c - l * 2);
|
|
1429
|
+
R.translate((t - l - u) / 2 + l, i / 2, -c / 2), this.copy(T([P, R], !0));
|
|
1430
1430
|
}
|
|
1431
1431
|
}
|
|
1432
1432
|
function vt({
|
|
1433
1433
|
scaleXMin: e = 0.4,
|
|
1434
1434
|
scaleXMax: t = 0.7,
|
|
1435
|
-
scaleYMin:
|
|
1435
|
+
scaleYMin: o = 0.3,
|
|
1436
1436
|
scaleYMax: s = 0.95,
|
|
1437
1437
|
scaleZMin: a = 0.1,
|
|
1438
|
-
scaleZMax:
|
|
1438
|
+
scaleZMax: n = 0.5
|
|
1439
1439
|
} = {}) {
|
|
1440
1440
|
return new M(
|
|
1441
1441
|
ht(e, t),
|
|
1442
|
-
|
|
1443
|
-
|
|
1442
|
+
Dt(0.25, o, s),
|
|
1443
|
+
kt(0.8, a, n)
|
|
1444
1444
|
);
|
|
1445
1445
|
}
|
|
1446
1446
|
function gt({
|
|
1447
1447
|
coverMaterial: e,
|
|
1448
1448
|
pagesMaterial: t,
|
|
1449
|
-
scales:
|
|
1449
|
+
scales: o
|
|
1450
1450
|
}) {
|
|
1451
|
-
const s = new xt(), a = new
|
|
1451
|
+
const s = new xt(), a = new nt(s, [e, t], o.length), n = new X();
|
|
1452
1452
|
let r = 0;
|
|
1453
|
-
for (let i = 0; i <
|
|
1454
|
-
const c =
|
|
1455
|
-
l.makeScale(c.x, c.y, c.z),
|
|
1453
|
+
for (let i = 0; i < o.length; i++) {
|
|
1454
|
+
const c = o[i], l = new X();
|
|
1455
|
+
l.makeScale(c.x, c.y, c.z), n.identity(), n.multiply(l), n.setPosition(0.01 + Math.random() * 0.1, 0, r + c.z * 0.5), a.setMatrixAt(i, n), r += c.z * 0.5;
|
|
1456
1456
|
}
|
|
1457
1457
|
return a;
|
|
1458
1458
|
}
|
|
1459
|
-
function
|
|
1459
|
+
function Jo({
|
|
1460
1460
|
coverMaterial: e,
|
|
1461
1461
|
pagesMaterial: t,
|
|
1462
|
-
count:
|
|
1462
|
+
count: o = 10,
|
|
1463
1463
|
scaleXMin: s = 0.4,
|
|
1464
1464
|
scaleXMax: a = 0.7,
|
|
1465
|
-
scaleYMin:
|
|
1465
|
+
scaleYMin: n = 0.3,
|
|
1466
1466
|
scaleYMax: r = 0.95,
|
|
1467
1467
|
scaleZMin: i = 0.1,
|
|
1468
1468
|
scaleZMax: c = 0.5
|
|
1469
1469
|
}) {
|
|
1470
1470
|
const l = Array.from(
|
|
1471
|
-
{ length:
|
|
1472
|
-
() => vt({ scaleXMin: s, scaleXMax: a, scaleYMin:
|
|
1471
|
+
{ length: o },
|
|
1472
|
+
() => vt({ scaleXMin: s, scaleXMax: a, scaleYMin: n, scaleYMax: r, scaleZMin: i, scaleZMax: c })
|
|
1473
1473
|
);
|
|
1474
1474
|
return gt({ coverMaterial: e, pagesMaterial: t, scales: l });
|
|
1475
1475
|
}
|
|
1476
|
-
function
|
|
1476
|
+
function Wo({
|
|
1477
1477
|
coverMaterial: e,
|
|
1478
1478
|
pagesMaterial: t,
|
|
1479
|
-
length:
|
|
1479
|
+
length: o = 10,
|
|
1480
1480
|
scaleXMin: s = 0.4,
|
|
1481
1481
|
scaleXMax: a = 0.7,
|
|
1482
|
-
scaleYMin:
|
|
1482
|
+
scaleYMin: n = 0.3,
|
|
1483
1483
|
scaleYMax: r = 0.95,
|
|
1484
1484
|
scaleZMin: i = 0.1,
|
|
1485
1485
|
scaleZMax: c = 0.5
|
|
1486
1486
|
}) {
|
|
1487
1487
|
const l = [];
|
|
1488
|
-
let u =
|
|
1488
|
+
let u = o;
|
|
1489
1489
|
for (; u > 0; ) {
|
|
1490
|
-
const m = vt({ scaleXMin: s, scaleXMax: a, scaleYMin:
|
|
1490
|
+
const m = vt({ scaleXMin: s, scaleXMax: a, scaleYMin: n, scaleYMax: r, scaleZMin: i, scaleZMax: c });
|
|
1491
1491
|
m.z = Math.min(m.z, u), l.push(m), u -= m.z;
|
|
1492
1492
|
}
|
|
1493
1493
|
return gt({ coverMaterial: e, pagesMaterial: t, scales: l });
|
|
1494
1494
|
}
|
|
1495
|
-
|
|
1496
|
-
|
|
1495
|
+
function tn(e) {
|
|
1496
|
+
const { width: t, depth: o, height: s, radius: a, gap: n, material: r } = e, i = r || new w({ color: 9127187 }), c = a * 3 / 2 + n, l = Math.sqrt(3) * a + n, u = Math.floor(t / c), m = Math.floor(o / l), h = u * m, f = new Z();
|
|
1497
|
+
for (let v = 0; v < 6; v++) {
|
|
1498
|
+
const C = Math.PI / 3 * v, S = Math.cos(C) * a, P = Math.sin(C) * a;
|
|
1499
|
+
v === 0 ? f.moveTo(S, P) : f.lineTo(S, P);
|
|
1500
|
+
}
|
|
1501
|
+
f.closePath();
|
|
1502
|
+
const p = new j(f, { depth: s, bevelEnabled: !1 });
|
|
1503
|
+
p.rotateX(-Math.PI / 2);
|
|
1504
|
+
const d = new nt(p, i, h), y = new Ct();
|
|
1505
|
+
let g = 0;
|
|
1506
|
+
for (let v = 0; v < u; v++)
|
|
1507
|
+
for (let C = 0; C < m; C++) {
|
|
1508
|
+
const S = v * c, P = C * l + v % 2 * (l / 2), R = S - u * c / 2 + c / 2, O = P - m * l / 2 + l / 2;
|
|
1509
|
+
y.position.set(R, 0, O), y.updateMatrix(), d.setMatrixAt(g++, y.matrix);
|
|
1510
|
+
}
|
|
1511
|
+
return d.instanceMatrix.needsUpdate = !0, d;
|
|
1512
|
+
}
|
|
1513
|
+
class en extends E {
|
|
1514
|
+
constructor(t = 2, o = 0.3, s = 0.6, a = 5, n = 5, r = Math.PI / 4) {
|
|
1497
1515
|
super();
|
|
1498
1516
|
const i = [], c = [];
|
|
1499
1517
|
for (let f = 0; f < a; f++) {
|
|
1500
|
-
const p = f *
|
|
1518
|
+
const p = f * o, d = p + o, y = f * s, g = y + s;
|
|
1501
1519
|
i.push(
|
|
1502
1520
|
// Vertical riser
|
|
1503
1521
|
-t / 2,
|
|
@@ -1551,7 +1569,7 @@ class Wn extends E {
|
|
|
1551
1569
|
v + 7
|
|
1552
1570
|
);
|
|
1553
1571
|
}
|
|
1554
|
-
const l = a *
|
|
1572
|
+
const l = a * o, u = a * s, m = t * 2;
|
|
1555
1573
|
i.push(
|
|
1556
1574
|
// Landing platform (4 vertices)
|
|
1557
1575
|
-m / 2,
|
|
@@ -1584,76 +1602,76 @@ class Wn extends E {
|
|
|
1584
1602
|
);
|
|
1585
1603
|
for (let f = 0; f < 2; f++) {
|
|
1586
1604
|
const p = f === 0 ? 1 : -1;
|
|
1587
|
-
for (let d = 0; d <
|
|
1588
|
-
const y = l + d *
|
|
1605
|
+
for (let d = 0; d < n; d++) {
|
|
1606
|
+
const y = l + d * o, g = y + o, v = p * (m / 4), C = u + s, S = d * s * Math.cos(r), P = d * s * Math.sin(r), R = v + p * S - t / 2 * Math.cos(r), O = v + p * S + t / 2 * Math.cos(r), U = C + P, at = R + p * s * Math.cos(r), Q = O + p * s * Math.cos(r), K = U + s * Math.sin(r);
|
|
1589
1607
|
i.push(
|
|
1590
1608
|
// Vertical riser
|
|
1591
|
-
|
|
1609
|
+
R,
|
|
1592
1610
|
y,
|
|
1593
1611
|
U,
|
|
1594
1612
|
// Bottom-left
|
|
1595
|
-
|
|
1613
|
+
O,
|
|
1596
1614
|
y,
|
|
1597
1615
|
U,
|
|
1598
1616
|
// Bottom-right
|
|
1599
|
-
|
|
1617
|
+
O,
|
|
1600
1618
|
g,
|
|
1601
1619
|
U,
|
|
1602
1620
|
// Top-right
|
|
1603
|
-
|
|
1621
|
+
R,
|
|
1604
1622
|
g,
|
|
1605
1623
|
U,
|
|
1606
1624
|
// Top-left
|
|
1607
1625
|
// Horizontal tread
|
|
1608
|
-
|
|
1626
|
+
R,
|
|
1609
1627
|
g,
|
|
1610
1628
|
U,
|
|
1611
1629
|
// Top-left
|
|
1612
|
-
|
|
1630
|
+
O,
|
|
1613
1631
|
g,
|
|
1614
1632
|
U,
|
|
1615
1633
|
// Top-right
|
|
1616
|
-
|
|
1634
|
+
Q,
|
|
1617
1635
|
g,
|
|
1618
|
-
|
|
1636
|
+
K,
|
|
1619
1637
|
// Back-right
|
|
1620
|
-
|
|
1638
|
+
at,
|
|
1621
1639
|
g,
|
|
1622
|
-
|
|
1640
|
+
K
|
|
1623
1641
|
// Back-left
|
|
1624
1642
|
);
|
|
1625
|
-
const
|
|
1643
|
+
const B = h + 4 + f * n * 8 + d * 8;
|
|
1626
1644
|
c.push(
|
|
1627
|
-
|
|
1628
|
-
|
|
1629
|
-
|
|
1630
|
-
|
|
1631
|
-
|
|
1632
|
-
|
|
1645
|
+
B,
|
|
1646
|
+
B + 1,
|
|
1647
|
+
B + 2,
|
|
1648
|
+
B,
|
|
1649
|
+
B + 2,
|
|
1650
|
+
B + 3
|
|
1633
1651
|
), c.push(
|
|
1634
|
-
|
|
1635
|
-
|
|
1636
|
-
|
|
1637
|
-
|
|
1638
|
-
|
|
1639
|
-
|
|
1652
|
+
B + 4,
|
|
1653
|
+
B + 5,
|
|
1654
|
+
B + 6,
|
|
1655
|
+
B + 4,
|
|
1656
|
+
B + 6,
|
|
1657
|
+
B + 7
|
|
1640
1658
|
);
|
|
1641
1659
|
}
|
|
1642
1660
|
}
|
|
1643
|
-
this.setIndex(c), this.setAttribute("position", new
|
|
1661
|
+
this.setIndex(c), this.setAttribute("position", new F(i, 3)), this.computeVertexNormals();
|
|
1644
1662
|
}
|
|
1645
1663
|
}
|
|
1646
|
-
class
|
|
1647
|
-
constructor({ width: t = 5, height:
|
|
1664
|
+
class Ge extends E {
|
|
1665
|
+
constructor({ width: t = 5, height: o = 3, depth: s = 5, wallThickness: a = 0.05 } = {}) {
|
|
1648
1666
|
super();
|
|
1649
|
-
const
|
|
1667
|
+
const n = t, r = o, i = s, c = a, l = [
|
|
1650
1668
|
0,
|
|
1651
1669
|
0,
|
|
1652
1670
|
0,
|
|
1653
|
-
|
|
1671
|
+
n,
|
|
1654
1672
|
0,
|
|
1655
1673
|
0,
|
|
1656
|
-
|
|
1674
|
+
n,
|
|
1657
1675
|
r,
|
|
1658
1676
|
0,
|
|
1659
1677
|
0,
|
|
@@ -1676,10 +1694,10 @@ class Pe extends E {
|
|
|
1676
1694
|
0,
|
|
1677
1695
|
0,
|
|
1678
1696
|
i,
|
|
1679
|
-
|
|
1697
|
+
n,
|
|
1680
1698
|
0,
|
|
1681
1699
|
i,
|
|
1682
|
-
|
|
1700
|
+
n,
|
|
1683
1701
|
0,
|
|
1684
1702
|
0,
|
|
1685
1703
|
0,
|
|
@@ -1689,26 +1707,26 @@ class Pe extends E {
|
|
|
1689
1707
|
-c,
|
|
1690
1708
|
-c,
|
|
1691
1709
|
i,
|
|
1692
|
-
|
|
1710
|
+
n,
|
|
1693
1711
|
-c,
|
|
1694
1712
|
i,
|
|
1695
|
-
|
|
1713
|
+
n,
|
|
1696
1714
|
0,
|
|
1697
1715
|
i,
|
|
1698
1716
|
0,
|
|
1699
1717
|
0,
|
|
1700
1718
|
i,
|
|
1701
1719
|
// Floor front
|
|
1702
|
-
|
|
1720
|
+
n,
|
|
1703
1721
|
-c,
|
|
1704
1722
|
i,
|
|
1705
|
-
|
|
1723
|
+
n,
|
|
1706
1724
|
-c,
|
|
1707
1725
|
-c,
|
|
1708
|
-
|
|
1726
|
+
n,
|
|
1709
1727
|
0,
|
|
1710
1728
|
0,
|
|
1711
|
-
|
|
1729
|
+
n,
|
|
1712
1730
|
0,
|
|
1713
1731
|
i,
|
|
1714
1732
|
// Floor side
|
|
@@ -1725,16 +1743,16 @@ class Pe extends E {
|
|
|
1725
1743
|
r,
|
|
1726
1744
|
i,
|
|
1727
1745
|
// Left wall side
|
|
1728
|
-
|
|
1746
|
+
n,
|
|
1729
1747
|
0,
|
|
1730
1748
|
0,
|
|
1731
|
-
|
|
1749
|
+
n,
|
|
1732
1750
|
-c,
|
|
1733
1751
|
-c,
|
|
1734
|
-
|
|
1752
|
+
n,
|
|
1735
1753
|
r,
|
|
1736
1754
|
-c,
|
|
1737
|
-
|
|
1755
|
+
n,
|
|
1738
1756
|
r,
|
|
1739
1757
|
0,
|
|
1740
1758
|
// Back wall side
|
|
@@ -1754,10 +1772,10 @@ class Pe extends E {
|
|
|
1754
1772
|
0,
|
|
1755
1773
|
r,
|
|
1756
1774
|
0,
|
|
1757
|
-
|
|
1775
|
+
n,
|
|
1758
1776
|
r,
|
|
1759
1777
|
0,
|
|
1760
|
-
|
|
1778
|
+
n,
|
|
1761
1779
|
r,
|
|
1762
1780
|
-c,
|
|
1763
1781
|
-c,
|
|
@@ -1767,10 +1785,10 @@ class Pe extends E {
|
|
|
1767
1785
|
-c,
|
|
1768
1786
|
-c,
|
|
1769
1787
|
-c,
|
|
1770
|
-
|
|
1788
|
+
n,
|
|
1771
1789
|
-c,
|
|
1772
1790
|
-c,
|
|
1773
|
-
|
|
1791
|
+
n,
|
|
1774
1792
|
-c,
|
|
1775
1793
|
i,
|
|
1776
1794
|
-c,
|
|
@@ -1790,7 +1808,7 @@ class Pe extends E {
|
|
|
1790
1808
|
r,
|
|
1791
1809
|
-c,
|
|
1792
1810
|
// Left wall backside
|
|
1793
|
-
|
|
1811
|
+
n,
|
|
1794
1812
|
-c,
|
|
1795
1813
|
-c,
|
|
1796
1814
|
-c,
|
|
@@ -1799,7 +1817,7 @@ class Pe extends E {
|
|
|
1799
1817
|
-c,
|
|
1800
1818
|
r,
|
|
1801
1819
|
-c,
|
|
1802
|
-
|
|
1820
|
+
n,
|
|
1803
1821
|
r,
|
|
1804
1822
|
-c
|
|
1805
1823
|
// back wall backside
|
|
@@ -2078,50 +2096,50 @@ class Pe extends E {
|
|
|
2078
2096
|
1,
|
|
2079
2097
|
0,
|
|
2080
2098
|
1,
|
|
2081
|
-
c /
|
|
2099
|
+
c / n,
|
|
2082
2100
|
0,
|
|
2083
|
-
c /
|
|
2101
|
+
c / n,
|
|
2084
2102
|
// Floor (side: front)
|
|
2085
2103
|
0,
|
|
2086
2104
|
0,
|
|
2087
2105
|
1,
|
|
2088
2106
|
0,
|
|
2089
2107
|
1,
|
|
2090
|
-
c /
|
|
2108
|
+
c / n,
|
|
2091
2109
|
0,
|
|
2092
|
-
c /
|
|
2110
|
+
c / n,
|
|
2093
2111
|
// Floor (side: right)
|
|
2094
2112
|
0,
|
|
2095
2113
|
0,
|
|
2096
|
-
c /
|
|
2114
|
+
c / n,
|
|
2097
2115
|
0,
|
|
2098
|
-
c /
|
|
2116
|
+
c / n,
|
|
2099
2117
|
1,
|
|
2100
2118
|
0,
|
|
2101
2119
|
1,
|
|
2102
2120
|
// Left wall (side: front)
|
|
2103
|
-
1 - c /
|
|
2121
|
+
1 - c / n,
|
|
2104
2122
|
0,
|
|
2105
2123
|
1,
|
|
2106
2124
|
0,
|
|
2107
2125
|
1,
|
|
2108
2126
|
1,
|
|
2109
|
-
1 - c /
|
|
2127
|
+
1 - c / n,
|
|
2110
2128
|
1,
|
|
2111
2129
|
// Back wall (side: right)
|
|
2112
2130
|
0,
|
|
2113
2131
|
0,
|
|
2114
|
-
c /
|
|
2132
|
+
c / n,
|
|
2115
2133
|
0,
|
|
2116
|
-
c /
|
|
2134
|
+
c / n,
|
|
2117
2135
|
1,
|
|
2118
2136
|
0,
|
|
2119
2137
|
1,
|
|
2120
2138
|
// Left wall (side: top)
|
|
2121
2139
|
0,
|
|
2122
|
-
1 - c /
|
|
2140
|
+
1 - c / n,
|
|
2123
2141
|
1,
|
|
2124
|
-
1 - c /
|
|
2142
|
+
1 - c / n,
|
|
2125
2143
|
1,
|
|
2126
2144
|
1,
|
|
2127
2145
|
0,
|
|
@@ -2155,15 +2173,15 @@ class Pe extends E {
|
|
|
2155
2173
|
1
|
|
2156
2174
|
// Back wall backside
|
|
2157
2175
|
], f = new Float32Array(l), p = new Float32Array(m), d = new Float32Array(h);
|
|
2158
|
-
this.setAttribute("position", new
|
|
2176
|
+
this.setAttribute("position", new _(f, 3)), this.setAttribute("normal", new _(p, 3)), this.setAttribute("uv", new _(d, 2)), this.setIndex(u), this.addGroup(0, 12, 0), this.addGroup(12, 6, 1), this.addGroup(18, 54, 2);
|
|
2159
2177
|
}
|
|
2160
2178
|
}
|
|
2161
|
-
class
|
|
2162
|
-
constructor(t = 2,
|
|
2179
|
+
class on extends E {
|
|
2180
|
+
constructor(t = 2, o = 0.3, s = 0.5, a = 5, n = 2) {
|
|
2163
2181
|
super();
|
|
2164
2182
|
const r = [], i = [];
|
|
2165
2183
|
for (let m = 0; m < a; m++) {
|
|
2166
|
-
const h = m *
|
|
2184
|
+
const h = m * o, f = h + o, p = m * s, d = p + s;
|
|
2167
2185
|
r.push(
|
|
2168
2186
|
// Vertical riser
|
|
2169
2187
|
-t / 2,
|
|
@@ -2217,7 +2235,7 @@ class to extends E {
|
|
|
2217
2235
|
y + 7
|
|
2218
2236
|
);
|
|
2219
2237
|
}
|
|
2220
|
-
const c = a *
|
|
2238
|
+
const c = a * o, l = a * s;
|
|
2221
2239
|
r.push(
|
|
2222
2240
|
// Landing platform (4 vertices)
|
|
2223
2241
|
-t / 2,
|
|
@@ -2230,11 +2248,11 @@ class to extends E {
|
|
|
2230
2248
|
// Bottom-right
|
|
2231
2249
|
t / 2,
|
|
2232
2250
|
c,
|
|
2233
|
-
l +
|
|
2251
|
+
l + n,
|
|
2234
2252
|
// Top-right
|
|
2235
2253
|
-t / 2,
|
|
2236
2254
|
c,
|
|
2237
|
-
l +
|
|
2255
|
+
l + n
|
|
2238
2256
|
// Top-left
|
|
2239
2257
|
);
|
|
2240
2258
|
const u = a * 8;
|
|
@@ -2249,41 +2267,41 @@ class to extends E {
|
|
|
2249
2267
|
// Second triangle for landing
|
|
2250
2268
|
);
|
|
2251
2269
|
for (let m = 0; m < a; m++) {
|
|
2252
|
-
const h = c + m *
|
|
2270
|
+
const h = c + m * o, f = h + o, p = -t / 2 - m * s, d = p - s;
|
|
2253
2271
|
r.push(
|
|
2254
2272
|
// Vertical riser
|
|
2255
2273
|
p,
|
|
2256
2274
|
h,
|
|
2257
|
-
l +
|
|
2275
|
+
l + n,
|
|
2258
2276
|
// Bottom-left
|
|
2259
2277
|
p,
|
|
2260
2278
|
h,
|
|
2261
|
-
l +
|
|
2279
|
+
l + n - t,
|
|
2262
2280
|
// Bottom-right
|
|
2263
2281
|
p,
|
|
2264
2282
|
f,
|
|
2265
|
-
l +
|
|
2283
|
+
l + n - t,
|
|
2266
2284
|
// Top-right
|
|
2267
2285
|
p,
|
|
2268
2286
|
f,
|
|
2269
|
-
l +
|
|
2287
|
+
l + n,
|
|
2270
2288
|
// Top-left
|
|
2271
2289
|
// Horizontal tread
|
|
2272
2290
|
p,
|
|
2273
2291
|
f,
|
|
2274
|
-
l +
|
|
2292
|
+
l + n,
|
|
2275
2293
|
// Top-left
|
|
2276
2294
|
p,
|
|
2277
2295
|
f,
|
|
2278
|
-
l +
|
|
2296
|
+
l + n - t,
|
|
2279
2297
|
// Top-right
|
|
2280
2298
|
d,
|
|
2281
2299
|
f,
|
|
2282
|
-
l +
|
|
2300
|
+
l + n - t,
|
|
2283
2301
|
// Back-right
|
|
2284
2302
|
d,
|
|
2285
2303
|
f,
|
|
2286
|
-
l +
|
|
2304
|
+
l + n
|
|
2287
2305
|
// Back-left
|
|
2288
2306
|
);
|
|
2289
2307
|
const y = u + 4 + m * 8;
|
|
@@ -2303,16 +2321,16 @@ class to extends E {
|
|
|
2303
2321
|
y + 7
|
|
2304
2322
|
);
|
|
2305
2323
|
}
|
|
2306
|
-
this.setIndex(i), this.setAttribute("position", new
|
|
2324
|
+
this.setIndex(i), this.setAttribute("position", new F(r, 3)), this.computeVertexNormals();
|
|
2307
2325
|
}
|
|
2308
2326
|
}
|
|
2309
|
-
class
|
|
2310
|
-
constructor(t = 1,
|
|
2327
|
+
class nn extends E {
|
|
2328
|
+
constructor(t = 1, o = 0.4, s = 0.2, a = 20, n = 2, r = Math.PI / 8) {
|
|
2311
2329
|
super();
|
|
2312
2330
|
const i = [], c = [];
|
|
2313
2331
|
let l = 0;
|
|
2314
2332
|
for (let u = 0; u < a; u++) {
|
|
2315
|
-
const m =
|
|
2333
|
+
const m = n * Math.cos(l), h = n * Math.sin(l), f = u * s, p = f + s;
|
|
2316
2334
|
i.push(
|
|
2317
2335
|
// Front face (vertical riser)
|
|
2318
2336
|
m - t / 2 * Math.cos(l),
|
|
@@ -2341,13 +2359,13 @@ class eo extends E {
|
|
|
2341
2359
|
p,
|
|
2342
2360
|
h + t / 2 * Math.sin(l),
|
|
2343
2361
|
// Top-right-front
|
|
2344
|
-
m + t / 2 * Math.cos(l) -
|
|
2362
|
+
m + t / 2 * Math.cos(l) - o * Math.sin(l),
|
|
2345
2363
|
p,
|
|
2346
|
-
h + t / 2 * Math.sin(l) +
|
|
2364
|
+
h + t / 2 * Math.sin(l) + o * Math.cos(l),
|
|
2347
2365
|
// Back-right
|
|
2348
|
-
m - t / 2 * Math.cos(l) -
|
|
2366
|
+
m - t / 2 * Math.cos(l) - o * Math.sin(l),
|
|
2349
2367
|
p,
|
|
2350
|
-
h - t / 2 * Math.sin(l) +
|
|
2368
|
+
h - t / 2 * Math.sin(l) + o * Math.cos(l)
|
|
2351
2369
|
// Back-left
|
|
2352
2370
|
);
|
|
2353
2371
|
const d = u * 8;
|
|
@@ -2371,16 +2389,16 @@ class eo extends E {
|
|
|
2371
2389
|
// Second triangle for tread
|
|
2372
2390
|
), l += r;
|
|
2373
2391
|
}
|
|
2374
|
-
this.setIndex(c), this.setAttribute("position", new
|
|
2392
|
+
this.setIndex(c), this.setAttribute("position", new F(i, 3)), this.computeVertexNormals();
|
|
2375
2393
|
}
|
|
2376
2394
|
}
|
|
2377
|
-
class
|
|
2378
|
-
constructor(t = 2,
|
|
2395
|
+
class sn extends E {
|
|
2396
|
+
constructor(t = 2, o = 0.3, s = 0.5, a = 10) {
|
|
2379
2397
|
super();
|
|
2380
|
-
const
|
|
2398
|
+
const n = [], r = [];
|
|
2381
2399
|
for (let i = 0; i < a; i++) {
|
|
2382
|
-
const c = i *
|
|
2383
|
-
|
|
2400
|
+
const c = i * o, l = c + o, u = i * s, m = u + s;
|
|
2401
|
+
n.push(
|
|
2384
2402
|
// Bottom face of riser (front face)
|
|
2385
2403
|
-t / 2,
|
|
2386
2404
|
c,
|
|
@@ -2437,10 +2455,10 @@ class no extends E {
|
|
|
2437
2455
|
// Second triangle for tread
|
|
2438
2456
|
);
|
|
2439
2457
|
}
|
|
2440
|
-
this.setIndex(r), this.setAttribute("position", new
|
|
2458
|
+
this.setIndex(r), this.setAttribute("position", new F(n, 3)), this.computeVertexNormals();
|
|
2441
2459
|
}
|
|
2442
2460
|
}
|
|
2443
|
-
class
|
|
2461
|
+
class Ce extends E {
|
|
2444
2462
|
constructor() {
|
|
2445
2463
|
super();
|
|
2446
2464
|
const t = [
|
|
@@ -2456,23 +2474,23 @@ class Ge extends E {
|
|
|
2456
2474
|
// Mouth of the jar
|
|
2457
2475
|
new A(0.5, 3.5)
|
|
2458
2476
|
// Cork
|
|
2459
|
-
],
|
|
2460
|
-
s.translate(0, 3.5, 0), this.copy(T([
|
|
2477
|
+
], o = new q(t, 10), s = new G(0.6, 0.5, 0.3, 10);
|
|
2478
|
+
s.translate(0, 3.5, 0), this.copy(T([o, s], !0));
|
|
2461
2479
|
}
|
|
2462
2480
|
}
|
|
2463
|
-
function At(e, t,
|
|
2464
|
-
const
|
|
2465
|
-
return e + (a - t) /
|
|
2481
|
+
function At(e, t, o, s, a) {
|
|
2482
|
+
const n = (s - t) / (o - e);
|
|
2483
|
+
return e + (a - t) / n;
|
|
2466
2484
|
}
|
|
2467
|
-
function
|
|
2468
|
-
const
|
|
2469
|
-
return t +
|
|
2485
|
+
function Re(e, t, o, s, a) {
|
|
2486
|
+
const n = (s - t) / (o - e);
|
|
2487
|
+
return t + n * (a - e);
|
|
2470
2488
|
}
|
|
2471
|
-
const
|
|
2489
|
+
const rn = {
|
|
2472
2490
|
calculateXFromSlopeIntercept: At,
|
|
2473
|
-
calculateYFromSlopeIntercept:
|
|
2491
|
+
calculateYFromSlopeIntercept: Re
|
|
2474
2492
|
};
|
|
2475
|
-
class
|
|
2493
|
+
class Be extends E {
|
|
2476
2494
|
constructor() {
|
|
2477
2495
|
super();
|
|
2478
2496
|
const t = [
|
|
@@ -2488,44 +2506,44 @@ class Re extends E {
|
|
|
2488
2506
|
// Mouth
|
|
2489
2507
|
new A(0.5, 2.5)
|
|
2490
2508
|
// Cork
|
|
2491
|
-
],
|
|
2509
|
+
], o = new q(t, 10), s = new G(0.55, 0.45, 0.2, 10);
|
|
2492
2510
|
s.translate(0, 2.5, 0);
|
|
2493
2511
|
const a = [
|
|
2494
2512
|
new A(0, 0),
|
|
2495
2513
|
new A(0.8, 0),
|
|
2496
2514
|
new A(At(0.8, 0, 1, 1.5, 1), 1),
|
|
2497
2515
|
new A(0, 1)
|
|
2498
|
-
],
|
|
2499
|
-
|
|
2516
|
+
], n = new q(a, 10);
|
|
2517
|
+
n.translate(0, 0.1, 0), n.scale(0.9, 0.9, 0.9), this.copy(T([o, s, n], !0));
|
|
2500
2518
|
}
|
|
2501
2519
|
}
|
|
2502
|
-
class
|
|
2503
|
-
constructor({ radius: t = 0.5, neckRadius:
|
|
2520
|
+
class Ne extends E {
|
|
2521
|
+
constructor({ radius: t = 0.5, neckRadius: o = 0.2, height: s = 3, neckHeight: a = 1, segments: n = 16 } = {}) {
|
|
2504
2522
|
super();
|
|
2505
|
-
const r = s - a, i = new
|
|
2523
|
+
const r = s - a, i = new G(t, t, r, n);
|
|
2506
2524
|
i.translate(0, r / 2, 0);
|
|
2507
|
-
const c = 0.3, l = new
|
|
2525
|
+
const c = 0.3, l = new G(o, t, c, n);
|
|
2508
2526
|
l.translate(0, r + c / 2, 0);
|
|
2509
|
-
const u = new
|
|
2527
|
+
const u = new G(o, o, a, n);
|
|
2510
2528
|
u.translate(0, r + c + a / 2, 0), this.copy(T([i, l, u], !1));
|
|
2511
2529
|
}
|
|
2512
2530
|
}
|
|
2513
|
-
class
|
|
2514
|
-
constructor(t = 0.4,
|
|
2531
|
+
class Oe extends E {
|
|
2532
|
+
constructor(t = 0.4, o = 1.2, s = 0.2) {
|
|
2515
2533
|
super();
|
|
2516
|
-
const a =
|
|
2517
|
-
|
|
2534
|
+
const a = o * 0.6, n = new b(t / 2, a, s);
|
|
2535
|
+
n.translate(0, a / 2, 0);
|
|
2518
2536
|
const r = t * 1.5, i = new b(r, t / 4, s);
|
|
2519
|
-
i.translate(0, a * 0.75, 0), this.copy(T([
|
|
2537
|
+
i.translate(0, a * 0.75, 0), this.copy(T([n, i], !1)), this.computeVertexNormals();
|
|
2520
2538
|
}
|
|
2521
2539
|
}
|
|
2522
|
-
class
|
|
2540
|
+
class _e extends E {
|
|
2523
2541
|
constructor() {
|
|
2524
2542
|
super();
|
|
2525
2543
|
const t = new b(5, 1, 5);
|
|
2526
2544
|
t.translate(0, 0.5, 0);
|
|
2527
|
-
const
|
|
2528
|
-
|
|
2545
|
+
const o = new b(4, 3, 4);
|
|
2546
|
+
o.translate(0, 2.5, 0);
|
|
2529
2547
|
const s = [
|
|
2530
2548
|
[-1.8, 2.3, -2.2],
|
|
2531
2549
|
[1.8, 2.3, -2.2],
|
|
@@ -2533,23 +2551,23 @@ class Oe extends E {
|
|
|
2533
2551
|
[1.8, 2.3, 2.2]
|
|
2534
2552
|
], a = [];
|
|
2535
2553
|
s.forEach((l) => {
|
|
2536
|
-
const u = new
|
|
2554
|
+
const u = new G(0.2, 0.2, 3.5, 16);
|
|
2537
2555
|
u.translate(l[0], l[1], l[2]), a.push(u);
|
|
2538
2556
|
});
|
|
2539
|
-
const
|
|
2540
|
-
|
|
2541
|
-
const r = new
|
|
2557
|
+
const n = new J(3.5, 2, 4);
|
|
2558
|
+
n.rotateY(Math.PI / 4), n.translate(0, 5, 0);
|
|
2559
|
+
const r = new Z();
|
|
2542
2560
|
r.moveTo(-1, 0), r.lineTo(-1, 2), r.absarc(0, 2, 1, Math.PI, 0, !0), r.lineTo(1, 0);
|
|
2543
2561
|
const i = {
|
|
2544
2562
|
depth: 0.5,
|
|
2545
2563
|
bevelEnabled: !1
|
|
2546
|
-
}, c = new
|
|
2564
|
+
}, c = new j(r, i);
|
|
2547
2565
|
c.translate(0, 0.5, 1.7), c.setIndex([...Array(c.attributes.position.count).keys()]), this.copy(
|
|
2548
2566
|
T(
|
|
2549
2567
|
[
|
|
2550
2568
|
t,
|
|
2551
|
-
T([
|
|
2552
|
-
|
|
2569
|
+
T([o, ...a], !1),
|
|
2570
|
+
n,
|
|
2553
2571
|
c
|
|
2554
2572
|
],
|
|
2555
2573
|
!0
|
|
@@ -2557,75 +2575,75 @@ class Oe extends E {
|
|
|
2557
2575
|
), this.computeVertexNormals();
|
|
2558
2576
|
}
|
|
2559
2577
|
}
|
|
2560
|
-
class
|
|
2561
|
-
constructor(t = 1.75,
|
|
2578
|
+
class Ue extends E {
|
|
2579
|
+
constructor(t = 1.75, o = 0.75) {
|
|
2562
2580
|
super();
|
|
2563
|
-
const s = t * 0.05, a = t * 0.15,
|
|
2581
|
+
const s = t * 0.05, a = t * 0.15, n = t * 0.15, r = t * 0.75;
|
|
2564
2582
|
let i = 0;
|
|
2565
|
-
const c = new b(
|
|
2583
|
+
const c = new b(o, s, o);
|
|
2566
2584
|
c.translate(0, i + s / 2, 0), i += s;
|
|
2567
|
-
const l = new b(
|
|
2585
|
+
const l = new b(o * 0.8, a, o * 0.8);
|
|
2568
2586
|
l.translate(0, i + a / 2, 0), i += a;
|
|
2569
|
-
const u = new b(
|
|
2570
|
-
u.translate(0, i +
|
|
2571
|
-
const m = new b(
|
|
2587
|
+
const u = new b(o * 0.6, n, o * 0.6);
|
|
2588
|
+
u.translate(0, i + n / 2, 0), i += n;
|
|
2589
|
+
const m = new b(o * 0.4, r, o * 0.4);
|
|
2572
2590
|
m.translate(0, i + r / 2, 0), i += r;
|
|
2573
|
-
const h = new
|
|
2591
|
+
const h = new J(o * 0.4 / Math.sqrt(2), 0.1, 4, 1, !1, Math.PI / 4);
|
|
2574
2592
|
h.translate(0, i + 0.1 / 2, 0), this.copy(T([c, l, u, m, h], !1)), this.computeVertexNormals();
|
|
2575
2593
|
}
|
|
2576
2594
|
}
|
|
2577
|
-
class
|
|
2578
|
-
constructor(t = 0.6,
|
|
2595
|
+
class ze extends E {
|
|
2596
|
+
constructor(t = 0.6, o = 1, s = 0.2, a = 0.6) {
|
|
2579
2597
|
super();
|
|
2580
|
-
const
|
|
2581
|
-
r.translate(0,
|
|
2582
|
-
const i = new
|
|
2583
|
-
i.rotateY(Math.PI / 2), i.rotateX(Math.PI / 2), i.translate(0,
|
|
2598
|
+
const n = o - a / 2, r = new b(t, n, s);
|
|
2599
|
+
r.translate(0, n / 2, 0);
|
|
2600
|
+
const i = new G(a / 2, a / 2, s, 16, 1, !1, 0, Math.PI);
|
|
2601
|
+
i.rotateY(Math.PI / 2), i.rotateX(Math.PI / 2), i.translate(0, n, 0), this.copy(T([r, i], !1)), this.computeVertexNormals();
|
|
2584
2602
|
}
|
|
2585
2603
|
}
|
|
2586
2604
|
class Fe extends E {
|
|
2587
|
-
constructor(t = 0.5,
|
|
2605
|
+
constructor(t = 0.5, o = 0.8, s = 0.15) {
|
|
2588
2606
|
super();
|
|
2589
|
-
const a = new b(t,
|
|
2590
|
-
a.translate(0,
|
|
2607
|
+
const a = new b(t, o, s);
|
|
2608
|
+
a.translate(0, o / 2, 0), this.copy(a);
|
|
2591
2609
|
}
|
|
2592
2610
|
}
|
|
2593
|
-
class
|
|
2611
|
+
class Le extends E {
|
|
2594
2612
|
constructor({ height: t = 2.25 } = {}) {
|
|
2595
2613
|
super();
|
|
2596
|
-
const
|
|
2597
|
-
|
|
2614
|
+
const o = new b(1.2, 0.5, 1.2);
|
|
2615
|
+
o.translate(0, 0.25, 0);
|
|
2598
2616
|
const s = new b(1, t, 1);
|
|
2599
2617
|
s.translate(0, 0.5 + t / 2, 0);
|
|
2600
2618
|
const a = new b(1.4, 0.3, 1.4);
|
|
2601
|
-
a.translate(0, 0.5 + t + 0.15, 0), this.copy(T([
|
|
2619
|
+
a.translate(0, 0.5 + t + 0.15, 0), this.copy(T([o, s, a], !1));
|
|
2602
2620
|
}
|
|
2603
2621
|
}
|
|
2604
2622
|
class It extends E {
|
|
2605
2623
|
constructor({
|
|
2606
2624
|
barHeight: t = 2,
|
|
2607
2625
|
//
|
|
2608
|
-
barRadius:
|
|
2626
|
+
barRadius: o = 0.05,
|
|
2609
2627
|
spikeHeight: s = 0.3,
|
|
2610
2628
|
spikeRadius: a = 0.075,
|
|
2611
|
-
spikeScaleZ:
|
|
2629
|
+
spikeScaleZ: n = 1,
|
|
2612
2630
|
radialSegments: r = 8
|
|
2613
2631
|
} = {}) {
|
|
2614
2632
|
super();
|
|
2615
|
-
const i = new
|
|
2633
|
+
const i = new G(o, o, t, r);
|
|
2616
2634
|
i.translate(0, t / 2, 0);
|
|
2617
|
-
const c = new
|
|
2618
|
-
c.translate(0, t + s / 2, 0), c.scale(1, 1,
|
|
2635
|
+
const c = new J(a, s, r);
|
|
2636
|
+
c.translate(0, t + s / 2, 0), c.scale(1, 1, n), this.copy(T([i, c], !1));
|
|
2619
2637
|
}
|
|
2620
2638
|
}
|
|
2621
|
-
class
|
|
2639
|
+
class De extends E {
|
|
2622
2640
|
constructor({
|
|
2623
2641
|
count: t = 20,
|
|
2624
2642
|
//
|
|
2625
|
-
spacing:
|
|
2643
|
+
spacing: o = 0.4,
|
|
2626
2644
|
barHeight: s = 2,
|
|
2627
2645
|
barRadius: a = 0.05,
|
|
2628
|
-
spikeHeight:
|
|
2646
|
+
spikeHeight: n = 0.3,
|
|
2629
2647
|
spikeRadius: r = 0.075,
|
|
2630
2648
|
spikeScaleZ: i = 1,
|
|
2631
2649
|
railHeight: c = 0.1,
|
|
@@ -2634,42 +2652,42 @@ class Le extends E {
|
|
|
2634
2652
|
radialSegments: m = 8
|
|
2635
2653
|
} = {}) {
|
|
2636
2654
|
super();
|
|
2637
|
-
const h = [], f = new It({ barHeight: s, barRadius: a, spikeHeight:
|
|
2655
|
+
const h = [], f = new It({ barHeight: s, barRadius: a, spikeHeight: n, spikeRadius: r, spikeScaleZ: i, radialSegments: m }), p = new b(t * o, c, l);
|
|
2638
2656
|
for (let g = 0; g < t; g++) {
|
|
2639
2657
|
const v = f.clone();
|
|
2640
|
-
v.translate(g *
|
|
2658
|
+
v.translate(g * o, 0, 0), h.push(v);
|
|
2641
2659
|
}
|
|
2642
2660
|
const d = p.clone();
|
|
2643
|
-
d.translate(
|
|
2661
|
+
d.translate(o * (t - 1) / 2, s - u - c / 2, 0), h.push(d);
|
|
2644
2662
|
const y = p.clone();
|
|
2645
|
-
y.translate(
|
|
2663
|
+
y.translate(o * (t - 1) / 2, c / 2, 0), h.push(y), this.copy(T(h));
|
|
2646
2664
|
}
|
|
2647
2665
|
}
|
|
2648
|
-
class
|
|
2666
|
+
class ke extends E {
|
|
2649
2667
|
constructor({
|
|
2650
2668
|
width: t = 5,
|
|
2651
2669
|
//
|
|
2652
|
-
height:
|
|
2670
|
+
height: o = 8,
|
|
2653
2671
|
depth: s = 1,
|
|
2654
2672
|
shelves: a = 4,
|
|
2655
|
-
frameThickness:
|
|
2673
|
+
frameThickness: n = 0.1,
|
|
2656
2674
|
open: r = !1
|
|
2657
2675
|
} = {}) {
|
|
2658
2676
|
super();
|
|
2659
|
-
const i =
|
|
2660
|
-
h.translate(-c / 2 +
|
|
2677
|
+
const i = o, c = t, l = s, u = new b(n, i, l), m = new b(c - 2 * n, n, l), h = u.clone();
|
|
2678
|
+
h.translate(-c / 2 + n / 2, i / 2, 0);
|
|
2661
2679
|
const f = u.clone();
|
|
2662
|
-
f.translate(c / 2 -
|
|
2680
|
+
f.translate(c / 2 - n / 2, i / 2, 0);
|
|
2663
2681
|
const p = m.clone();
|
|
2664
|
-
p.translate(0, i -
|
|
2682
|
+
p.translate(0, i - n / 2, 0);
|
|
2665
2683
|
const d = m.clone();
|
|
2666
|
-
d.translate(0,
|
|
2667
|
-
const y = new b(c, i,
|
|
2668
|
-
y.translate(0, i / 2, -l / 2 +
|
|
2669
|
-
const g = [], v = (i -
|
|
2670
|
-
for (let
|
|
2671
|
-
const
|
|
2672
|
-
|
|
2684
|
+
d.translate(0, n / 2, 0);
|
|
2685
|
+
const y = new b(c, i, n);
|
|
2686
|
+
y.translate(0, i / 2, -l / 2 + n / 2);
|
|
2687
|
+
const g = [], v = (i - n) / (a + 1);
|
|
2688
|
+
for (let C = 1; C <= a; C++) {
|
|
2689
|
+
const S = m.clone();
|
|
2690
|
+
S.translate(0, n / 2 + C * v, 0), g.push(S);
|
|
2673
2691
|
}
|
|
2674
2692
|
this.copy(T([
|
|
2675
2693
|
h,
|
|
@@ -2682,18 +2700,18 @@ class De extends E {
|
|
|
2682
2700
|
], !1));
|
|
2683
2701
|
}
|
|
2684
2702
|
}
|
|
2685
|
-
class
|
|
2703
|
+
class Ve extends E {
|
|
2686
2704
|
constructor() {
|
|
2687
2705
|
super();
|
|
2688
2706
|
const t = new b(5, 0.3, 3);
|
|
2689
2707
|
t.translate(0, 3.15, 0);
|
|
2690
|
-
const
|
|
2708
|
+
const o = [
|
|
2691
2709
|
new A(0.2, 0),
|
|
2692
2710
|
//
|
|
2693
2711
|
new A(0.25, 0.5),
|
|
2694
2712
|
new A(0.15, 1.5),
|
|
2695
2713
|
new A(0.3, 3)
|
|
2696
|
-
], s = new q(
|
|
2714
|
+
], s = new q(o, 32), n = T(
|
|
2697
2715
|
[
|
|
2698
2716
|
[2.1, 0, 1.1],
|
|
2699
2717
|
[-2.1, 0, 1.1],
|
|
@@ -2704,14 +2722,14 @@ class ke extends E {
|
|
|
2704
2722
|
return i.translate(r[0], r[1], r[2]), i;
|
|
2705
2723
|
})
|
|
2706
2724
|
);
|
|
2707
|
-
this.copy(T([t,
|
|
2725
|
+
this.copy(T([t, n], !0));
|
|
2708
2726
|
}
|
|
2709
2727
|
}
|
|
2710
|
-
class Et extends
|
|
2711
|
-
constructor({ height: t = 0.25, radius:
|
|
2728
|
+
class Et extends Pe {
|
|
2729
|
+
constructor({ height: t = 0.25, radius: o = 0.05, segmentsU: s = 16, segmentsV: a = 16 } = {}) {
|
|
2712
2730
|
super(
|
|
2713
|
-
(
|
|
2714
|
-
const c =
|
|
2731
|
+
(n, r, i) => {
|
|
2732
|
+
const c = n * Math.PI * 2, l = Math.sin(r * Math.PI), u = o * l * Math.cos(c), m = r * t, h = o * l * Math.sin(c);
|
|
2715
2733
|
i.set(u, m, -h);
|
|
2716
2734
|
},
|
|
2717
2735
|
s,
|
|
@@ -2719,32 +2737,32 @@ class Et extends Se {
|
|
|
2719
2737
|
);
|
|
2720
2738
|
}
|
|
2721
2739
|
}
|
|
2722
|
-
class
|
|
2740
|
+
class qe extends E {
|
|
2723
2741
|
constructor({
|
|
2724
2742
|
radiusTop: t = 0.2,
|
|
2725
2743
|
//
|
|
2726
|
-
radiusBottom:
|
|
2744
|
+
radiusBottom: o = 0.2,
|
|
2727
2745
|
height: s = 1,
|
|
2728
2746
|
flameHeight: a = 0.25,
|
|
2729
|
-
flameRadius:
|
|
2747
|
+
flameRadius: n = 0.05,
|
|
2730
2748
|
segments: r = 16
|
|
2731
2749
|
} = {}) {
|
|
2732
2750
|
super();
|
|
2733
|
-
const i = new
|
|
2751
|
+
const i = new G(t, o, s, r);
|
|
2734
2752
|
i.translate(0, s / 2, 0);
|
|
2735
2753
|
const c = new Et({
|
|
2736
2754
|
segmentsU: r,
|
|
2737
2755
|
segmentsV: r,
|
|
2738
2756
|
height: a,
|
|
2739
|
-
radius:
|
|
2757
|
+
radius: n
|
|
2740
2758
|
});
|
|
2741
2759
|
c.translate(0, s, 0), this.copy(T([i, c], !0));
|
|
2742
2760
|
}
|
|
2743
2761
|
}
|
|
2744
|
-
class
|
|
2745
|
-
constructor(t = 1,
|
|
2762
|
+
class an extends E {
|
|
2763
|
+
constructor(t = 1, o = 2, s = 0.5, a = Math.PI / 4) {
|
|
2746
2764
|
super();
|
|
2747
|
-
const
|
|
2765
|
+
const n = o * Math.tan(a), r = t, i = o, c = s, l = [
|
|
2748
2766
|
0,
|
|
2749
2767
|
0,
|
|
2750
2768
|
0,
|
|
@@ -2753,11 +2771,11 @@ class so extends E {
|
|
|
2753
2771
|
0,
|
|
2754
2772
|
0,
|
|
2755
2773
|
// Front face, bottom right
|
|
2756
|
-
r +
|
|
2774
|
+
r + n,
|
|
2757
2775
|
i,
|
|
2758
2776
|
0,
|
|
2759
2777
|
// Front face, top right
|
|
2760
|
-
|
|
2778
|
+
n,
|
|
2761
2779
|
i,
|
|
2762
2780
|
0,
|
|
2763
2781
|
// Front face, top left
|
|
@@ -2768,10 +2786,10 @@ class so extends E {
|
|
|
2768
2786
|
0,
|
|
2769
2787
|
0,
|
|
2770
2788
|
-c,
|
|
2771
|
-
|
|
2789
|
+
n,
|
|
2772
2790
|
i,
|
|
2773
2791
|
-c,
|
|
2774
|
-
r +
|
|
2792
|
+
r + n,
|
|
2775
2793
|
i,
|
|
2776
2794
|
-c,
|
|
2777
2795
|
0,
|
|
@@ -2781,10 +2799,10 @@ class so extends E {
|
|
|
2781
2799
|
0,
|
|
2782
2800
|
0,
|
|
2783
2801
|
0,
|
|
2784
|
-
|
|
2802
|
+
n,
|
|
2785
2803
|
i,
|
|
2786
2804
|
0,
|
|
2787
|
-
|
|
2805
|
+
n,
|
|
2788
2806
|
i,
|
|
2789
2807
|
-c,
|
|
2790
2808
|
r,
|
|
@@ -2794,23 +2812,23 @@ class so extends E {
|
|
|
2794
2812
|
r,
|
|
2795
2813
|
0,
|
|
2796
2814
|
-c,
|
|
2797
|
-
r +
|
|
2815
|
+
r + n,
|
|
2798
2816
|
i,
|
|
2799
2817
|
-c,
|
|
2800
|
-
r +
|
|
2818
|
+
r + n,
|
|
2801
2819
|
i,
|
|
2802
2820
|
0,
|
|
2803
|
-
|
|
2821
|
+
n,
|
|
2804
2822
|
i,
|
|
2805
2823
|
0,
|
|
2806
2824
|
// Top face
|
|
2807
|
-
r +
|
|
2825
|
+
r + n,
|
|
2808
2826
|
i,
|
|
2809
2827
|
0,
|
|
2810
|
-
r +
|
|
2828
|
+
r + n,
|
|
2811
2829
|
i,
|
|
2812
2830
|
-c,
|
|
2813
|
-
|
|
2831
|
+
n,
|
|
2814
2832
|
i,
|
|
2815
2833
|
-c,
|
|
2816
2834
|
0,
|
|
@@ -3004,71 +3022,71 @@ class so extends E {
|
|
|
3004
3022
|
1
|
|
3005
3023
|
// Bottom face
|
|
3006
3024
|
]), f = new Float32Array(l), p = new Float32Array(u), d = new Float32Array(h), y = new Uint16Array(m);
|
|
3007
|
-
this.setAttribute("position", new
|
|
3025
|
+
this.setAttribute("position", new _(f, 3)), this.setAttribute("normal", new _(p, 3)), this.setAttribute("uv", new _(d, 2)), this.setIndex(new _(y, 1)), this.center();
|
|
3008
3026
|
}
|
|
3009
3027
|
}
|
|
3010
|
-
class
|
|
3028
|
+
class Ye extends E {
|
|
3011
3029
|
constructor() {
|
|
3012
3030
|
super();
|
|
3013
|
-
const t = [],
|
|
3031
|
+
const t = [], o = [];
|
|
3014
3032
|
for (let s = 0; s < 5; s++) {
|
|
3015
|
-
const a = 0.8 + Math.random() * 0.4,
|
|
3016
|
-
f.scale(a,
|
|
3033
|
+
const a = 0.8 + Math.random() * 0.4, n = 0.8 + Math.random() * 0.4, r = 0.8 + Math.random() * 0.4, i = Math.random() * Math.PI, c = Math.random() * Math.PI, l = Math.random() * Math.PI, u = (Math.random() - 0.5) * 4, m = 0, h = (Math.random() - 0.5) * 4, f = new et(1, 0);
|
|
3034
|
+
f.scale(a, n, r), f.rotateX(i), f.rotateY(c), f.rotateZ(l), f.translate(u, m, h), t.push(f);
|
|
3017
3035
|
const p = new et(1, 0);
|
|
3018
|
-
p.scale(a * 0.9,
|
|
3036
|
+
p.scale(a * 0.9, n * 0.5, r * 0.9), p.rotateX(i), p.rotateY(c), p.rotateZ(l), p.translate(u, m + 0.3, h), o.push(p);
|
|
3019
3037
|
}
|
|
3020
3038
|
this.copy(
|
|
3021
3039
|
T([
|
|
3022
3040
|
T(t),
|
|
3023
|
-
T(
|
|
3041
|
+
T(o)
|
|
3024
3042
|
], !0)
|
|
3025
3043
|
);
|
|
3026
3044
|
}
|
|
3027
3045
|
}
|
|
3028
|
-
function
|
|
3029
|
-
e.deleteAttribute("uv"), e.deleteAttribute("normal"), e =
|
|
3046
|
+
function He(e, t = ft.XYZ, o = 0.5, s = 2) {
|
|
3047
|
+
e.deleteAttribute("uv"), e.deleteAttribute("normal"), e = Se(e), e.computeVertexNormals();
|
|
3030
3048
|
const a = e.getAttribute("position");
|
|
3031
|
-
for (let
|
|
3032
|
-
const r = new M().fromBufferAttribute(a,
|
|
3033
|
-
r.add(c), a.setXYZ(
|
|
3049
|
+
for (let n = 0; n < a.count; n++) {
|
|
3050
|
+
const r = new M().fromBufferAttribute(a, n), i = Math.random() * (s - o) + o, c = t.clone().multiplyScalar(i);
|
|
3051
|
+
r.add(c), a.setXYZ(n, r.x, r.y, r.z);
|
|
3034
3052
|
}
|
|
3035
3053
|
return a.needsUpdate = !0, e.computeVertexNormals(), e;
|
|
3036
3054
|
}
|
|
3037
|
-
class
|
|
3038
|
-
constructor(t = 1,
|
|
3055
|
+
class Xe extends E {
|
|
3056
|
+
constructor(t = 1, o = 4, s = 4) {
|
|
3039
3057
|
super();
|
|
3040
|
-
const a = new
|
|
3041
|
-
this.copy(
|
|
3058
|
+
const a = new z(t, o, s);
|
|
3059
|
+
this.copy(He(a, ft.XYZ, 0.5, 1)), this.computeVertexNormals(), this.center();
|
|
3042
3060
|
}
|
|
3043
3061
|
}
|
|
3044
|
-
class
|
|
3062
|
+
class Ze extends E {
|
|
3045
3063
|
constructor() {
|
|
3046
3064
|
super();
|
|
3047
3065
|
const t = [];
|
|
3048
|
-
for (let
|
|
3066
|
+
for (let o = 0; o < 5; o++) {
|
|
3049
3067
|
const s = new et(1, 0);
|
|
3050
3068
|
s.scale(0.8 + Math.random() * 0.4, 0.8 + Math.random() * 0.4, 0.8 + Math.random() * 0.4), s.rotateX(Math.random() * Math.PI), s.rotateY(Math.random() * Math.PI), s.rotateZ(Math.random() * Math.PI), s.translate((Math.random() - 0.5) * 4, 0, (Math.random() - 0.5) * 4), t.push(s);
|
|
3051
3069
|
}
|
|
3052
3070
|
this.copy(T(t));
|
|
3053
3071
|
}
|
|
3054
3072
|
}
|
|
3055
|
-
class
|
|
3056
|
-
constructor(t = 0.1,
|
|
3073
|
+
class je extends E {
|
|
3074
|
+
constructor(t = 0.1, o = 0.1, s = 0.4, a = 8) {
|
|
3057
3075
|
super();
|
|
3058
|
-
const
|
|
3059
|
-
|
|
3060
|
-
const r = new
|
|
3061
|
-
i.translate(0, s / 2 + t * 0.6, -t * 0.6), c.translate(0, s / 2 + t * 0.6, t * 0.6), l.translate(0, -s / 2 -
|
|
3076
|
+
const n = new G(t * 0.6, o * 0.6, s, a);
|
|
3077
|
+
n.translate(0, 0, 0);
|
|
3078
|
+
const r = new z(t, a, a), i = r.clone(), c = r.clone(), l = r.clone(), u = r.clone();
|
|
3079
|
+
i.translate(0, s / 2 + t * 0.6, -t * 0.6), c.translate(0, s / 2 + t * 0.6, t * 0.6), l.translate(0, -s / 2 - o * 0.6, -o * 0.6), u.translate(0, -s / 2 - o * 0.6, o * 0.6), this.copy(T([n, i, c, l, u], !1));
|
|
3062
3080
|
}
|
|
3063
3081
|
}
|
|
3064
|
-
class
|
|
3082
|
+
class Qe extends E {
|
|
3065
3083
|
constructor({
|
|
3066
3084
|
flaskRadius: t = 1,
|
|
3067
3085
|
//
|
|
3068
|
-
neckRadius:
|
|
3086
|
+
neckRadius: o = 0.3,
|
|
3069
3087
|
height: s = 2.5,
|
|
3070
3088
|
neckHeight: a = 1,
|
|
3071
|
-
radialSegments:
|
|
3089
|
+
radialSegments: n = 16
|
|
3072
3090
|
} = {}) {
|
|
3073
3091
|
super();
|
|
3074
3092
|
const r = [
|
|
@@ -3078,46 +3096,46 @@ class je extends E {
|
|
|
3078
3096
|
// Flat base with minimum width
|
|
3079
3097
|
new A(t, 0.1),
|
|
3080
3098
|
// End of the rounded base
|
|
3081
|
-
new A(
|
|
3099
|
+
new A(o, s),
|
|
3082
3100
|
// Start of the straight neck
|
|
3083
|
-
new A(
|
|
3101
|
+
new A(o, s + a),
|
|
3084
3102
|
// End of the straight neck
|
|
3085
|
-
new A(
|
|
3103
|
+
new A(o * 1.1, s + a + 0.3)
|
|
3086
3104
|
// Slight outward lip at the top
|
|
3087
|
-
], i = new q(r,
|
|
3105
|
+
], i = new q(r, n);
|
|
3088
3106
|
this.copy(T([i], !1));
|
|
3089
3107
|
}
|
|
3090
3108
|
}
|
|
3091
|
-
const
|
|
3092
|
-
const
|
|
3093
|
-
return Math.asin(
|
|
3094
|
-
},
|
|
3095
|
-
x: e * Math.sin(
|
|
3096
|
-
y: e * Math.sin(
|
|
3097
|
-
z: e * Math.cos(
|
|
3098
|
-
}),
|
|
3099
|
-
const s = Math.sqrt(e * e + t * t +
|
|
3100
|
-
return { radius: s, theta: a, phi:
|
|
3109
|
+
const cn = (e, t) => e / (1 - Math.cos(t)), bt = (e, t) => e / (2 * Math.sin(t)), Ke = (e, t) => e * (1 - Math.cos(t)), ln = (e, t) => 2 * e * Math.sin(t), yt = (e, t) => {
|
|
3110
|
+
const o = 2 * t;
|
|
3111
|
+
return Math.asin(o / (2 * e));
|
|
3112
|
+
}, un = (e, t, o) => ({
|
|
3113
|
+
x: e * Math.sin(o) * Math.cos(t),
|
|
3114
|
+
y: e * Math.sin(o) * Math.sin(t),
|
|
3115
|
+
z: e * Math.cos(o)
|
|
3116
|
+
}), mn = (e, t, o) => {
|
|
3117
|
+
const s = Math.sqrt(e * e + t * t + o * o), a = Math.atan2(t, e), n = Math.acos(o / s);
|
|
3118
|
+
return { radius: s, theta: a, phi: n };
|
|
3101
3119
|
};
|
|
3102
|
-
function
|
|
3120
|
+
function $e(e, t, o, s = 0, a = 0, n = 32) {
|
|
3103
3121
|
const r = s ? yt(e, s) : 0, i = a ? Math.PI - yt(e, a) : Math.PI, c = [];
|
|
3104
|
-
for (let l = 0; l <=
|
|
3105
|
-
const u = i - (i - r) /
|
|
3122
|
+
for (let l = 0; l <= n; l++) {
|
|
3123
|
+
const u = i - (i - r) / n * l, m = e * Math.sin(u), h = t * Math.cos(u) + o;
|
|
3106
3124
|
c.push(new A(m, h));
|
|
3107
3125
|
}
|
|
3108
3126
|
return [...c];
|
|
3109
3127
|
}
|
|
3110
|
-
class
|
|
3128
|
+
class Je extends E {
|
|
3111
3129
|
constructor() {
|
|
3112
3130
|
super();
|
|
3113
3131
|
const t = [
|
|
3114
|
-
|
|
3132
|
+
...$e(1, 1, 0.5, 0.2, 0, 32),
|
|
3115
3133
|
new A(0.2, 3)
|
|
3116
|
-
],
|
|
3117
|
-
this.copy(
|
|
3134
|
+
], o = new q(t, 32);
|
|
3135
|
+
this.copy(o);
|
|
3118
3136
|
}
|
|
3119
3137
|
}
|
|
3120
|
-
class
|
|
3138
|
+
class We extends E {
|
|
3121
3139
|
constructor() {
|
|
3122
3140
|
super();
|
|
3123
3141
|
const t = [
|
|
@@ -3131,128 +3149,128 @@ class Je extends E {
|
|
|
3131
3149
|
// Flared edge
|
|
3132
3150
|
new A(0.8, 1.8)
|
|
3133
3151
|
// Lip of the bowl
|
|
3134
|
-
],
|
|
3135
|
-
s.rotateX(-Math.PI / 2), s.translate(0, 0, 0), this.copy(T([
|
|
3152
|
+
], o = new q(t, 12), s = new Rt(1, 12);
|
|
3153
|
+
s.rotateX(-Math.PI / 2), s.translate(0, 0, 0), this.copy(T([o, s], !1));
|
|
3136
3154
|
}
|
|
3137
3155
|
}
|
|
3138
|
-
class
|
|
3156
|
+
class to extends E {
|
|
3139
3157
|
constructor({
|
|
3140
3158
|
radius: t = 0.3,
|
|
3141
3159
|
//
|
|
3142
|
-
height:
|
|
3160
|
+
height: o = 0.4,
|
|
3143
3161
|
count: s = 3,
|
|
3144
3162
|
thickness: a = 0.03,
|
|
3145
|
-
radialSegments:
|
|
3163
|
+
radialSegments: n = 16
|
|
3146
3164
|
} = {}) {
|
|
3147
3165
|
super();
|
|
3148
|
-
const r = new Mt(t, a, 8,
|
|
3149
|
-
r.rotateX(Math.PI / 2), r.translate(0,
|
|
3150
|
-
const i = new
|
|
3166
|
+
const r = new Mt(t, a, 8, n);
|
|
3167
|
+
r.rotateX(Math.PI / 2), r.translate(0, o, 0);
|
|
3168
|
+
const i = new G(a * 0.6, a * 0.6, o, n), c = [];
|
|
3151
3169
|
for (let l = 0; l < s; l++) {
|
|
3152
3170
|
const u = l / s * Math.PI * 2, m = i.clone();
|
|
3153
|
-
m.translate(Math.cos(u) * t,
|
|
3171
|
+
m.translate(Math.cos(u) * t, o / 2, Math.sin(u) * t), c.push(m);
|
|
3154
3172
|
}
|
|
3155
3173
|
this.copy(T([r, ...c], !1));
|
|
3156
3174
|
}
|
|
3157
3175
|
}
|
|
3158
|
-
class
|
|
3176
|
+
class eo extends E {
|
|
3159
3177
|
constructor() {
|
|
3160
3178
|
super();
|
|
3161
|
-
const t = new
|
|
3179
|
+
const t = new G(0.5, 0.6, 0.3, 16);
|
|
3162
3180
|
t.translate(0, 0.15, 0);
|
|
3163
|
-
const
|
|
3164
|
-
|
|
3165
|
-
const s = new
|
|
3181
|
+
const o = new G(0.15, 0.15, 2, 12, 1, !0);
|
|
3182
|
+
o.translate(0, 1.3, 0);
|
|
3183
|
+
const s = new z(0.3, 16, 16);
|
|
3166
3184
|
s.translate(0, 2.4, 0), this.copy(
|
|
3167
3185
|
T(
|
|
3168
|
-
[t, T([
|
|
3186
|
+
[t, T([o, s])],
|
|
3169
3187
|
!0
|
|
3170
3188
|
)
|
|
3171
3189
|
);
|
|
3172
3190
|
}
|
|
3173
3191
|
}
|
|
3174
|
-
class
|
|
3175
|
-
constructor(t = 0.2,
|
|
3192
|
+
class ut extends E {
|
|
3193
|
+
constructor(t = 0.2, o = 0.2, s = 3, a = 32, n = !0) {
|
|
3176
3194
|
super();
|
|
3177
|
-
const r = new
|
|
3195
|
+
const r = new G(t, o, s, a, 1, n), i = new z(o, a, a / 2, 0, Math.PI * 2, Math.PI / 2, Math.PI / 2);
|
|
3178
3196
|
i.translate(0, -(s / 2), 0), this.copy(T([r, i], !1));
|
|
3179
3197
|
}
|
|
3180
3198
|
}
|
|
3181
|
-
class
|
|
3199
|
+
class oo extends E {
|
|
3182
3200
|
constructor({
|
|
3183
3201
|
radius: t = 3,
|
|
3184
3202
|
//
|
|
3185
|
-
height:
|
|
3203
|
+
height: o = 0.6,
|
|
3186
3204
|
widthSegments: s = 64,
|
|
3187
3205
|
heightSegments: a = 16,
|
|
3188
|
-
phiStart:
|
|
3206
|
+
phiStart: n = 0,
|
|
3189
3207
|
phiLength: r = Math.PI * 2
|
|
3190
3208
|
} = {}) {
|
|
3191
|
-
super(), this.copy(new
|
|
3209
|
+
super(), this.copy(new z(t, s, a, n, r, 0, Math.PI / 2)), this.scale(1, o / t, 1);
|
|
3192
3210
|
}
|
|
3193
3211
|
}
|
|
3194
|
-
class
|
|
3212
|
+
class no extends E {
|
|
3195
3213
|
constructor({
|
|
3196
3214
|
radius: t = bt(5, Math.PI / 10),
|
|
3197
3215
|
//
|
|
3198
|
-
widthSegments:
|
|
3216
|
+
widthSegments: o = 64,
|
|
3199
3217
|
heightSegments: s = 32,
|
|
3200
3218
|
phiStart: a = 0,
|
|
3201
|
-
phiLength:
|
|
3219
|
+
phiLength: n = Math.PI * 2,
|
|
3202
3220
|
thetaLength: r = Math.PI / 10
|
|
3203
3221
|
} = {}) {
|
|
3204
|
-
super(), this.copy(new
|
|
3205
|
-
const i =
|
|
3222
|
+
super(), this.copy(new z(t, o, s, a, n, 0, r));
|
|
3223
|
+
const i = Ke(t, r);
|
|
3206
3224
|
this.translate(0, -t + i, 0);
|
|
3207
3225
|
}
|
|
3208
3226
|
}
|
|
3209
|
-
class
|
|
3227
|
+
class so extends E {
|
|
3210
3228
|
constructor({
|
|
3211
3229
|
trunkRadiusTop: t = 0.25,
|
|
3212
|
-
trunkRadiusBottom:
|
|
3230
|
+
trunkRadiusBottom: o = 0.4,
|
|
3213
3231
|
trunkHeight: s = 2.5,
|
|
3214
3232
|
trunkSegments: a = 14,
|
|
3215
|
-
leafSize:
|
|
3233
|
+
leafSize: n = 0.8,
|
|
3216
3234
|
leafCount: r = 6,
|
|
3217
3235
|
leafDetail: i = 0,
|
|
3218
3236
|
leafSpreadRadius: c = 1.5
|
|
3219
3237
|
} = {}) {
|
|
3220
3238
|
super();
|
|
3221
|
-
const l = new
|
|
3239
|
+
const l = new G(t, o, s, a);
|
|
3222
3240
|
l.translate(0, s / 2, 0);
|
|
3223
3241
|
const u = [];
|
|
3224
3242
|
for (let m = 0; m < r; m++) {
|
|
3225
|
-
const h = new et(
|
|
3243
|
+
const h = new et(n, i);
|
|
3226
3244
|
h.translate(
|
|
3227
3245
|
(Math.random() - 0.5) * c,
|
|
3228
|
-
(Math.random() - 0.5) *
|
|
3246
|
+
(Math.random() - 0.5) * n + s,
|
|
3229
3247
|
(Math.random() - 0.5) * c
|
|
3230
3248
|
), u.push(h);
|
|
3231
3249
|
}
|
|
3232
3250
|
this.copy(T([l.toNonIndexed(), T(u, !1)], !0)), this.computeVertexNormals();
|
|
3233
3251
|
}
|
|
3234
3252
|
}
|
|
3235
|
-
class
|
|
3253
|
+
class hn extends x {
|
|
3236
3254
|
constructor({
|
|
3237
3255
|
width: t = 5,
|
|
3238
|
-
height:
|
|
3256
|
+
height: o = 3,
|
|
3239
3257
|
depth: s = 5,
|
|
3240
3258
|
wallThickness: a = 0.05,
|
|
3241
|
-
interiorColor:
|
|
3259
|
+
interiorColor: n = H.WHITE_SMOKE,
|
|
3242
3260
|
floorColor: r = H.RAW_SIENNA,
|
|
3243
3261
|
exteriorColor: i = H.GRAY
|
|
3244
3262
|
} = {}) {
|
|
3245
3263
|
super(
|
|
3246
|
-
new
|
|
3264
|
+
new Ge({ width: t, height: o, depth: s, wallThickness: a }),
|
|
3247
3265
|
[
|
|
3248
|
-
new w({ color:
|
|
3266
|
+
new w({ color: n }),
|
|
3249
3267
|
new w({ color: r }),
|
|
3250
3268
|
new w({ color: i })
|
|
3251
3269
|
]
|
|
3252
3270
|
);
|
|
3253
3271
|
}
|
|
3254
3272
|
}
|
|
3255
|
-
const
|
|
3273
|
+
const ro = {
|
|
3256
3274
|
uniforms: {
|
|
3257
3275
|
time: { value: 0 }
|
|
3258
3276
|
},
|
|
@@ -3296,26 +3314,26 @@ const sn = {
|
|
|
3296
3314
|
}
|
|
3297
3315
|
`
|
|
3298
3316
|
};
|
|
3299
|
-
class
|
|
3317
|
+
class fn extends x {
|
|
3300
3318
|
constructor() {
|
|
3301
3319
|
super(
|
|
3302
|
-
new
|
|
3303
|
-
new
|
|
3320
|
+
new z(5, 32, 32),
|
|
3321
|
+
new st(ro)
|
|
3304
3322
|
);
|
|
3305
3323
|
}
|
|
3306
3324
|
}
|
|
3307
|
-
class
|
|
3325
|
+
class pn extends x {
|
|
3308
3326
|
constructor({
|
|
3309
3327
|
width: t = 1,
|
|
3310
|
-
height:
|
|
3328
|
+
height: o = 1.5,
|
|
3311
3329
|
depth: s = 0.5,
|
|
3312
3330
|
coverThickness: a = 0.05,
|
|
3313
|
-
pageIndent:
|
|
3331
|
+
pageIndent: n = 0.05,
|
|
3314
3332
|
coverColor: r = H.DARK_RED,
|
|
3315
3333
|
pageColor: i = H.TITANIUM_WHITE
|
|
3316
3334
|
} = {}) {
|
|
3317
3335
|
super(
|
|
3318
|
-
new xt(t,
|
|
3336
|
+
new xt(t, o, s, a, n),
|
|
3319
3337
|
[
|
|
3320
3338
|
new w({ color: r, metalness: 0.1, roughness: 0.7, flatShading: !0 }),
|
|
3321
3339
|
new w({ color: i, flatShading: !0 })
|
|
@@ -3323,9 +3341,9 @@ class mo extends x {
|
|
|
3323
3341
|
);
|
|
3324
3342
|
}
|
|
3325
3343
|
}
|
|
3326
|
-
class
|
|
3344
|
+
class dn extends x {
|
|
3327
3345
|
constructor() {
|
|
3328
|
-
super(new
|
|
3346
|
+
super(new Ce(), [
|
|
3329
3347
|
new w({
|
|
3330
3348
|
color: 8965290,
|
|
3331
3349
|
transparent: !0,
|
|
@@ -3341,9 +3359,9 @@ class ho extends x {
|
|
|
3341
3359
|
]);
|
|
3342
3360
|
}
|
|
3343
3361
|
}
|
|
3344
|
-
class
|
|
3362
|
+
class yn extends x {
|
|
3345
3363
|
constructor() {
|
|
3346
|
-
super(new
|
|
3364
|
+
super(new Be(), [
|
|
3347
3365
|
new w({
|
|
3348
3366
|
color: 8965375,
|
|
3349
3367
|
transparent: !0,
|
|
@@ -3365,11 +3383,11 @@ class fo extends x {
|
|
|
3365
3383
|
]);
|
|
3366
3384
|
}
|
|
3367
3385
|
}
|
|
3368
|
-
class
|
|
3386
|
+
class wn extends x {
|
|
3369
3387
|
constructor() {
|
|
3370
3388
|
super(
|
|
3371
|
-
new
|
|
3372
|
-
new
|
|
3389
|
+
new Ne(),
|
|
3390
|
+
new rt({
|
|
3373
3391
|
color: 5597999,
|
|
3374
3392
|
roughness: 0.1,
|
|
3375
3393
|
transmission: 0.9,
|
|
@@ -3381,22 +3399,22 @@ class po extends x {
|
|
|
3381
3399
|
);
|
|
3382
3400
|
}
|
|
3383
3401
|
}
|
|
3384
|
-
class
|
|
3402
|
+
class Mn extends x {
|
|
3385
3403
|
constructor({
|
|
3386
3404
|
width: t = 0.4,
|
|
3387
|
-
height:
|
|
3405
|
+
height: o = 1.2,
|
|
3388
3406
|
depth: s = 0.2
|
|
3389
3407
|
} = {}) {
|
|
3390
3408
|
super(
|
|
3391
|
-
new
|
|
3409
|
+
new Oe(t, o, s),
|
|
3392
3410
|
new w({ color: 7829367, roughness: 0.8 })
|
|
3393
3411
|
);
|
|
3394
3412
|
}
|
|
3395
3413
|
}
|
|
3396
|
-
class
|
|
3414
|
+
class xn extends x {
|
|
3397
3415
|
constructor() {
|
|
3398
3416
|
super(
|
|
3399
|
-
new
|
|
3417
|
+
new _e(),
|
|
3400
3418
|
[
|
|
3401
3419
|
new w({ color: 8421504, flatShading: !0 }),
|
|
3402
3420
|
// Base
|
|
@@ -3410,69 +3428,69 @@ class wo extends x {
|
|
|
3410
3428
|
);
|
|
3411
3429
|
}
|
|
3412
3430
|
}
|
|
3413
|
-
class
|
|
3414
|
-
constructor({ totalHeight: t = 1.75, baseWidth:
|
|
3431
|
+
class vn extends x {
|
|
3432
|
+
constructor({ totalHeight: t = 1.75, baseWidth: o = 0.75 } = {}) {
|
|
3415
3433
|
super(
|
|
3416
|
-
new
|
|
3434
|
+
new Ue(t, o),
|
|
3417
3435
|
new w({ color: 7829367, roughness: 0.8 })
|
|
3418
3436
|
);
|
|
3419
3437
|
}
|
|
3420
3438
|
}
|
|
3421
|
-
class
|
|
3422
|
-
constructor(t = 0.6,
|
|
3439
|
+
class gn extends x {
|
|
3440
|
+
constructor(t = 0.6, o = 1, s = 0.2, a = 0.6) {
|
|
3423
3441
|
super(
|
|
3424
|
-
new
|
|
3442
|
+
new ze(t, o, s, a),
|
|
3425
3443
|
new w({ color: 7829367, roughness: 0.8 })
|
|
3426
3444
|
);
|
|
3427
3445
|
}
|
|
3428
3446
|
}
|
|
3429
|
-
class
|
|
3430
|
-
constructor(t = 0.5,
|
|
3447
|
+
class An extends x {
|
|
3448
|
+
constructor(t = 0.5, o = 0.8, s = 0.15) {
|
|
3431
3449
|
super(
|
|
3432
|
-
new Fe(t,
|
|
3450
|
+
new Fe(t, o, s),
|
|
3433
3451
|
new w({ color: 7829367, roughness: 0.8 })
|
|
3434
3452
|
);
|
|
3435
3453
|
}
|
|
3436
3454
|
}
|
|
3437
|
-
class
|
|
3455
|
+
class In extends x {
|
|
3438
3456
|
constructor({ height: t = 2.25 } = {}) {
|
|
3439
3457
|
super(
|
|
3440
|
-
new
|
|
3458
|
+
new Le({ height: t }),
|
|
3441
3459
|
new w({ color: 9141627, flatShading: !0 })
|
|
3442
3460
|
);
|
|
3443
3461
|
}
|
|
3444
3462
|
}
|
|
3445
|
-
class
|
|
3463
|
+
class En extends x {
|
|
3446
3464
|
constructor({
|
|
3447
3465
|
barHeight: t = 2,
|
|
3448
3466
|
//
|
|
3449
|
-
barRadius:
|
|
3467
|
+
barRadius: o = 0.05,
|
|
3450
3468
|
spikeHeight: s = 0.3,
|
|
3451
3469
|
spikeRadius: a = 0.075,
|
|
3452
|
-
spikeScaleZ:
|
|
3470
|
+
spikeScaleZ: n = 1,
|
|
3453
3471
|
radialSegments: r = 8
|
|
3454
3472
|
} = {}) {
|
|
3455
3473
|
super(
|
|
3456
3474
|
new It({
|
|
3457
3475
|
barHeight: t,
|
|
3458
|
-
barRadius:
|
|
3476
|
+
barRadius: o,
|
|
3459
3477
|
spikeHeight: s,
|
|
3460
3478
|
spikeRadius: a,
|
|
3461
|
-
spikeScaleZ:
|
|
3479
|
+
spikeScaleZ: n,
|
|
3462
3480
|
radialSegments: r
|
|
3463
3481
|
}),
|
|
3464
3482
|
new w({ color: 3355443, metalness: 0.8, roughness: 0.4 })
|
|
3465
3483
|
);
|
|
3466
3484
|
}
|
|
3467
3485
|
}
|
|
3468
|
-
class
|
|
3486
|
+
class bn extends x {
|
|
3469
3487
|
constructor({
|
|
3470
3488
|
count: t = 20,
|
|
3471
3489
|
//
|
|
3472
|
-
spacing:
|
|
3490
|
+
spacing: o = 0.4,
|
|
3473
3491
|
barHeight: s = 2,
|
|
3474
3492
|
barRadius: a = 0.05,
|
|
3475
|
-
spikeHeight:
|
|
3493
|
+
spikeHeight: n = 0.3,
|
|
3476
3494
|
spikeRadius: r = 0.075,
|
|
3477
3495
|
spikeScaleZ: i = 1,
|
|
3478
3496
|
railHeight: c = 0.1,
|
|
@@ -3481,12 +3499,12 @@ class Io extends x {
|
|
|
3481
3499
|
radialSegments: m = 8
|
|
3482
3500
|
} = {}) {
|
|
3483
3501
|
super(
|
|
3484
|
-
new
|
|
3502
|
+
new De({
|
|
3485
3503
|
count: t,
|
|
3486
|
-
spacing:
|
|
3504
|
+
spacing: o,
|
|
3487
3505
|
barHeight: s,
|
|
3488
3506
|
barRadius: a,
|
|
3489
|
-
spikeHeight:
|
|
3507
|
+
spikeHeight: n,
|
|
3490
3508
|
spikeRadius: r,
|
|
3491
3509
|
spikeScaleZ: i,
|
|
3492
3510
|
railHeight: c,
|
|
@@ -3498,25 +3516,25 @@ class Io extends x {
|
|
|
3498
3516
|
);
|
|
3499
3517
|
}
|
|
3500
3518
|
}
|
|
3501
|
-
class
|
|
3519
|
+
class Tn extends x {
|
|
3502
3520
|
constructor({
|
|
3503
3521
|
width: t = 5,
|
|
3504
3522
|
//
|
|
3505
|
-
height:
|
|
3523
|
+
height: o = 8,
|
|
3506
3524
|
depth: s = 1,
|
|
3507
3525
|
shelves: a = 4,
|
|
3508
|
-
frameThickness:
|
|
3526
|
+
frameThickness: n = 0.1,
|
|
3509
3527
|
open: r = !1
|
|
3510
3528
|
} = {}) {
|
|
3511
3529
|
super(
|
|
3512
|
-
new
|
|
3530
|
+
new ke({ width: t, height: o, depth: s, shelves: a, frameThickness: n, open: r }),
|
|
3513
3531
|
new w({ color: 9127187 })
|
|
3514
3532
|
);
|
|
3515
3533
|
}
|
|
3516
3534
|
}
|
|
3517
|
-
class
|
|
3535
|
+
class Sn extends x {
|
|
3518
3536
|
constructor() {
|
|
3519
|
-
super(new
|
|
3537
|
+
super(new Ve(), [
|
|
3520
3538
|
new w({ color: 9132587 }),
|
|
3521
3539
|
// Desk surface
|
|
3522
3540
|
new w({ color: 4929057 })
|
|
@@ -3524,23 +3542,23 @@ class bo extends x {
|
|
|
3524
3542
|
]);
|
|
3525
3543
|
}
|
|
3526
3544
|
}
|
|
3527
|
-
class
|
|
3545
|
+
class Pn extends x {
|
|
3528
3546
|
constructor({
|
|
3529
3547
|
radiusTop: t = 0.2,
|
|
3530
3548
|
//
|
|
3531
|
-
radiusBottom:
|
|
3549
|
+
radiusBottom: o = 0.2,
|
|
3532
3550
|
height: s = 1,
|
|
3533
3551
|
flameHeight: a = 0.25,
|
|
3534
|
-
flameRadius:
|
|
3552
|
+
flameRadius: n = 0.05,
|
|
3535
3553
|
segments: r = 16
|
|
3536
3554
|
} = {}) {
|
|
3537
3555
|
super(
|
|
3538
|
-
new
|
|
3556
|
+
new qe({
|
|
3539
3557
|
radiusTop: t,
|
|
3540
|
-
radiusBottom:
|
|
3558
|
+
radiusBottom: o,
|
|
3541
3559
|
height: s,
|
|
3542
3560
|
flameHeight: a,
|
|
3543
|
-
flameRadius:
|
|
3561
|
+
flameRadius: n,
|
|
3544
3562
|
segments: r
|
|
3545
3563
|
}),
|
|
3546
3564
|
[
|
|
@@ -3550,66 +3568,66 @@ class To extends x {
|
|
|
3550
3568
|
);
|
|
3551
3569
|
}
|
|
3552
3570
|
}
|
|
3553
|
-
class
|
|
3554
|
-
constructor({ height: t = 0.25, radius:
|
|
3571
|
+
class Gn extends x {
|
|
3572
|
+
constructor({ height: t = 0.25, radius: o = 0.05, segmentsU: s = 16, segmentsV: a = 16 } = {}) {
|
|
3555
3573
|
super(
|
|
3556
|
-
new Et({ segmentsU: s, segmentsV: a, height: t, radius:
|
|
3574
|
+
new Et({ segmentsU: s, segmentsV: a, height: t, radius: o }),
|
|
3557
3575
|
new w({ color: 16766720, emissive: 16753920, emissiveIntensity: 0.35 })
|
|
3558
3576
|
);
|
|
3559
3577
|
}
|
|
3560
3578
|
}
|
|
3561
|
-
class
|
|
3562
|
-
constructor(t = 1.3,
|
|
3579
|
+
class Cn extends k {
|
|
3580
|
+
constructor(t = 1.3, o = 0.5) {
|
|
3563
3581
|
super();
|
|
3564
|
-
const s = new
|
|
3565
|
-
|
|
3566
|
-
const r = new
|
|
3582
|
+
const s = new G(o, o, 0.2, 16), a = new w({ color: 9127187, flatShading: !0 }), n = new x(s, a);
|
|
3583
|
+
n.position.set(0, 0, 0), this.add(n);
|
|
3584
|
+
const r = new G(o * 0.9, o * 0.9, t), i = new w({ color: 16766720, flatShading: !0, transparent: !0, opacity: 0.6 }), c = new x(r, i);
|
|
3567
3585
|
c.position.set(0, t / 2 + 0.1, 0), this.add(c);
|
|
3568
|
-
const l = new
|
|
3586
|
+
const l = new J(o * 1.1, 0.5, 8), u = new w({ color: 9127187, flatShading: !0 }), m = new x(l, u);
|
|
3569
3587
|
m.position.set(0, t + 0.35, 0), this.add(m);
|
|
3570
|
-
const h = new Mt(
|
|
3588
|
+
const h = new Mt(o * 0.8, 0.05, 8, 16), f = new w({ color: 9127187, flatShading: !0 }), p = new x(h, f);
|
|
3571
3589
|
p.position.set(0, t + 0.85, 0), this.add(p);
|
|
3572
|
-
const d = new
|
|
3590
|
+
const d = new Bt(16755200, 1.5, 15);
|
|
3573
3591
|
d.position.set(0, t / 2 + 0.1, 0), d.castShadow = !0, this.add(d);
|
|
3574
3592
|
}
|
|
3575
3593
|
}
|
|
3576
|
-
class
|
|
3594
|
+
class Rn extends x {
|
|
3577
3595
|
constructor() {
|
|
3578
|
-
super(new
|
|
3596
|
+
super(new Ye(), [
|
|
3579
3597
|
new w({ color: 8421504, flatShading: !0 }),
|
|
3580
3598
|
new w({ color: 4950843, flatShading: !0, opacity: 0.8, transparent: !0 })
|
|
3581
3599
|
]);
|
|
3582
3600
|
}
|
|
3583
3601
|
}
|
|
3584
|
-
class
|
|
3585
|
-
constructor(t = 1,
|
|
3602
|
+
class Bn extends x {
|
|
3603
|
+
constructor(t = 1, o = 4, s = 4) {
|
|
3586
3604
|
super(
|
|
3587
|
-
new
|
|
3605
|
+
new Xe(t, o, s),
|
|
3588
3606
|
new w({ color: 8421504, flatShading: !0 })
|
|
3589
3607
|
);
|
|
3590
3608
|
}
|
|
3591
3609
|
}
|
|
3592
|
-
class
|
|
3610
|
+
class Nn extends x {
|
|
3593
3611
|
constructor() {
|
|
3594
|
-
super(new
|
|
3612
|
+
super(new Ze(), new w({ color: 8421504, flatShading: !0 }));
|
|
3595
3613
|
}
|
|
3596
3614
|
}
|
|
3597
|
-
class
|
|
3615
|
+
class On extends k {
|
|
3598
3616
|
constructor() {
|
|
3599
3617
|
super();
|
|
3600
|
-
const t = new
|
|
3618
|
+
const t = new G(0.3, 0.4, 0.1, 16), o = new w({
|
|
3601
3619
|
color: 3355443,
|
|
3602
3620
|
roughness: 0.6,
|
|
3603
3621
|
metalness: 0.3
|
|
3604
|
-
}), s = new x(t,
|
|
3622
|
+
}), s = new x(t, o);
|
|
3605
3623
|
s.position.y = 0.05;
|
|
3606
|
-
const a = new
|
|
3624
|
+
const a = new G(0.1, 0.1, 0.7, 16), n = new w({
|
|
3607
3625
|
color: 5592405,
|
|
3608
3626
|
roughness: 0.5,
|
|
3609
3627
|
metalness: 0.4
|
|
3610
|
-
}), r = new x(a,
|
|
3628
|
+
}), r = new x(a, n);
|
|
3611
3629
|
r.position.y = 0.4;
|
|
3612
|
-
const i = new
|
|
3630
|
+
const i = new J(0.075, 0.2, 16), c = new w({
|
|
3613
3631
|
color: 16733440,
|
|
3614
3632
|
emissive: 16733440,
|
|
3615
3633
|
emissiveIntensity: 0.6,
|
|
@@ -3619,10 +3637,10 @@ class Bo extends k {
|
|
|
3619
3637
|
l.position.y = 0.8, this.add(s, r, l);
|
|
3620
3638
|
}
|
|
3621
3639
|
}
|
|
3622
|
-
class
|
|
3640
|
+
class _n extends k {
|
|
3623
3641
|
constructor() {
|
|
3624
3642
|
super();
|
|
3625
|
-
const t = new b(3, 4, 0.1),
|
|
3643
|
+
const t = new b(3, 4, 0.1), o = new w({
|
|
3626
3644
|
color: 3026478,
|
|
3627
3645
|
roughness: 0.8,
|
|
3628
3646
|
metalness: 0.6
|
|
@@ -3630,18 +3648,18 @@ class No extends k {
|
|
|
3630
3648
|
color: 11184810,
|
|
3631
3649
|
roughness: 0.5,
|
|
3632
3650
|
metalness: 0.7
|
|
3633
|
-
}),
|
|
3651
|
+
}), n = new G(0.3, 0.3, 0.1, 16), r = new w({
|
|
3634
3652
|
color: 5592405,
|
|
3635
3653
|
roughness: 0.7,
|
|
3636
3654
|
metalness: 0.5
|
|
3637
|
-
}), i = new x(t,
|
|
3655
|
+
}), i = new x(t, o);
|
|
3638
3656
|
for (let y = -1; y <= 1; y++) {
|
|
3639
3657
|
const g = new x(s, a);
|
|
3640
3658
|
g.position.set(y, 1.5, 0.1), i.add(g);
|
|
3641
3659
|
}
|
|
3642
|
-
const c = new x(
|
|
3660
|
+
const c = new x(n, r);
|
|
3643
3661
|
c.rotation.x = Math.PI / 2, c.position.set(0, 0.5, 0.15), i.add(c);
|
|
3644
|
-
const l = new
|
|
3662
|
+
const l = new z(0.15, 8, 8), u = new w({
|
|
3645
3663
|
color: 16711680,
|
|
3646
3664
|
emissive: 16711680,
|
|
3647
3665
|
emissiveIntensity: 0.5
|
|
@@ -3656,18 +3674,18 @@ class No extends k {
|
|
|
3656
3674
|
d();
|
|
3657
3675
|
}
|
|
3658
3676
|
}
|
|
3659
|
-
class
|
|
3677
|
+
class Un extends x {
|
|
3660
3678
|
constructor({
|
|
3661
3679
|
flaskRadius: t = 1,
|
|
3662
3680
|
//
|
|
3663
|
-
neckRadius:
|
|
3681
|
+
neckRadius: o = 0.3,
|
|
3664
3682
|
height: s = 2.5,
|
|
3665
3683
|
neckHeight: a = 1,
|
|
3666
|
-
radialSegments:
|
|
3684
|
+
radialSegments: n = 16
|
|
3667
3685
|
} = {}) {
|
|
3668
3686
|
super(
|
|
3669
|
-
new
|
|
3670
|
-
new
|
|
3687
|
+
new Qe({ flaskRadius: t, neckRadius: o, height: s, neckHeight: a, radialSegments: n }),
|
|
3688
|
+
new rt({
|
|
3671
3689
|
color: 8965375,
|
|
3672
3690
|
transparent: !0,
|
|
3673
3691
|
opacity: 0.4,
|
|
@@ -3680,11 +3698,11 @@ class Oo extends x {
|
|
|
3680
3698
|
);
|
|
3681
3699
|
}
|
|
3682
3700
|
}
|
|
3683
|
-
class
|
|
3701
|
+
class zn extends x {
|
|
3684
3702
|
constructor() {
|
|
3685
3703
|
super(
|
|
3686
|
-
new
|
|
3687
|
-
new
|
|
3704
|
+
new Je(),
|
|
3705
|
+
new rt({
|
|
3688
3706
|
color: 8965375,
|
|
3689
3707
|
transparent: !0,
|
|
3690
3708
|
depthWrite: !1,
|
|
@@ -3698,14 +3716,14 @@ class _o extends x {
|
|
|
3698
3716
|
);
|
|
3699
3717
|
}
|
|
3700
3718
|
}
|
|
3701
|
-
class
|
|
3719
|
+
class Fn extends k {
|
|
3702
3720
|
constructor() {
|
|
3703
3721
|
super();
|
|
3704
|
-
const t = new b(2, 3, 0.1),
|
|
3722
|
+
const t = new b(2, 3, 0.1), o = new w({
|
|
3705
3723
|
color: 3355443,
|
|
3706
3724
|
roughness: 0.8,
|
|
3707
3725
|
metalness: 0.5
|
|
3708
|
-
}), s = new x(t,
|
|
3726
|
+
}), s = new x(t, o), a = new G(0.1, 0.1, 0.2, 8), n = new G(0.05, 0.05, 1, 8), r = new w({
|
|
3709
3727
|
color: 11184810,
|
|
3710
3728
|
roughness: 0.5,
|
|
3711
3729
|
metalness: 0.7
|
|
@@ -3713,24 +3731,24 @@ class Uo extends k {
|
|
|
3713
3731
|
for (let i = -0.5; i <= 0.5; i += 0.5) {
|
|
3714
3732
|
const c = new x(a, r);
|
|
3715
3733
|
c.position.set(i, 1, 0.1);
|
|
3716
|
-
const l = new x(
|
|
3734
|
+
const l = new x(n, r);
|
|
3717
3735
|
l.position.y = 0.5, c.add(l), this.add(c);
|
|
3718
3736
|
}
|
|
3719
3737
|
this.add(s);
|
|
3720
3738
|
}
|
|
3721
3739
|
}
|
|
3722
|
-
class
|
|
3740
|
+
class Ln extends k {
|
|
3723
3741
|
constructor() {
|
|
3724
3742
|
super();
|
|
3725
|
-
const t = new b(1, 0.2, 0.5),
|
|
3743
|
+
const t = new b(1, 0.2, 0.5), o = new w({
|
|
3726
3744
|
color: 4473924,
|
|
3727
3745
|
roughness: 0.6,
|
|
3728
3746
|
metalness: 0.3
|
|
3729
|
-
}), s = new x(t,
|
|
3747
|
+
}), s = new x(t, o);
|
|
3730
3748
|
s.position.y = 0.1;
|
|
3731
|
-
const a = new b(0.2, 1, 0.2),
|
|
3732
|
-
|
|
3733
|
-
const r = new
|
|
3749
|
+
const a = new b(0.2, 1, 0.2), n = new x(a, o);
|
|
3750
|
+
n.position.set(0, 0.6, -0.2);
|
|
3751
|
+
const r = new G(0.1, 0.1, 0.4, 8), i = new w({
|
|
3734
3752
|
color: 3355443,
|
|
3735
3753
|
roughness: 0.5,
|
|
3736
3754
|
metalness: 0.6
|
|
@@ -3741,14 +3759,14 @@ class Fo extends k {
|
|
|
3741
3759
|
roughness: 0.8,
|
|
3742
3760
|
metalness: 0.2
|
|
3743
3761
|
}), m = new x(l, u);
|
|
3744
|
-
m.position.set(0, 0.6, 0), this.add(s,
|
|
3762
|
+
m.position.set(0, 0.6, 0), this.add(s, n, c, m);
|
|
3745
3763
|
}
|
|
3746
3764
|
}
|
|
3747
|
-
class
|
|
3765
|
+
class Dn extends k {
|
|
3748
3766
|
constructor() {
|
|
3749
3767
|
super();
|
|
3750
|
-
const t = new
|
|
3751
|
-
|
|
3768
|
+
const t = new We(), o = new G(0.2, 0.3, 1.5, 8);
|
|
3769
|
+
o.translate(0, 0.75, 0);
|
|
3752
3770
|
const s = new w({
|
|
3753
3771
|
color: 6045747,
|
|
3754
3772
|
// Dark earthy tone
|
|
@@ -3761,66 +3779,66 @@ class zo extends k {
|
|
|
3761
3779
|
// Slightly lighter earthy color
|
|
3762
3780
|
roughness: 0.8,
|
|
3763
3781
|
metalness: 0.1
|
|
3764
|
-
}),
|
|
3765
|
-
|
|
3766
|
-
const r = new x(
|
|
3767
|
-
r.castShadow = !0, r.position.set(0.3, 1.3, 0), r.rotation.z = Math.PI / 4, this.add(
|
|
3782
|
+
}), n = new x(t, s);
|
|
3783
|
+
n.castShadow = !0;
|
|
3784
|
+
const r = new x(o, a);
|
|
3785
|
+
r.castShadow = !0, r.position.set(0.3, 1.3, 0), r.rotation.z = Math.PI / 4, this.add(n, r);
|
|
3768
3786
|
}
|
|
3769
3787
|
}
|
|
3770
|
-
class
|
|
3771
|
-
constructor({ width:
|
|
3788
|
+
class kn extends x {
|
|
3789
|
+
constructor({ width: o = 3, height: s = 4, depth: a = 0.1 } = {}) {
|
|
3772
3790
|
super();
|
|
3773
3791
|
I(this, "geometry");
|
|
3774
3792
|
I(this, "material");
|
|
3775
|
-
this.geometry = new b(
|
|
3793
|
+
this.geometry = new b(o, s, a), this.material = new w({
|
|
3776
3794
|
color: 3026478,
|
|
3777
3795
|
roughness: 0.8,
|
|
3778
3796
|
metalness: 0.6
|
|
3779
3797
|
});
|
|
3780
3798
|
}
|
|
3781
3799
|
}
|
|
3782
|
-
class
|
|
3800
|
+
class Vn extends x {
|
|
3783
3801
|
constructor({
|
|
3784
|
-
radius:
|
|
3802
|
+
radius: o = 0.15,
|
|
3785
3803
|
//
|
|
3786
3804
|
color: s = 16762823,
|
|
3787
3805
|
emissive: a = 16711680,
|
|
3788
|
-
emissiveIntensity:
|
|
3806
|
+
emissiveIntensity: n = 0.5
|
|
3789
3807
|
} = {}) {
|
|
3790
3808
|
super();
|
|
3791
3809
|
I(this, "geometry");
|
|
3792
3810
|
I(this, "material");
|
|
3793
|
-
this.geometry = new
|
|
3811
|
+
this.geometry = new z(o, 8, 8), this.material = new w({
|
|
3794
3812
|
color: s,
|
|
3795
3813
|
emissive: a,
|
|
3796
|
-
emissiveIntensity:
|
|
3814
|
+
emissiveIntensity: n
|
|
3797
3815
|
});
|
|
3798
3816
|
}
|
|
3799
3817
|
}
|
|
3800
|
-
class
|
|
3818
|
+
class qn extends k {
|
|
3801
3819
|
constructor() {
|
|
3802
3820
|
super();
|
|
3803
|
-
const t = 100,
|
|
3821
|
+
const t = 100, o = 0.05, s = new Nt(
|
|
3804
3822
|
Array.from({ length: t }, (l, u) => {
|
|
3805
3823
|
const m = u * 0.2;
|
|
3806
3824
|
return new M(
|
|
3807
3825
|
Math.cos(m) * 0.4,
|
|
3808
|
-
u *
|
|
3826
|
+
u * o,
|
|
3809
3827
|
// Gradual height increase
|
|
3810
3828
|
Math.sin(m) * 0.4
|
|
3811
3829
|
);
|
|
3812
3830
|
})
|
|
3813
|
-
), a = new
|
|
3831
|
+
), a = new Ot(s, 200, 0.1, 8, !1), n = new w({
|
|
3814
3832
|
color: 8965375,
|
|
3815
3833
|
transparent: !0,
|
|
3816
3834
|
opacity: 0.3,
|
|
3817
3835
|
roughness: 0.1,
|
|
3818
3836
|
metalness: 0.2,
|
|
3819
3837
|
emissive: 8965375
|
|
3820
|
-
}), r = new x(a,
|
|
3838
|
+
}), r = new x(a, n);
|
|
3821
3839
|
this.add(r);
|
|
3822
3840
|
function i() {
|
|
3823
|
-
|
|
3841
|
+
n.emissiveIntensity = 0.2 + Math.sin(Date.now() * 5e-3) * 0.1;
|
|
3824
3842
|
}
|
|
3825
3843
|
function c() {
|
|
3826
3844
|
requestAnimationFrame(c), i();
|
|
@@ -3828,17 +3846,17 @@ class ko extends k {
|
|
|
3828
3846
|
c();
|
|
3829
3847
|
}
|
|
3830
3848
|
}
|
|
3831
|
-
class
|
|
3849
|
+
class Yn extends x {
|
|
3832
3850
|
constructor({
|
|
3833
3851
|
radius: t = 0.3,
|
|
3834
3852
|
//
|
|
3835
|
-
height:
|
|
3853
|
+
height: o = 0.4,
|
|
3836
3854
|
count: s = 3,
|
|
3837
3855
|
thickness: a = 0.03,
|
|
3838
|
-
radialSegments:
|
|
3856
|
+
radialSegments: n = 16
|
|
3839
3857
|
} = {}) {
|
|
3840
3858
|
super(
|
|
3841
|
-
new
|
|
3859
|
+
new to({ radius: t, height: o, count: s, thickness: a, radialSegments: n }),
|
|
3842
3860
|
new w({
|
|
3843
3861
|
color: 8947848,
|
|
3844
3862
|
roughness: 0.7,
|
|
@@ -3847,9 +3865,9 @@ class Vo extends x {
|
|
|
3847
3865
|
);
|
|
3848
3866
|
}
|
|
3849
3867
|
}
|
|
3850
|
-
class
|
|
3868
|
+
class Hn extends x {
|
|
3851
3869
|
constructor() {
|
|
3852
|
-
super(new
|
|
3870
|
+
super(new eo(), [
|
|
3853
3871
|
new w({
|
|
3854
3872
|
color: 3355443,
|
|
3855
3873
|
roughness: 0.6,
|
|
@@ -3864,11 +3882,11 @@ class qo extends x {
|
|
|
3864
3882
|
]);
|
|
3865
3883
|
}
|
|
3866
3884
|
}
|
|
3867
|
-
class
|
|
3868
|
-
constructor(t = 0.2,
|
|
3885
|
+
class Xn extends x {
|
|
3886
|
+
constructor(t = 0.2, o = 0.2, s = 3, a = 32) {
|
|
3869
3887
|
super(
|
|
3870
|
-
new
|
|
3871
|
-
new
|
|
3888
|
+
new ut(t, o, s, a),
|
|
3889
|
+
new rt({
|
|
3872
3890
|
color: 8965375,
|
|
3873
3891
|
transparent: !0,
|
|
3874
3892
|
opacity: 0.4,
|
|
@@ -3882,17 +3900,17 @@ class Yo extends x {
|
|
|
3882
3900
|
);
|
|
3883
3901
|
}
|
|
3884
3902
|
}
|
|
3885
|
-
class
|
|
3886
|
-
constructor(t = 3,
|
|
3903
|
+
class Zn extends k {
|
|
3904
|
+
constructor(t = 3, o = [65450, 16711850, 11141375]) {
|
|
3887
3905
|
super();
|
|
3888
3906
|
const s = new b(3, 0.2, 1), a = new w({
|
|
3889
3907
|
color: 9127187,
|
|
3890
3908
|
// Wooden color or change to metallic tone
|
|
3891
3909
|
roughness: 0.7,
|
|
3892
3910
|
metalness: 0.3
|
|
3893
|
-
}),
|
|
3894
|
-
|
|
3895
|
-
const r = new
|
|
3911
|
+
}), n = new x(s, a);
|
|
3912
|
+
n.position.y = 0.5, n.castShadow = !0;
|
|
3913
|
+
const r = new ut(0.1, 0.1, 1, 16), i = new w({
|
|
3896
3914
|
color: 11184810,
|
|
3897
3915
|
transparent: !0,
|
|
3898
3916
|
opacity: 0.4,
|
|
@@ -3904,34 +3922,34 @@ class Ho extends k {
|
|
|
3904
3922
|
for (let c = 0; c < t; c++) {
|
|
3905
3923
|
const l = new x(r, i), u = (c - (t - 1) / 2) * 0.8;
|
|
3906
3924
|
l.position.set(u, 1, 0), l.castShadow = !0;
|
|
3907
|
-
const m = new
|
|
3925
|
+
const m = new ut(0.099, 0.099, 0.5, 16, !1), h = o[c % o.length], f = new w({
|
|
3908
3926
|
color: h,
|
|
3909
3927
|
emissive: h,
|
|
3910
3928
|
emissiveIntensity: 0.5,
|
|
3911
3929
|
transparent: !0,
|
|
3912
3930
|
opacity: 0.6
|
|
3913
3931
|
}), p = new x(m, f);
|
|
3914
|
-
p.position.set(0, -0.25, 0), l.add(p),
|
|
3932
|
+
p.position.set(0, -0.25, 0), l.add(p), n.add(l);
|
|
3915
3933
|
}
|
|
3916
|
-
this.add(
|
|
3934
|
+
this.add(n);
|
|
3917
3935
|
}
|
|
3918
3936
|
}
|
|
3919
|
-
class
|
|
3920
|
-
constructor(t = 5,
|
|
3937
|
+
class ao extends Z {
|
|
3938
|
+
constructor(t = 5, o = 0.5, s = 1) {
|
|
3921
3939
|
super();
|
|
3922
|
-
const a = Math.PI * 2 / t,
|
|
3940
|
+
const a = Math.PI * 2 / t, n = a / 2, r = a / 4;
|
|
3923
3941
|
this.moveTo(Math.cos(0) * s, -Math.sin(0) * s);
|
|
3924
3942
|
for (let i = 1; i <= t; ++i) {
|
|
3925
|
-
let c = Math.cos(a * i - r * 3) * (
|
|
3926
|
-
this.quadraticCurveTo(c, l, u, m), c = Math.cos(a * i - r) * (
|
|
3943
|
+
let c = Math.cos(a * i - r * 3) * (o / Math.cos(r)), l = -Math.sin(a * i - r * 3) * (o / Math.cos(r)), u = Math.cos(a * i - n) * o, m = -Math.sin(a * i - n) * o;
|
|
3944
|
+
this.quadraticCurveTo(c, l, u, m), c = Math.cos(a * i - r) * (o / Math.cos(r)), l = -Math.sin(a * i - r) * (o / Math.cos(r)), u = Math.cos(a * i) * s, m = -Math.sin(a * i) * s, this.quadraticCurveTo(c, l, u, m);
|
|
3927
3945
|
}
|
|
3928
3946
|
this.closePath();
|
|
3929
3947
|
}
|
|
3930
3948
|
}
|
|
3931
|
-
class
|
|
3932
|
-
constructor(t = 5,
|
|
3949
|
+
class jn extends x {
|
|
3950
|
+
constructor(t = 5, o = 0.5, s = 1, a = 0.25) {
|
|
3933
3951
|
super();
|
|
3934
|
-
const
|
|
3952
|
+
const n = new ao(t, o, s), r = new j(n, {
|
|
3935
3953
|
depth: a,
|
|
3936
3954
|
bevelEnabled: a > 0,
|
|
3937
3955
|
bevelThickness: 0,
|
|
@@ -3947,26 +3965,26 @@ class Xo extends x {
|
|
|
3947
3965
|
r.center(), this.geometry = r, this.material = i;
|
|
3948
3966
|
}
|
|
3949
3967
|
}
|
|
3950
|
-
class
|
|
3951
|
-
constructor(t = 5,
|
|
3968
|
+
class io extends Z {
|
|
3969
|
+
constructor(t = 5, o = 0.5, s = 1, a = 5, n = 0.25) {
|
|
3952
3970
|
super();
|
|
3953
3971
|
const r = Math.PI * 2 / t, i = r / 4;
|
|
3954
3972
|
this.moveTo(Math.cos(0) * s, -Math.sin(0) * s);
|
|
3955
3973
|
for (let c = 1; c <= t; ++c)
|
|
3956
|
-
this.lineTo(Math.cos(r * c - i * 3) *
|
|
3957
|
-
if (this.closePath(),
|
|
3958
|
-
const c = new
|
|
3959
|
-
c.moveTo(Math.cos(0) *
|
|
3974
|
+
this.lineTo(Math.cos(r * c - i * 3) * o, -Math.sin(r * c - i * 3) * o), this.lineTo(Math.cos(r * c - i * 2) * o, -Math.sin(r * c - i * 2) * o), this.lineTo(Math.cos(r * c - i) * s, -Math.sin(r * c - i) * s), this.lineTo(Math.cos(r * c) * s, -Math.sin(r * c) * s);
|
|
3975
|
+
if (this.closePath(), n > 0 && a > 2) {
|
|
3976
|
+
const c = new _t(), l = Math.PI * 2 / a;
|
|
3977
|
+
c.moveTo(Math.cos(0) * n, -Math.sin(0) * n);
|
|
3960
3978
|
for (let u = 1; u < a; ++u)
|
|
3961
|
-
c.lineTo(Math.cos(l * u) *
|
|
3962
|
-
c.lineTo(Math.cos(0) *
|
|
3979
|
+
c.lineTo(Math.cos(l * u) * n, -Math.sin(l * u) * n);
|
|
3980
|
+
c.lineTo(Math.cos(0) * n, -Math.sin(0) * n), this.holes.push(c);
|
|
3963
3981
|
}
|
|
3964
3982
|
}
|
|
3965
3983
|
}
|
|
3966
|
-
class
|
|
3967
|
-
constructor(t = 5,
|
|
3984
|
+
class Qn extends x {
|
|
3985
|
+
constructor(t = 5, o = 0.5, s = 1, a = 5, n = 0.25, r = 0.25) {
|
|
3968
3986
|
super();
|
|
3969
|
-
const i = new
|
|
3987
|
+
const i = new io(t, o, s, a, n), c = new j(i, {
|
|
3970
3988
|
depth: r,
|
|
3971
3989
|
bevelEnabled: r > 0,
|
|
3972
3990
|
bevelThickness: 0,
|
|
@@ -3979,23 +3997,23 @@ class Zo extends x {
|
|
|
3979
3997
|
c.center(), this.geometry = c, this.material = l;
|
|
3980
3998
|
}
|
|
3981
3999
|
}
|
|
3982
|
-
class
|
|
3983
|
-
constructor(t = 1,
|
|
4000
|
+
class co extends Z {
|
|
4001
|
+
constructor(t = 1, o = 2.1, s = 1.4, a = 1.6) {
|
|
3984
4002
|
super(), this.moveTo(0, s * t / 3), this.bezierCurveTo(
|
|
3985
|
-
-
|
|
4003
|
+
-o * 0.375 * t,
|
|
3986
4004
|
s * t,
|
|
3987
4005
|
// Control point 1 for the left lobe
|
|
3988
|
-
-
|
|
4006
|
+
-o * t,
|
|
3989
4007
|
s * t / 3,
|
|
3990
4008
|
// Control point 2 for the left side of the heart
|
|
3991
4009
|
0,
|
|
3992
4010
|
-a * t
|
|
3993
4011
|
// Bottom tip of the heart, controlled by `tipDepth`
|
|
3994
4012
|
), this.bezierCurveTo(
|
|
3995
|
-
|
|
4013
|
+
o * t,
|
|
3996
4014
|
s * t / 3,
|
|
3997
4015
|
// Control point 3 for the right side of the heart
|
|
3998
|
-
|
|
4016
|
+
o * 0.375 * t,
|
|
3999
4017
|
s * t,
|
|
4000
4018
|
// Control point 4 for the right lobe
|
|
4001
4019
|
0,
|
|
@@ -4004,12 +4022,12 @@ class cn extends $ {
|
|
|
4004
4022
|
);
|
|
4005
4023
|
}
|
|
4006
4024
|
}
|
|
4007
|
-
class
|
|
4008
|
-
constructor(t = 1,
|
|
4025
|
+
class Kn extends x {
|
|
4026
|
+
constructor(t = 1, o = 1, s = 1, a = 10, n = 0.25) {
|
|
4009
4027
|
super();
|
|
4010
|
-
const r = new
|
|
4011
|
-
depth:
|
|
4012
|
-
bevelEnabled:
|
|
4028
|
+
const r = new co(t, o, s, a), i = new j(r, {
|
|
4029
|
+
depth: n,
|
|
4030
|
+
bevelEnabled: n > 0,
|
|
4013
4031
|
bevelThickness: 0,
|
|
4014
4032
|
bevelSize: 0
|
|
4015
4033
|
}), c = new w({
|
|
@@ -4023,20 +4041,20 @@ class jo extends x {
|
|
|
4023
4041
|
i.center(), this.geometry = i, this.material = c;
|
|
4024
4042
|
}
|
|
4025
4043
|
}
|
|
4026
|
-
class
|
|
4027
|
-
constructor(t = 5,
|
|
4044
|
+
class lo extends Z {
|
|
4045
|
+
constructor(t = 5, o = 0.5, s = 1) {
|
|
4028
4046
|
super();
|
|
4029
|
-
const a = Math.PI * 2 / t,
|
|
4047
|
+
const a = Math.PI * 2 / t, n = a / 2;
|
|
4030
4048
|
this.moveTo(Math.cos(0) * s, Math.sin(0) * s);
|
|
4031
4049
|
for (let r = 1; r <= t; ++r)
|
|
4032
|
-
this.lineTo(Math.cos(a * r -
|
|
4050
|
+
this.lineTo(Math.cos(a * r - n) * o, Math.sin(a * r - n) * o), this.lineTo(Math.cos(a * r) * s, Math.sin(a * r) * s);
|
|
4033
4051
|
this.closePath();
|
|
4034
4052
|
}
|
|
4035
4053
|
}
|
|
4036
|
-
class
|
|
4037
|
-
constructor(t = 5,
|
|
4054
|
+
class $n extends x {
|
|
4055
|
+
constructor(t = 5, o = 0.5, s = 1, a = 0.25) {
|
|
4038
4056
|
super();
|
|
4039
|
-
const
|
|
4057
|
+
const n = new lo(t, o, s), r = new j(n, {
|
|
4040
4058
|
depth: a,
|
|
4041
4059
|
bevelEnabled: a > 0,
|
|
4042
4060
|
bevelThickness: 0,
|
|
@@ -4052,18 +4070,18 @@ class Qo extends x {
|
|
|
4052
4070
|
r.center(), this.geometry = r, this.material = i;
|
|
4053
4071
|
}
|
|
4054
4072
|
}
|
|
4055
|
-
class
|
|
4073
|
+
class Jn extends x {
|
|
4056
4074
|
constructor() {
|
|
4057
|
-
super(new
|
|
4075
|
+
super(new je(), new w({ color: 16777215 }));
|
|
4058
4076
|
}
|
|
4059
4077
|
}
|
|
4060
|
-
class
|
|
4078
|
+
class Wn extends x {
|
|
4061
4079
|
constructor({
|
|
4062
4080
|
trunkRadiusTop: t = 0.25,
|
|
4063
|
-
trunkRadiusBottom:
|
|
4081
|
+
trunkRadiusBottom: o = 0.4,
|
|
4064
4082
|
trunkHeight: s = 2.5,
|
|
4065
4083
|
trunkSegments: a = 14,
|
|
4066
|
-
trunkColor:
|
|
4084
|
+
trunkColor: n = 9127187,
|
|
4067
4085
|
leafSize: r = 0.8,
|
|
4068
4086
|
leafCount: i = 6,
|
|
4069
4087
|
leafDetail: c = 0,
|
|
@@ -4071,9 +4089,9 @@ class $o extends x {
|
|
|
4071
4089
|
leafColor: u = 2263842
|
|
4072
4090
|
} = {}) {
|
|
4073
4091
|
super(
|
|
4074
|
-
new
|
|
4092
|
+
new so({
|
|
4075
4093
|
trunkRadiusTop: t,
|
|
4076
|
-
trunkRadiusBottom:
|
|
4094
|
+
trunkRadiusBottom: o,
|
|
4077
4095
|
trunkHeight: s,
|
|
4078
4096
|
trunkSegments: a,
|
|
4079
4097
|
leafSize: r,
|
|
@@ -4083,7 +4101,7 @@ class $o extends x {
|
|
|
4083
4101
|
}),
|
|
4084
4102
|
[
|
|
4085
4103
|
new w({
|
|
4086
|
-
color:
|
|
4104
|
+
color: n,
|
|
4087
4105
|
roughness: 0.9,
|
|
4088
4106
|
metalness: 0,
|
|
4089
4107
|
flatShading: !0
|
|
@@ -4098,55 +4116,55 @@ class $o extends x {
|
|
|
4098
4116
|
);
|
|
4099
4117
|
}
|
|
4100
4118
|
}
|
|
4101
|
-
class
|
|
4119
|
+
class ts extends x {
|
|
4102
4120
|
constructor({
|
|
4103
4121
|
radius: t = 3,
|
|
4104
4122
|
//
|
|
4105
|
-
height:
|
|
4123
|
+
height: o = 0.6,
|
|
4106
4124
|
widthSegments: s = 64,
|
|
4107
4125
|
heightSegments: a = 16,
|
|
4108
|
-
phiStart:
|
|
4126
|
+
phiStart: n = 0,
|
|
4109
4127
|
phiLength: r = Math.PI * 2
|
|
4110
4128
|
} = {}) {
|
|
4111
4129
|
super(
|
|
4112
|
-
new
|
|
4130
|
+
new oo({
|
|
4113
4131
|
radius: t,
|
|
4114
|
-
height:
|
|
4132
|
+
height: o,
|
|
4115
4133
|
widthSegments: s,
|
|
4116
4134
|
heightSegments: a,
|
|
4117
|
-
phiStart:
|
|
4135
|
+
phiStart: n,
|
|
4118
4136
|
phiLength: r
|
|
4119
4137
|
}),
|
|
4120
4138
|
new w({ color: 65280, flatShading: !0 })
|
|
4121
4139
|
);
|
|
4122
4140
|
}
|
|
4123
4141
|
}
|
|
4124
|
-
class
|
|
4142
|
+
class es extends x {
|
|
4125
4143
|
constructor({
|
|
4126
4144
|
radius: t = bt(5, Math.PI / 10),
|
|
4127
4145
|
//
|
|
4128
|
-
widthSegments:
|
|
4146
|
+
widthSegments: o = 64,
|
|
4129
4147
|
heightSegments: s = 32,
|
|
4130
4148
|
phiStart: a = 0,
|
|
4131
|
-
phiLength:
|
|
4149
|
+
phiLength: n = Math.PI * 2,
|
|
4132
4150
|
thetaLength: r = Math.PI / 10
|
|
4133
4151
|
} = {}) {
|
|
4134
4152
|
super(
|
|
4135
|
-
new
|
|
4153
|
+
new no({
|
|
4136
4154
|
radius: t,
|
|
4137
|
-
widthSegments:
|
|
4155
|
+
widthSegments: o,
|
|
4138
4156
|
heightSegments: s,
|
|
4139
4157
|
phiStart: a,
|
|
4140
|
-
phiLength:
|
|
4158
|
+
phiLength: n,
|
|
4141
4159
|
thetaLength: r
|
|
4142
4160
|
}),
|
|
4143
4161
|
new w({ color: 65280, flatShading: !0 })
|
|
4144
4162
|
);
|
|
4145
4163
|
}
|
|
4146
4164
|
}
|
|
4147
|
-
function
|
|
4165
|
+
function os(e, { time: t = 0, waveFrequency: o = 0.2, waveAmplitude: s = 0.5 } = {}) {
|
|
4148
4166
|
e.onBeforeCompile = (a) => {
|
|
4149
|
-
a.uniforms.time = { value: t }, a.uniforms.waveFrequency = { value:
|
|
4167
|
+
a.uniforms.time = { value: t }, a.uniforms.waveFrequency = { value: o }, a.uniforms.waveAmplitude = { value: s }, a.vertexShader = `
|
|
4150
4168
|
uniform float time;
|
|
4151
4169
|
uniform float waveFrequency;
|
|
4152
4170
|
uniform float waveAmplitude;
|
|
@@ -4168,12 +4186,12 @@ function ts(e, { time: t = 0, waveFrequency: n = 0.2, waveAmplitude: s = 0.5 } =
|
|
|
4168
4186
|
), e.userData.shader = a;
|
|
4169
4187
|
};
|
|
4170
4188
|
}
|
|
4171
|
-
function
|
|
4189
|
+
function ns(e, t) {
|
|
4172
4190
|
e.userData.shader && (e.userData.shader.uniforms.time.value += t);
|
|
4173
4191
|
}
|
|
4174
|
-
function
|
|
4175
|
-
e.onBeforeCompile = (
|
|
4176
|
-
|
|
4192
|
+
function ss(e, { time: t = 0, intensity: o = 1, axis: s = ft.XYZ, scale: a = 10 } = {}) {
|
|
4193
|
+
e.onBeforeCompile = (n) => {
|
|
4194
|
+
n.uniforms.time = { value: t }, n.uniforms.axis = { value: s }, n.uniforms.intensity = { value: o }, n.uniforms.scale = { value: a }, n.vertexShader = `
|
|
4177
4195
|
uniform float time;
|
|
4178
4196
|
uniform vec3 axis;
|
|
4179
4197
|
uniform float intensity;
|
|
@@ -4204,7 +4222,7 @@ function ns(e, { time: t = 0, intensity: n = 1, axis: s = ft.XYZ, scale: a = 10
|
|
|
4204
4222
|
|
|
4205
4223
|
return o4.y * d.y + o4.x * (1.0 - d.y);
|
|
4206
4224
|
}
|
|
4207
|
-
` +
|
|
4225
|
+
` + n.vertexShader, n.vertexShader = n.vertexShader.replace(
|
|
4208
4226
|
"#include <begin_vertex>",
|
|
4209
4227
|
`
|
|
4210
4228
|
vec3 transformed = vec3(position);
|
|
@@ -4212,13 +4230,13 @@ function ns(e, { time: t = 0, intensity: n = 1, axis: s = ft.XYZ, scale: a = 10
|
|
|
4212
4230
|
transformed += normalize(axis) * n * intensity;
|
|
4213
4231
|
vec3 transformedNormal = normal;
|
|
4214
4232
|
`
|
|
4215
|
-
), e.userData.shader =
|
|
4233
|
+
), e.userData.shader = n;
|
|
4216
4234
|
};
|
|
4217
4235
|
}
|
|
4218
|
-
function
|
|
4236
|
+
function rs(e, t) {
|
|
4219
4237
|
e.userData.shader && (e.userData.shader.uniforms.time.value += t);
|
|
4220
4238
|
}
|
|
4221
|
-
const
|
|
4239
|
+
const it = {
|
|
4222
4240
|
uniforms: {
|
|
4223
4241
|
turbidity: { value: 10 },
|
|
4224
4242
|
rayleigh: { value: 2 },
|
|
@@ -4380,10 +4398,10 @@ const at = {
|
|
|
4380
4398
|
#include <colorspace_fragment>
|
|
4381
4399
|
}
|
|
4382
4400
|
`
|
|
4383
|
-
},
|
|
4401
|
+
}, ct = {
|
|
4384
4402
|
uniforms: {
|
|
4385
|
-
topColor: { value: new
|
|
4386
|
-
bottomColor: { value: new
|
|
4403
|
+
topColor: { value: new ot(0.5, 0.8, 1) },
|
|
4404
|
+
bottomColor: { value: new ot(1, 1, 1) }
|
|
4387
4405
|
},
|
|
4388
4406
|
vertexShader: `
|
|
4389
4407
|
varying vec3 vPosition;
|
|
@@ -4401,7 +4419,7 @@ const at = {
|
|
|
4401
4419
|
gl_FragColor = vec4(mix(bottomColor, topColor, y), 1.0);
|
|
4402
4420
|
}
|
|
4403
4421
|
`
|
|
4404
|
-
},
|
|
4422
|
+
}, as = {
|
|
4405
4423
|
uniforms: {
|
|
4406
4424
|
tDiffuse: { value: null },
|
|
4407
4425
|
opacity: { value: 1 }
|
|
@@ -4422,10 +4440,10 @@ const at = {
|
|
|
4422
4440
|
gl_FragColor = opacity * texel;
|
|
4423
4441
|
}
|
|
4424
4442
|
`
|
|
4425
|
-
},
|
|
4443
|
+
}, lt = {
|
|
4426
4444
|
uniforms: {
|
|
4427
|
-
topColor: { value: new
|
|
4428
|
-
bottomColor: { value: new
|
|
4445
|
+
topColor: { value: new ot(51) },
|
|
4446
|
+
bottomColor: { value: new ot(17) },
|
|
4429
4447
|
offset: { value: 33 },
|
|
4430
4448
|
exponent: { value: 0.6 }
|
|
4431
4449
|
},
|
|
@@ -4449,19 +4467,19 @@ const at = {
|
|
|
4449
4467
|
}
|
|
4450
4468
|
`
|
|
4451
4469
|
};
|
|
4452
|
-
class
|
|
4470
|
+
class is extends x {
|
|
4453
4471
|
constructor() {
|
|
4454
4472
|
super();
|
|
4455
4473
|
I(this, "geometry");
|
|
4456
4474
|
I(this, "material");
|
|
4457
|
-
this.geometry = new b(1, 1, 1), this.material = new
|
|
4458
|
-
uniforms:
|
|
4459
|
-
vertexShader:
|
|
4460
|
-
fragmentShader:
|
|
4475
|
+
this.geometry = new b(1, 1, 1), this.material = new st({
|
|
4476
|
+
uniforms: it.uniforms,
|
|
4477
|
+
vertexShader: it.vertexShader,
|
|
4478
|
+
fragmentShader: it.fragmentShader,
|
|
4461
4479
|
depthWrite: !1,
|
|
4462
4480
|
side: mt
|
|
4463
4481
|
}), this.scale.setScalar(45e4);
|
|
4464
|
-
const
|
|
4482
|
+
const o = L.degToRad(89), s = L.degToRad(180), a = new M().setFromSphericalCoords(1, o, s);
|
|
4465
4483
|
this.material.uniforms.sunPosition.value = a;
|
|
4466
4484
|
}
|
|
4467
4485
|
/**
|
|
@@ -4477,174 +4495,178 @@ class rs extends x {
|
|
|
4477
4495
|
* - Ranges from 0 to 2π radians (or 0 to 360 degrees).
|
|
4478
4496
|
* - This is the horizontal angle in the xy-plane.
|
|
4479
4497
|
*/
|
|
4480
|
-
sunPosition(
|
|
4498
|
+
sunPosition(o, s) {
|
|
4481
4499
|
const a = new M();
|
|
4482
|
-
a.setFromSphericalCoords(1,
|
|
4500
|
+
a.setFromSphericalCoords(1, o, s), this.material.uniforms.sunPosition.value = a;
|
|
4483
4501
|
}
|
|
4484
4502
|
}
|
|
4485
|
-
class
|
|
4486
|
-
constructor(
|
|
4503
|
+
class cs extends x {
|
|
4504
|
+
constructor(o = 1e3) {
|
|
4487
4505
|
super();
|
|
4488
4506
|
I(this, "geometry");
|
|
4489
4507
|
I(this, "material");
|
|
4490
|
-
this.geometry = new b(
|
|
4491
|
-
uniforms:
|
|
4492
|
-
vertexShader:
|
|
4493
|
-
fragmentShader:
|
|
4508
|
+
this.geometry = new b(o, o, o), this.material = new st({
|
|
4509
|
+
uniforms: ct.uniforms,
|
|
4510
|
+
vertexShader: ct.vertexShader,
|
|
4511
|
+
fragmentShader: ct.fragmentShader,
|
|
4494
4512
|
side: mt
|
|
4495
4513
|
});
|
|
4496
4514
|
}
|
|
4497
4515
|
}
|
|
4498
|
-
class
|
|
4499
|
-
constructor(
|
|
4516
|
+
class ls extends x {
|
|
4517
|
+
constructor(o = 1e3) {
|
|
4500
4518
|
super();
|
|
4501
4519
|
I(this, "geometry");
|
|
4502
4520
|
I(this, "material");
|
|
4503
|
-
this.geometry = new
|
|
4504
|
-
vertexShader:
|
|
4505
|
-
fragmentShader:
|
|
4506
|
-
uniforms:
|
|
4521
|
+
this.geometry = new z(o, 32, 15), this.material = new st({
|
|
4522
|
+
vertexShader: lt.vertexShader,
|
|
4523
|
+
fragmentShader: lt.fragmentShader,
|
|
4524
|
+
uniforms: lt.uniforms,
|
|
4507
4525
|
side: mt
|
|
4508
4526
|
});
|
|
4509
4527
|
}
|
|
4510
4528
|
}
|
|
4511
|
-
const
|
|
4529
|
+
const us = (e) => {
|
|
4512
4530
|
const t = new Uint8Array(4 * e * e);
|
|
4513
4531
|
for (let s = 0; s < e * e; s++) {
|
|
4514
|
-
const a = s * 4,
|
|
4515
|
-
t[a] =
|
|
4532
|
+
const a = s * 4, n = (s % e ^ Math.floor(s / e)) & 1 ? 255 : 0;
|
|
4533
|
+
t[a] = n, t[a + 1] = n, t[a + 2] = n, t[a + 3] = 255;
|
|
4516
4534
|
}
|
|
4517
|
-
const
|
|
4518
|
-
return
|
|
4535
|
+
const o = new Ut(t, e, e, zt, Ft);
|
|
4536
|
+
return o.wrapS = pt, o.wrapT = pt, o.minFilter = Lt, o.needsUpdate = !0, o;
|
|
4519
4537
|
};
|
|
4520
|
-
function
|
|
4538
|
+
function ms(e, t) {
|
|
4521
4539
|
if (e.length === 0)
|
|
4522
4540
|
throw new Error("No objects provided for alignment.");
|
|
4523
|
-
const
|
|
4541
|
+
const o = new V(), s = new M(), a = e.map((r) => (o.setFromObject(r), r.getWorldPosition(s), {
|
|
4524
4542
|
object: r,
|
|
4525
|
-
boundingBox:
|
|
4543
|
+
boundingBox: o.clone(),
|
|
4526
4544
|
// Clone to avoid overwriting
|
|
4527
4545
|
worldPosition: s.clone()
|
|
4528
|
-
})),
|
|
4546
|
+
})), n = a.reduce(
|
|
4529
4547
|
(r, { boundingBox: i }) => {
|
|
4530
4548
|
switch (t) {
|
|
4531
|
-
case
|
|
4549
|
+
case N.LEFT:
|
|
4532
4550
|
return Math.min(r, i.min.x);
|
|
4533
|
-
case
|
|
4551
|
+
case N.RIGHT:
|
|
4534
4552
|
return Math.max(r, i.max.x);
|
|
4535
|
-
case
|
|
4553
|
+
case N.BOTTOM:
|
|
4536
4554
|
return Math.min(r, i.min.y);
|
|
4537
|
-
case
|
|
4555
|
+
case N.TOP:
|
|
4538
4556
|
return Math.max(r, i.max.y);
|
|
4539
|
-
case
|
|
4557
|
+
case N.BACK:
|
|
4540
4558
|
return Math.min(r, i.min.z);
|
|
4541
|
-
case
|
|
4559
|
+
case N.FRONT:
|
|
4542
4560
|
return Math.max(r, i.max.z);
|
|
4543
4561
|
default:
|
|
4544
4562
|
throw new Error(`Unsupported side type: ${t}`);
|
|
4545
4563
|
}
|
|
4546
4564
|
},
|
|
4547
|
-
t ===
|
|
4565
|
+
t === N.RIGHT || t === N.TOP || t === N.FRONT ? -1 / 0 : 1 / 0
|
|
4548
4566
|
);
|
|
4549
4567
|
a.forEach(({ object: r, boundingBox: i }) => {
|
|
4550
4568
|
switch (t) {
|
|
4551
|
-
case
|
|
4552
|
-
r.position.x +=
|
|
4569
|
+
case N.LEFT:
|
|
4570
|
+
r.position.x += n - i.min.x;
|
|
4553
4571
|
break;
|
|
4554
|
-
case
|
|
4555
|
-
r.position.x +=
|
|
4572
|
+
case N.RIGHT:
|
|
4573
|
+
r.position.x += n - i.max.x;
|
|
4556
4574
|
break;
|
|
4557
|
-
case
|
|
4558
|
-
r.position.y +=
|
|
4575
|
+
case N.BOTTOM:
|
|
4576
|
+
r.position.y += n - i.min.y;
|
|
4559
4577
|
break;
|
|
4560
|
-
case
|
|
4561
|
-
r.position.y +=
|
|
4578
|
+
case N.TOP:
|
|
4579
|
+
r.position.y += n - i.max.y;
|
|
4562
4580
|
break;
|
|
4563
|
-
case
|
|
4564
|
-
r.position.z +=
|
|
4581
|
+
case N.BACK:
|
|
4582
|
+
r.position.z += n - i.min.z;
|
|
4565
4583
|
break;
|
|
4566
|
-
case
|
|
4567
|
-
r.position.z +=
|
|
4584
|
+
case N.FRONT:
|
|
4585
|
+
r.position.z += n - i.max.z;
|
|
4568
4586
|
break;
|
|
4569
4587
|
}
|
|
4570
4588
|
});
|
|
4571
4589
|
}
|
|
4572
|
-
function
|
|
4590
|
+
function hs(e, t = W.RIGHT, o = 0) {
|
|
4573
4591
|
const s = t.clone().normalize();
|
|
4574
4592
|
let a = new M();
|
|
4575
|
-
const
|
|
4593
|
+
const n = new V();
|
|
4576
4594
|
e.forEach((r) => {
|
|
4577
|
-
|
|
4595
|
+
n.setFromObject(r);
|
|
4578
4596
|
const c = new M(
|
|
4579
|
-
|
|
4580
|
-
|
|
4581
|
-
|
|
4597
|
+
n.max.x - n.min.x,
|
|
4598
|
+
n.max.y - n.min.y,
|
|
4599
|
+
n.max.z - n.min.z
|
|
4582
4600
|
).dot(s), l = new M();
|
|
4583
|
-
|
|
4601
|
+
n.getCenter(l);
|
|
4584
4602
|
const u = s.clone().multiplyScalar(c / 2);
|
|
4585
|
-
r.position.copy(a.clone().add(u).sub(l).add(r.position)), a.add(s.clone().multiplyScalar(c +
|
|
4603
|
+
r.position.copy(a.clone().add(u).sub(l).add(r.position)), a.add(s.clone().multiplyScalar(c + o));
|
|
4586
4604
|
});
|
|
4587
4605
|
}
|
|
4588
|
-
function
|
|
4606
|
+
function fs(e, t, o = new M(0, 0, 0)) {
|
|
4589
4607
|
const s = new V().setFromObject(e);
|
|
4590
4608
|
if (s.isEmpty())
|
|
4591
4609
|
console.warn("The object has no geometry or is not visible.");
|
|
4592
4610
|
else {
|
|
4593
|
-
const a = s.min,
|
|
4594
|
-
e.
|
|
4611
|
+
const a = s.min, n = new M((a.x + s.max.x) / 2, a.y, (a.z + s.max.z) / 2);
|
|
4612
|
+
e.localToWorld(n);
|
|
4613
|
+
const r = t.clone().sub(n).add(o), i = e.worldToLocal(r.clone());
|
|
4614
|
+
e.position.add(i);
|
|
4595
4615
|
}
|
|
4596
4616
|
}
|
|
4597
|
-
function
|
|
4598
|
-
const
|
|
4599
|
-
if (
|
|
4617
|
+
function ps(e, t) {
|
|
4618
|
+
const o = new V().setFromBufferAttribute(new F(e.attributes.position.array, 3));
|
|
4619
|
+
if (o.isEmpty())
|
|
4600
4620
|
console.warn("The geometry is empty or invalid.");
|
|
4601
4621
|
else {
|
|
4602
|
-
const s =
|
|
4622
|
+
const s = o.min.y;
|
|
4603
4623
|
e.translate(0, t - s, 0);
|
|
4604
4624
|
}
|
|
4605
4625
|
}
|
|
4606
|
-
function
|
|
4626
|
+
function ds(e, t, o = new M(0, 0, 0)) {
|
|
4607
4627
|
const s = new V().setFromObject(e);
|
|
4608
4628
|
if (s.isEmpty())
|
|
4609
4629
|
console.warn("The InstancedMesh has no geometry or is not visible.");
|
|
4610
4630
|
else {
|
|
4611
|
-
const a = s.min.y,
|
|
4612
|
-
e.position.add(
|
|
4631
|
+
const a = s.min.y, n = new M(0, t.y - a, 0).add(o), r = e.worldToLocal(n.clone());
|
|
4632
|
+
e.position.add(r);
|
|
4613
4633
|
}
|
|
4614
4634
|
}
|
|
4615
|
-
function
|
|
4635
|
+
function ys(e, t, o, s = new M(0, 0, 0)) {
|
|
4616
4636
|
const a = new V().setFromObject(e);
|
|
4617
4637
|
if (a.isEmpty())
|
|
4618
4638
|
console.warn("The instanced mesh has invalid geometry.");
|
|
4619
4639
|
else {
|
|
4620
|
-
const
|
|
4621
|
-
e.getMatrixAt(
|
|
4640
|
+
const n = a.min.y, r = new X();
|
|
4641
|
+
e.getMatrixAt(o, r);
|
|
4622
4642
|
const i = new M(), c = new wt(), l = new M();
|
|
4623
|
-
r.decompose(i, c, l)
|
|
4643
|
+
r.decompose(i, c, l);
|
|
4644
|
+
const u = e.worldToLocal(t.clone());
|
|
4645
|
+
i.y = u.y - n + s.y, r.compose(i, c, l), e.setMatrixAt(o, r), e.instanceMatrix.needsUpdate = !0;
|
|
4624
4646
|
}
|
|
4625
4647
|
}
|
|
4626
|
-
function
|
|
4627
|
-
const a = new V().setFromObject(e).getCenter(new M()),
|
|
4648
|
+
function uo(e, t = new M(0, 0, 0), o = new M(0, 0, 0)) {
|
|
4649
|
+
const a = new V().setFromObject(e).getCenter(new M()), n = new M().addVectors(t, o), r = new M().subVectors(n, a);
|
|
4628
4650
|
e.position.add(r);
|
|
4629
4651
|
}
|
|
4630
|
-
function
|
|
4631
|
-
const a = new V().setFromObject(e).getCenter(new M()),
|
|
4632
|
-
e.translateX(
|
|
4652
|
+
function mo(e, t = new M(0, 0, 0), o = new M(0, 0, 0)) {
|
|
4653
|
+
const a = new V().setFromObject(e).getCenter(new M()), n = new M().addVectors(t, o);
|
|
4654
|
+
e.translateX(n.x - a.x), e.translateY(n.y - a.y), e.translateZ(n.z - a.z), e.updateMatrixWorld(!0);
|
|
4633
4655
|
}
|
|
4634
|
-
function
|
|
4656
|
+
function ho(e, t = new M(0, 0, 0), o = new M(0, 0, 0)) {
|
|
4635
4657
|
e.geometry.computeBoundingBox();
|
|
4636
4658
|
const s = e.geometry.boundingBox;
|
|
4637
4659
|
if (s) {
|
|
4638
|
-
const a = s.getCenter(new M()),
|
|
4660
|
+
const a = s.getCenter(new M()), n = new M().addVectors(t, o), r = new M().subVectors(n, a);
|
|
4639
4661
|
e.geometry.translate(r.x, r.y, r.z);
|
|
4640
4662
|
}
|
|
4641
4663
|
}
|
|
4642
|
-
const
|
|
4643
|
-
object:
|
|
4644
|
-
objectGeometry:
|
|
4645
|
-
meshGeometry:
|
|
4664
|
+
const ws = {
|
|
4665
|
+
object: uo,
|
|
4666
|
+
objectGeometry: mo,
|
|
4667
|
+
meshGeometry: ho
|
|
4646
4668
|
};
|
|
4647
|
-
function
|
|
4669
|
+
function Ms(e) {
|
|
4648
4670
|
const t = parseInt(e.slice(1), 16);
|
|
4649
4671
|
return [
|
|
4650
4672
|
t >> 16 & 255,
|
|
@@ -4655,457 +4677,471 @@ function ys(e) {
|
|
|
4655
4677
|
// b
|
|
4656
4678
|
];
|
|
4657
4679
|
}
|
|
4658
|
-
function
|
|
4659
|
-
const [t,
|
|
4660
|
-
return
|
|
4680
|
+
function xs(e) {
|
|
4681
|
+
const [t, o, s] = $(e);
|
|
4682
|
+
return po(t, o, s);
|
|
4661
4683
|
}
|
|
4662
|
-
function
|
|
4663
|
-
const t = e >> 16 & 255,
|
|
4664
|
-
return [t,
|
|
4684
|
+
function $(e) {
|
|
4685
|
+
const t = e >> 16 & 255, o = e >> 8 & 255, s = e & 255;
|
|
4686
|
+
return [t, o, s];
|
|
4665
4687
|
}
|
|
4666
|
-
function
|
|
4667
|
-
t /= 100,
|
|
4688
|
+
function vs(e, t, o) {
|
|
4689
|
+
t /= 100, o /= 100;
|
|
4668
4690
|
function s(c, l, u) {
|
|
4669
4691
|
return u < 0 && (u += 1), u > 1 && (u -= 1), u < 1 / 6 ? c + (l - c) * 6 * u : u < 1 / 2 ? l : u < 2 / 3 ? c + (l - c) * (2 / 3 - u) * 6 : c;
|
|
4670
4692
|
}
|
|
4671
|
-
let a,
|
|
4693
|
+
let a, n, r;
|
|
4672
4694
|
if (t === 0)
|
|
4673
|
-
a =
|
|
4695
|
+
a = n = r = o;
|
|
4674
4696
|
else {
|
|
4675
|
-
const c =
|
|
4676
|
-
a = s(l, c, e / 360 + 1 / 3),
|
|
4697
|
+
const c = o < 0.5 ? o * (1 + t) : o + t - o * t, l = 2 * o - c;
|
|
4698
|
+
a = s(l, c, e / 360 + 1 / 3), n = s(l, c, e / 360), r = s(l, c, e / 360 - 1 / 3);
|
|
4677
4699
|
}
|
|
4678
4700
|
const i = (c) => Math.round(c * 255);
|
|
4679
4701
|
return [
|
|
4680
4702
|
i(a),
|
|
4681
|
-
i(
|
|
4703
|
+
i(n),
|
|
4682
4704
|
i(r)
|
|
4683
4705
|
];
|
|
4684
4706
|
}
|
|
4685
|
-
function
|
|
4686
|
-
t /= 100,
|
|
4687
|
-
const s = (r) => (r + e / 30) % 12, a = t * Math.min(
|
|
4688
|
-
return [
|
|
4707
|
+
function fo(e, t, o) {
|
|
4708
|
+
t /= 100, o /= 100;
|
|
4709
|
+
const s = (r) => (r + e / 30) % 12, a = t * Math.min(o, 1 - o), n = (r) => o - a * Math.max(-1, Math.min(s(r) - 3, Math.min(9 - s(r), 1)));
|
|
4710
|
+
return [n(0) * 255, n(8) * 255, n(4) * 255];
|
|
4689
4711
|
}
|
|
4690
|
-
function
|
|
4691
|
-
return [e / 255, t / 255,
|
|
4712
|
+
function gs(e, t, o) {
|
|
4713
|
+
return [e / 255, t / 255, o / 255];
|
|
4692
4714
|
}
|
|
4693
|
-
function
|
|
4694
|
-
return e = Math.round(e), t = Math.round(t),
|
|
4715
|
+
function As(e, t, o) {
|
|
4716
|
+
return e = Math.round(e), t = Math.round(t), o = Math.round(o), (e << 16) + (t << 8) + o;
|
|
4695
4717
|
}
|
|
4696
|
-
function
|
|
4697
|
-
e /= 255, t /= 255,
|
|
4698
|
-
const s = Math.max(e, t,
|
|
4718
|
+
function po(e, t, o) {
|
|
4719
|
+
e /= 255, t /= 255, o /= 255;
|
|
4720
|
+
const s = Math.max(e, t, o), a = Math.min(e, t, o), n = s - a;
|
|
4699
4721
|
let r = 0, i = 0;
|
|
4700
4722
|
const c = (s + a) / 2;
|
|
4701
|
-
|
|
4723
|
+
n !== 0 && (s === e ? r = ((t - o) / n + (t < o ? 6 : 0)) * 60 : s === t ? r = ((o - e) / n + 2) * 60 : s === o && (r = ((e - t) / n + 4) * 60)), n !== 0 && (i = n / (1 - Math.abs(2 * c - 1))), r = Math.round(r), i = Math.round(i * 100);
|
|
4702
4724
|
const l = Math.round(c * 100);
|
|
4703
4725
|
return [r, i, l];
|
|
4704
4726
|
}
|
|
4705
|
-
function
|
|
4727
|
+
function yo(e, t) {
|
|
4706
4728
|
return Math.sqrt(
|
|
4707
4729
|
Math.pow(e[0] - t[0], 2) + Math.pow(e[1] - t[1], 2) + Math.pow(e[2] - t[2], 2)
|
|
4708
4730
|
);
|
|
4709
4731
|
}
|
|
4710
|
-
function
|
|
4732
|
+
function wo(e, t) {
|
|
4711
4733
|
return Math.abs(e[0] - t[0]) + //
|
|
4712
4734
|
Math.abs(e[1] - t[1]) + Math.abs(e[2] - t[2]);
|
|
4713
4735
|
}
|
|
4714
|
-
function
|
|
4715
|
-
const
|
|
4736
|
+
function Is(e, t) {
|
|
4737
|
+
const o = $(e);
|
|
4716
4738
|
let s = null, a = 1 / 0;
|
|
4717
|
-
for (const
|
|
4718
|
-
const r =
|
|
4719
|
-
i < a && (a = i, s =
|
|
4739
|
+
for (const n of t) {
|
|
4740
|
+
const r = $(n), i = yo(o, r);
|
|
4741
|
+
i < a && (a = i, s = n);
|
|
4720
4742
|
}
|
|
4721
4743
|
return s;
|
|
4722
4744
|
}
|
|
4723
|
-
function
|
|
4724
|
-
const
|
|
4745
|
+
function Es(e, t) {
|
|
4746
|
+
const o = $(e);
|
|
4725
4747
|
let s = null, a = 1 / 0;
|
|
4726
|
-
for (const
|
|
4727
|
-
const r =
|
|
4728
|
-
i < a && (a = i, s =
|
|
4748
|
+
for (const n of t) {
|
|
4749
|
+
const r = $(n), i = wo(o, r);
|
|
4750
|
+
i < a && (a = i, s = n);
|
|
4729
4751
|
}
|
|
4730
4752
|
return s;
|
|
4731
4753
|
}
|
|
4732
|
-
function
|
|
4733
|
-
const t = (e + Math.floor(-30 + Math.random() * 61)) % 360,
|
|
4734
|
-
return
|
|
4754
|
+
function bs(e) {
|
|
4755
|
+
const t = (e + Math.floor(-30 + Math.random() * 61)) % 360, o = Math.floor(60 + Math.random() * 21), s = Math.floor(50 + Math.random() * 21);
|
|
4756
|
+
return fo(t, o, s);
|
|
4757
|
+
}
|
|
4758
|
+
function Ts(e, t) {
|
|
4759
|
+
if (!t.geometry.isBufferGeometry)
|
|
4760
|
+
throw new Error("Mesh must have a BufferGeometry.");
|
|
4761
|
+
const s = t.geometry.getAttribute("position"), a = new M(), n = new M();
|
|
4762
|
+
let r = 1 / 0;
|
|
4763
|
+
for (let i = 0; i < s.count; i++) {
|
|
4764
|
+
n.fromBufferAttribute(s, i);
|
|
4765
|
+
const c = n.distanceTo(e);
|
|
4766
|
+
c < r && (r = c, a.copy(n));
|
|
4767
|
+
}
|
|
4768
|
+
return t.localToWorld(a), a;
|
|
4735
4769
|
}
|
|
4736
|
-
function
|
|
4737
|
-
return Math.max(0, Math.min(1, (e - t) / (
|
|
4770
|
+
function Mo(e, t, o) {
|
|
4771
|
+
return Math.max(0, Math.min(1, (e - t) / (o - t)));
|
|
4738
4772
|
}
|
|
4739
|
-
function
|
|
4773
|
+
function Ss(e, t, o, s, a, n = 20, r = 0, i = 1) {
|
|
4740
4774
|
const c = [];
|
|
4741
|
-
for (let l = 0; l <=
|
|
4742
|
-
const u = l /
|
|
4775
|
+
for (let l = 0; l <= n; l++) {
|
|
4776
|
+
const u = l / n, m = e(Mo(u, r, i)), h = t + m * (o - t), f = s + u * (a - s);
|
|
4743
4777
|
c.push(new A(h, f));
|
|
4744
4778
|
}
|
|
4745
4779
|
return c;
|
|
4746
4780
|
}
|
|
4747
|
-
const
|
|
4748
|
-
let
|
|
4781
|
+
const xo = (e, t, o, s, a = 24) => {
|
|
4782
|
+
let n = [];
|
|
4749
4783
|
for (let r = 0; r <= a; r++) {
|
|
4750
|
-
const i = r / a, c = D.CUBIC(i, e.x, t.x,
|
|
4751
|
-
|
|
4784
|
+
const i = r / a, c = D.CUBIC(i, e.x, t.x, o.x, s.x), l = D.CUBIC(i, e.y, t.y, o.y, s.y);
|
|
4785
|
+
n.push(new A(c, l));
|
|
4752
4786
|
}
|
|
4753
|
-
return
|
|
4754
|
-
},
|
|
4787
|
+
return n;
|
|
4788
|
+
}, vo = (e, t, o, s = 24) => {
|
|
4755
4789
|
let a = [];
|
|
4756
|
-
for (let
|
|
4757
|
-
const r =
|
|
4790
|
+
for (let n = 0; n <= s; n++) {
|
|
4791
|
+
const r = n / s, i = D.DAMPED(r, o) * (t.x - e.x) + e.x, c = e.y + r * (t.y - e.y);
|
|
4758
4792
|
a.push(new A(i, c));
|
|
4759
4793
|
}
|
|
4760
4794
|
return a;
|
|
4761
|
-
},
|
|
4762
|
-
let
|
|
4795
|
+
}, go = (e, t, o, s, a = 24) => {
|
|
4796
|
+
let n = [];
|
|
4763
4797
|
for (let r = 0; r <= a; r++) {
|
|
4764
|
-
const i = r / a, c = D.EXPONENTIAL(i,
|
|
4765
|
-
|
|
4798
|
+
const i = r / a, c = D.EXPONENTIAL(i, o, s) * (t.x - e.x) + e.x, l = e.y + i * (t.y - e.y);
|
|
4799
|
+
n.push(new A(c, l));
|
|
4766
4800
|
}
|
|
4767
|
-
return
|
|
4768
|
-
},
|
|
4769
|
-
let
|
|
4801
|
+
return n;
|
|
4802
|
+
}, Ao = (e, t, o, s, a = 24) => {
|
|
4803
|
+
let n = [];
|
|
4770
4804
|
for (let r = 0; r <= a; r++) {
|
|
4771
|
-
const i = r / a, c = D.LOGARITHMIC(i,
|
|
4772
|
-
|
|
4805
|
+
const i = r / a, c = D.LOGARITHMIC(i, o, s) * (t.x - e.x) + e.x, l = e.y + i * (t.y - e.y);
|
|
4806
|
+
n.push(new A(c, l));
|
|
4773
4807
|
}
|
|
4774
|
-
return
|
|
4775
|
-
},
|
|
4808
|
+
return n;
|
|
4809
|
+
}, Io = (e, t, o, s, a, n = 24) => {
|
|
4776
4810
|
let r = [];
|
|
4777
|
-
for (let i = 0; i <=
|
|
4778
|
-
const c = i /
|
|
4811
|
+
for (let i = 0; i <= n; i++) {
|
|
4812
|
+
const c = i / n, l = o * c * c + s * c + a + e.x, u = e.y + c * (t.y - e.y);
|
|
4779
4813
|
r.push(new A(l, u));
|
|
4780
4814
|
}
|
|
4781
4815
|
return r;
|
|
4782
|
-
},
|
|
4816
|
+
}, Eo = (e, t, o, s = 24) => {
|
|
4783
4817
|
let a = [];
|
|
4784
|
-
for (let
|
|
4785
|
-
const r =
|
|
4818
|
+
for (let n = 0; n <= s; n++) {
|
|
4819
|
+
const r = n / s, i = D.QUADRATIC(r, e.x, t.x, o.x), c = D.QUADRATIC(r, e.y, t.y, o.y);
|
|
4786
4820
|
a.push(new A(i, c));
|
|
4787
4821
|
}
|
|
4788
4822
|
return a;
|
|
4789
|
-
},
|
|
4823
|
+
}, bo = (e, t, o, s = 24) => {
|
|
4790
4824
|
let a = [];
|
|
4791
|
-
for (let
|
|
4792
|
-
const r =
|
|
4825
|
+
for (let n = 0; n <= s; n++) {
|
|
4826
|
+
const r = n / s, i = D.SIGMOID(r, o) * (t.x - e.x) + e.x, c = e.y + r * (t.y - e.y);
|
|
4793
4827
|
a.push(new A(i, c));
|
|
4794
4828
|
}
|
|
4795
4829
|
return a;
|
|
4796
|
-
},
|
|
4797
|
-
createCubicCurvePoints:
|
|
4798
|
-
createDampedCurvePoints:
|
|
4799
|
-
createExponentialCurvePoints:
|
|
4800
|
-
createLogarithmicCurvePoints:
|
|
4801
|
-
createParabolicCurvePoints:
|
|
4802
|
-
createQuadraticCurvePoints:
|
|
4803
|
-
createSigmoidCurvePoints:
|
|
4830
|
+
}, Ps = {
|
|
4831
|
+
createCubicCurvePoints: xo,
|
|
4832
|
+
createDampedCurvePoints: vo,
|
|
4833
|
+
createExponentialCurvePoints: go,
|
|
4834
|
+
createLogarithmicCurvePoints: Ao,
|
|
4835
|
+
createParabolicCurvePoints: Io,
|
|
4836
|
+
createQuadraticCurvePoints: Eo,
|
|
4837
|
+
createSigmoidCurvePoints: bo
|
|
4804
4838
|
};
|
|
4805
|
-
function
|
|
4806
|
-
const l = a ||
|
|
4839
|
+
function Gs(e, t, o, s, a, n = [0, 0], r = [1, 0], i = [0, 1], c = [1, 1]) {
|
|
4840
|
+
const l = a || To(e, t, o);
|
|
4807
4841
|
return [
|
|
4808
4842
|
// Triangle 1
|
|
4809
|
-
{ pos: e, norm: l, uv:
|
|
4843
|
+
{ pos: e, norm: l, uv: n },
|
|
4810
4844
|
{ pos: t, norm: l, uv: r },
|
|
4811
4845
|
{ pos: s, norm: l, uv: c },
|
|
4812
4846
|
// Triangle 2
|
|
4813
|
-
{ pos: e, norm: l, uv:
|
|
4847
|
+
{ pos: e, norm: l, uv: n },
|
|
4814
4848
|
{ pos: s, norm: l, uv: c },
|
|
4815
|
-
{ pos:
|
|
4849
|
+
{ pos: o, norm: l, uv: i }
|
|
4816
4850
|
];
|
|
4817
4851
|
}
|
|
4818
|
-
function
|
|
4852
|
+
function To(e, t, o) {
|
|
4819
4853
|
const s = [
|
|
4820
4854
|
t[0] - e[0],
|
|
4821
4855
|
t[1] - e[1],
|
|
4822
4856
|
t[2] - e[2]
|
|
4823
4857
|
], a = [
|
|
4824
|
-
|
|
4825
|
-
|
|
4826
|
-
|
|
4827
|
-
],
|
|
4858
|
+
o[0] - e[0],
|
|
4859
|
+
o[1] - e[1],
|
|
4860
|
+
o[2] - e[2]
|
|
4861
|
+
], n = [
|
|
4828
4862
|
s[1] * a[2] - s[2] * a[1],
|
|
4829
4863
|
s[2] * a[0] - s[0] * a[2],
|
|
4830
4864
|
s[0] * a[1] - s[1] * a[0]
|
|
4831
|
-
], r = Math.sqrt(
|
|
4832
|
-
return
|
|
4865
|
+
], r = Math.sqrt(n[0] ** 2 + n[1] ** 2 + n[2] ** 2);
|
|
4866
|
+
return n.map((i) => i / r);
|
|
4833
4867
|
}
|
|
4834
|
-
function
|
|
4835
|
-
return e.map(([
|
|
4868
|
+
function Cs(e, t) {
|
|
4869
|
+
return e.map(([o, s, a]) => {
|
|
4836
4870
|
switch (t) {
|
|
4837
4871
|
case "x":
|
|
4838
4872
|
return [s, a];
|
|
4839
4873
|
case "y":
|
|
4840
|
-
return [
|
|
4874
|
+
return [o, a];
|
|
4841
4875
|
case "z":
|
|
4842
|
-
return [
|
|
4876
|
+
return [o, s];
|
|
4843
4877
|
default:
|
|
4844
4878
|
throw new Error(`Invalid axis: ${t}`);
|
|
4845
4879
|
}
|
|
4846
4880
|
});
|
|
4847
4881
|
}
|
|
4848
|
-
function
|
|
4849
|
-
const [t,
|
|
4850
|
-
return a >=
|
|
4882
|
+
function So(e) {
|
|
4883
|
+
const [t, o, s] = e, a = Math.abs(t), n = Math.abs(o), r = Math.abs(s);
|
|
4884
|
+
return a >= n && a >= r ? [s > 0 ? s : -s, o] : n >= a && n >= r ? [t, s > 0 ? s : -s] : [t, o];
|
|
4851
4885
|
}
|
|
4852
|
-
function
|
|
4853
|
-
return e.map((t) =>
|
|
4886
|
+
function Rs(e) {
|
|
4887
|
+
return e.map((t) => So(t));
|
|
4854
4888
|
}
|
|
4855
|
-
function
|
|
4856
|
-
return e.map(([t,
|
|
4857
|
-
const a = Math.atan2(s, t),
|
|
4889
|
+
function Bs(e) {
|
|
4890
|
+
return e.map(([t, o, s]) => {
|
|
4891
|
+
const a = Math.atan2(s, t), n = Math.acos(o / Math.sqrt(t ** 2 + o ** 2 + s ** 2)), r = a / (2 * Math.PI) + 0.5, i = 1 - n / Math.PI;
|
|
4858
4892
|
return [r, i];
|
|
4859
4893
|
});
|
|
4860
4894
|
}
|
|
4861
|
-
function
|
|
4862
|
-
return e.map(([t,
|
|
4895
|
+
function Ns(e) {
|
|
4896
|
+
return e.map(([t, o, s]) => [Math.atan2(s, t) / (2 * Math.PI) + 0.5, o]);
|
|
4863
4897
|
}
|
|
4864
|
-
function
|
|
4865
|
-
return e.map(([t,
|
|
4898
|
+
function Os(e) {
|
|
4899
|
+
return e.map(([t, o, s]) => {
|
|
4866
4900
|
const a = Math.sqrt(t ** 2 + s ** 2);
|
|
4867
4901
|
return [Math.atan2(s, t) / (2 * Math.PI) + 0.5, a];
|
|
4868
4902
|
});
|
|
4869
4903
|
}
|
|
4870
|
-
function
|
|
4904
|
+
function Po(e, t, o, s, a) {
|
|
4871
4905
|
return [
|
|
4872
|
-
(e[0] - t) / (
|
|
4906
|
+
(e[0] - t) / (o - t),
|
|
4873
4907
|
(e[1] - s) / (a - s)
|
|
4874
4908
|
];
|
|
4875
4909
|
}
|
|
4876
|
-
function
|
|
4877
|
-
const [s, a] = t, [
|
|
4878
|
-
return e.map((i) =>
|
|
4910
|
+
function _s(e, t, o) {
|
|
4911
|
+
const [s, a] = t, [n, r] = o;
|
|
4912
|
+
return e.map((i) => Po(i, s, n, a, r));
|
|
4879
4913
|
}
|
|
4880
|
-
function
|
|
4881
|
-
const t = Math.min(...e.map((
|
|
4914
|
+
function Us(e) {
|
|
4915
|
+
const t = Math.min(...e.map((n) => n[0])), o = Math.max(...e.map((n) => n[0])), s = Math.min(...e.map((n) => n[1])), a = Math.max(...e.map((n) => n[1]));
|
|
4882
4916
|
return {
|
|
4883
4917
|
minBounds: [t, s],
|
|
4884
|
-
maxBounds: [
|
|
4918
|
+
maxBounds: [o, a]
|
|
4885
4919
|
};
|
|
4886
4920
|
}
|
|
4887
4921
|
export {
|
|
4888
|
-
|
|
4922
|
+
is as AtmosphericSkybox,
|
|
4889
4923
|
ft as Axis,
|
|
4890
|
-
|
|
4891
|
-
|
|
4892
|
-
|
|
4893
|
-
|
|
4924
|
+
en as BifurcatedStaircaseGeometry,
|
|
4925
|
+
Jn as Bone,
|
|
4926
|
+
je as BoneGeometry,
|
|
4927
|
+
pn as Book,
|
|
4894
4928
|
xt as BookGeometry,
|
|
4895
|
-
|
|
4896
|
-
|
|
4897
|
-
|
|
4898
|
-
|
|
4899
|
-
|
|
4900
|
-
|
|
4901
|
-
|
|
4902
|
-
|
|
4903
|
-
|
|
4904
|
-
|
|
4929
|
+
Tn as Bookshelf,
|
|
4930
|
+
ke as BookshelfGeometry,
|
|
4931
|
+
N as BoxSide,
|
|
4932
|
+
Ko as BubblingEffect,
|
|
4933
|
+
On as BunsenBurner,
|
|
4934
|
+
jn as Burst,
|
|
4935
|
+
ao as BurstShape,
|
|
4936
|
+
Pn as Candle,
|
|
4937
|
+
qe as CandleGeometry,
|
|
4938
|
+
ws as Center,
|
|
4905
4939
|
H as ColorPalette,
|
|
4906
|
-
|
|
4907
|
-
|
|
4908
|
-
|
|
4909
|
-
|
|
4910
|
-
|
|
4911
|
-
|
|
4912
|
-
|
|
4940
|
+
Mn as CrossHeadstone,
|
|
4941
|
+
Oe as CrossHeadstoneGeometry,
|
|
4942
|
+
cs as DaySkybox,
|
|
4943
|
+
Sn as Desk,
|
|
4944
|
+
Ve as DeskGeometry,
|
|
4945
|
+
hn as Diorama,
|
|
4946
|
+
Ge as DioramaGeometry,
|
|
4913
4947
|
W as Direction,
|
|
4914
|
-
|
|
4915
|
-
|
|
4916
|
-
|
|
4917
|
-
|
|
4918
|
-
|
|
4919
|
-
|
|
4948
|
+
Qo as Easing,
|
|
4949
|
+
_n as ElectricPanel,
|
|
4950
|
+
Te as EllipticLeafGeometry,
|
|
4951
|
+
Fo as EmissivePulseAnimation,
|
|
4952
|
+
Un as ErlenmeyerFlask,
|
|
4953
|
+
Qe as ErlenmeyerFlaskGeometry,
|
|
4920
4954
|
tt as Falloff,
|
|
4921
|
-
|
|
4955
|
+
Gn as Flame,
|
|
4922
4956
|
Et as FlameGeometry,
|
|
4923
|
-
|
|
4924
|
-
|
|
4925
|
-
|
|
4926
|
-
|
|
4927
|
-
|
|
4928
|
-
|
|
4929
|
-
|
|
4930
|
-
|
|
4931
|
-
|
|
4932
|
-
|
|
4933
|
-
|
|
4934
|
-
|
|
4935
|
-
|
|
4936
|
-
|
|
4937
|
-
|
|
4938
|
-
|
|
4939
|
-
|
|
4940
|
-
|
|
4941
|
-
|
|
4942
|
-
|
|
4943
|
-
|
|
4944
|
-
|
|
4945
|
-
|
|
4946
|
-
|
|
4947
|
-
|
|
4948
|
-
|
|
4949
|
-
|
|
4950
|
-
|
|
4951
|
-
|
|
4952
|
-
|
|
4953
|
-
|
|
4954
|
-
|
|
4955
|
-
|
|
4957
|
+
zn as FlorenceFlask,
|
|
4958
|
+
Je as FlorenceFlaskGeometry,
|
|
4959
|
+
Qn as Gear,
|
|
4960
|
+
io as GearShape,
|
|
4961
|
+
Kn as Heart,
|
|
4962
|
+
co as HeartShape,
|
|
4963
|
+
ts as Hill,
|
|
4964
|
+
oo as HillGeometry,
|
|
4965
|
+
dn as Jar,
|
|
4966
|
+
Ce as JarGeometry,
|
|
4967
|
+
on as LShapedStaircaseGeometry,
|
|
4968
|
+
Cn as Lantern,
|
|
4969
|
+
$o as LeafEffect,
|
|
4970
|
+
Fn as LeverPanel,
|
|
4971
|
+
Do as LightFlickerAnimation,
|
|
4972
|
+
Vo as LightningAnimation,
|
|
4973
|
+
rn as LineEquations,
|
|
4974
|
+
xn as Mausoleum,
|
|
4975
|
+
_e as MausoleumGeometry,
|
|
4976
|
+
Ln as Microscope,
|
|
4977
|
+
fn as Moon,
|
|
4978
|
+
Dn as MortarAndPestle,
|
|
4979
|
+
We as MortarGeometry,
|
|
4980
|
+
Rn as MossyRocks,
|
|
4981
|
+
Ye as MossyRocksGeometry,
|
|
4982
|
+
es as Mound,
|
|
4983
|
+
no as MoundGeometry,
|
|
4984
|
+
ls as NightSkybox,
|
|
4985
|
+
vn as ObeliskHeadstone,
|
|
4986
|
+
Ue as ObeliskHeadstoneGeometry,
|
|
4987
|
+
kn as Panel,
|
|
4988
|
+
Vn as PanelLight,
|
|
4989
|
+
an as ParallelogramBoxGeometry,
|
|
4956
4990
|
D as ParametricCurve,
|
|
4957
|
-
|
|
4958
|
-
|
|
4959
|
-
|
|
4960
|
-
|
|
4961
|
-
|
|
4962
|
-
|
|
4963
|
-
|
|
4964
|
-
|
|
4965
|
-
|
|
4966
|
-
|
|
4967
|
-
|
|
4968
|
-
|
|
4991
|
+
Ps as ParametricCurveUtils,
|
|
4992
|
+
yn as PotionBottle,
|
|
4993
|
+
Be as PotionBottleGeometry,
|
|
4994
|
+
Bn as Rock,
|
|
4995
|
+
Xe as RockGeometry,
|
|
4996
|
+
Nn as Rocks,
|
|
4997
|
+
Ze as RocksGeometry,
|
|
4998
|
+
gn as RoundedHeadstone,
|
|
4999
|
+
ze as RoundedHeadstoneGeometry,
|
|
5000
|
+
nn as SpiralStaircaseGeometry,
|
|
5001
|
+
qn as SpiralTube,
|
|
5002
|
+
An as SquareHeadstone,
|
|
4969
5003
|
Fe as SquareHeadstoneGeometry,
|
|
4970
|
-
|
|
4971
|
-
|
|
4972
|
-
|
|
4973
|
-
|
|
4974
|
-
|
|
4975
|
-
|
|
4976
|
-
|
|
4977
|
-
|
|
4978
|
-
|
|
4979
|
-
|
|
4980
|
-
|
|
4981
|
-
|
|
4982
|
-
|
|
4983
|
-
|
|
4984
|
-
|
|
4985
|
-
|
|
4986
|
-
|
|
5004
|
+
sn as StaircaseGeometry,
|
|
5005
|
+
Yn as Stand,
|
|
5006
|
+
to as StandGeometry,
|
|
5007
|
+
$n as Star,
|
|
5008
|
+
lo as StarShape,
|
|
5009
|
+
In as StoneFencePost,
|
|
5010
|
+
Le as StoneFencePostGeometry,
|
|
5011
|
+
Hn as TeslaCoil,
|
|
5012
|
+
eo as TeslaCoilGeometry,
|
|
5013
|
+
Xn as TestTube,
|
|
5014
|
+
ut as TestTubeGeometry,
|
|
5015
|
+
Zn as TestTubeRack,
|
|
5016
|
+
Wn as Tree,
|
|
5017
|
+
so as TreeGeometry,
|
|
5018
|
+
wn as WineBottle,
|
|
5019
|
+
Ne as WineBottleGeometry,
|
|
5020
|
+
En as WroughtIronBar,
|
|
4987
5021
|
It as WroughtIronBarGeometry,
|
|
4988
|
-
|
|
4989
|
-
|
|
4990
|
-
|
|
4991
|
-
|
|
4992
|
-
|
|
4993
|
-
|
|
4994
|
-
|
|
4995
|
-
|
|
4996
|
-
|
|
4997
|
-
|
|
4998
|
-
|
|
4999
|
-
|
|
5000
|
-
|
|
5001
|
-
|
|
5002
|
-
|
|
5003
|
-
|
|
5022
|
+
bn as WroughtIronFence,
|
|
5023
|
+
De as WroughtIronFenceGeometry,
|
|
5024
|
+
ss as addNoiseDisplacement,
|
|
5025
|
+
os as addWaterDisplacement,
|
|
5026
|
+
ps as alignBufferGeometryToSurface,
|
|
5027
|
+
ys as alignInstancedMeshIndexToSurface,
|
|
5028
|
+
ds as alignInstancedMeshToSurface,
|
|
5029
|
+
fs as alignObjectToSurface,
|
|
5030
|
+
ms as alignToEdge,
|
|
5031
|
+
hs as alignToRow,
|
|
5032
|
+
$e as appendSphericalCurve,
|
|
5033
|
+
it as atmosphericShader,
|
|
5034
|
+
wo as calculateChannelDifference,
|
|
5035
|
+
yo as calculateDistance,
|
|
5036
|
+
To as calculateNormal,
|
|
5037
|
+
Us as calculateUVBounds,
|
|
5004
5038
|
At as calculateXFromSlopeIntercept,
|
|
5005
|
-
|
|
5006
|
-
|
|
5007
|
-
|
|
5008
|
-
|
|
5009
|
-
|
|
5010
|
-
|
|
5011
|
-
|
|
5012
|
-
|
|
5013
|
-
|
|
5014
|
-
|
|
5015
|
-
|
|
5016
|
-
|
|
5017
|
-
|
|
5018
|
-
|
|
5019
|
-
|
|
5020
|
-
|
|
5021
|
-
|
|
5022
|
-
|
|
5023
|
-
|
|
5024
|
-
|
|
5025
|
-
|
|
5026
|
-
|
|
5027
|
-
|
|
5028
|
-
|
|
5029
|
-
|
|
5030
|
-
|
|
5031
|
-
|
|
5032
|
-
|
|
5033
|
-
|
|
5034
|
-
|
|
5035
|
-
|
|
5036
|
-
|
|
5037
|
-
|
|
5038
|
-
|
|
5039
|
-
|
|
5040
|
-
|
|
5041
|
-
|
|
5042
|
-
|
|
5043
|
-
|
|
5044
|
-
|
|
5045
|
-
|
|
5046
|
-
|
|
5047
|
-
|
|
5048
|
-
|
|
5049
|
-
|
|
5050
|
-
|
|
5051
|
-
|
|
5052
|
-
|
|
5053
|
-
|
|
5054
|
-
|
|
5055
|
-
|
|
5056
|
-
|
|
5057
|
-
|
|
5058
|
-
|
|
5059
|
-
|
|
5060
|
-
|
|
5061
|
-
|
|
5062
|
-
|
|
5063
|
-
|
|
5064
|
-
|
|
5065
|
-
|
|
5066
|
-
|
|
5067
|
-
|
|
5068
|
-
|
|
5069
|
-
|
|
5070
|
-
|
|
5071
|
-
|
|
5072
|
-
|
|
5073
|
-
|
|
5074
|
-
|
|
5075
|
-
|
|
5076
|
-
|
|
5077
|
-
Xt as
|
|
5078
|
-
|
|
5079
|
-
|
|
5080
|
-
Jt as
|
|
5081
|
-
te as
|
|
5039
|
+
Re as calculateYFromSlopeIntercept,
|
|
5040
|
+
Ro as cameraDollyAnimation,
|
|
5041
|
+
Bo as cameraFlythroughAnimation,
|
|
5042
|
+
No as cameraOrbitAnimation,
|
|
5043
|
+
Oo as cameraPendulumAnimation,
|
|
5044
|
+
_o as cameraSpiralAscensionAnimation,
|
|
5045
|
+
Uo as cameraWobbleAnimation,
|
|
5046
|
+
zo as cameraZoomInAnimation,
|
|
5047
|
+
Ke as capHeightFromRadius,
|
|
5048
|
+
ln as capWidthFromRadius,
|
|
5049
|
+
mn as cartesianToSpherical,
|
|
5050
|
+
ho as centerMeshGeometry,
|
|
5051
|
+
uo as centerObject,
|
|
5052
|
+
mo as centerObjectGeometry,
|
|
5053
|
+
us as checkerboardTexture,
|
|
5054
|
+
ie as circularEaseIn,
|
|
5055
|
+
le as circularEaseInOut,
|
|
5056
|
+
ce as circularEaseOut,
|
|
5057
|
+
he as concave,
|
|
5058
|
+
fe as convex,
|
|
5059
|
+
xo as createCubicCurvePoints,
|
|
5060
|
+
vo as createDampedCurvePoints,
|
|
5061
|
+
go as createExponentialCurvePoints,
|
|
5062
|
+
tn as createHexagonalTile,
|
|
5063
|
+
Ao as createLogarithmicCurvePoints,
|
|
5064
|
+
Io as createParabolicCurvePoints,
|
|
5065
|
+
Gs as createQuad,
|
|
5066
|
+
Eo as createQuadraticCurvePoints,
|
|
5067
|
+
bo as createSigmoidCurvePoints,
|
|
5068
|
+
Me as cubicCurve,
|
|
5069
|
+
Qt as cubicEaseIn,
|
|
5070
|
+
$t as cubicEaseInOut,
|
|
5071
|
+
Kt as cubicEaseOut,
|
|
5072
|
+
So as cubicUVMapping,
|
|
5073
|
+
Rs as cubicUVMappingBatch,
|
|
5074
|
+
Ns as cylindricalUVMapping,
|
|
5075
|
+
xe as dampedCurve,
|
|
5076
|
+
ct as daySkyShader,
|
|
5077
|
+
qo as displacementBrush,
|
|
5078
|
+
ve as exponentialCurve,
|
|
5079
|
+
se as exponentialEaseIn,
|
|
5080
|
+
ae as exponentialEaseInOut,
|
|
5081
|
+
re as exponentialEaseOut,
|
|
5082
|
+
as as fadeShader,
|
|
5083
|
+
Is as findClosestColor,
|
|
5084
|
+
Es as findClosestColorChannelWise,
|
|
5085
|
+
Ts as findClosestPoint,
|
|
5086
|
+
Yo as flattenBrush,
|
|
5087
|
+
we as gaussian,
|
|
5088
|
+
bs as getAnalogousColors,
|
|
5089
|
+
xs as hexToHsl,
|
|
5090
|
+
$ as hexToRgb,
|
|
5091
|
+
vs as hslToHex,
|
|
5092
|
+
fo as hslToRgb,
|
|
5093
|
+
Ss as interpolateCurve,
|
|
5094
|
+
ye as inverse,
|
|
5095
|
+
ue as linear,
|
|
5096
|
+
pe as logarithmic,
|
|
5097
|
+
ge as logarithmicCurve,
|
|
5098
|
+
Dt as logarithmicRandomMax,
|
|
5099
|
+
kt as logarithmicRandomMin,
|
|
5100
|
+
ro as moonShader,
|
|
5101
|
+
lt as nightSkyShader,
|
|
5102
|
+
Ho as noiseBrush,
|
|
5103
|
+
gs as normalizeRgb,
|
|
5104
|
+
Po as normalizeUV,
|
|
5105
|
+
_s as normalizeUVBatch,
|
|
5106
|
+
Ae as parabolicCurve,
|
|
5107
|
+
Ms as parseHexCode,
|
|
5108
|
+
Cs as planarUVMapping,
|
|
5109
|
+
Os as polarUVMapping,
|
|
5110
|
+
Ie as quadraticCurve,
|
|
5111
|
+
Xt as quadraticEaseIn,
|
|
5112
|
+
jt as quadraticEaseInOut,
|
|
5113
|
+
Zt as quadraticEaseOut,
|
|
5114
|
+
Jt as quarticEaseIn,
|
|
5115
|
+
te as quarticEaseInOut,
|
|
5116
|
+
Wt as quarticEaseOut,
|
|
5117
|
+
ee as quinticEaseIn,
|
|
5082
5118
|
ne as quinticEaseInOut,
|
|
5083
|
-
|
|
5084
|
-
|
|
5119
|
+
oe as quinticEaseOut,
|
|
5120
|
+
cn as radiusFromCapHeight,
|
|
5085
5121
|
bt as radiusFromCapWidth,
|
|
5086
5122
|
ht as randomFloat,
|
|
5087
|
-
|
|
5088
|
-
|
|
5089
|
-
|
|
5090
|
-
|
|
5091
|
-
|
|
5092
|
-
|
|
5123
|
+
Lo as randomInteger,
|
|
5124
|
+
He as randomTransformVertices,
|
|
5125
|
+
As as rgbToHex,
|
|
5126
|
+
po as rgbToHsl,
|
|
5127
|
+
Jo as rowOfBooksByCount,
|
|
5128
|
+
Wo as rowOfBooksByLength,
|
|
5093
5129
|
gt as rowOfBooksByScales,
|
|
5094
|
-
|
|
5095
|
-
|
|
5096
|
-
|
|
5097
|
-
|
|
5098
|
-
|
|
5099
|
-
|
|
5100
|
-
|
|
5101
|
-
|
|
5102
|
-
|
|
5103
|
-
|
|
5104
|
-
|
|
5105
|
-
|
|
5130
|
+
ko as setRandomInterval,
|
|
5131
|
+
Vt as setRandomTimeout,
|
|
5132
|
+
Ee as sigmoidCurve,
|
|
5133
|
+
qt as sineEaseIn,
|
|
5134
|
+
Ht as sineEaseInOut,
|
|
5135
|
+
Yt as sineEaseOut,
|
|
5136
|
+
Xo as smoothBrush,
|
|
5137
|
+
me as smoothstep,
|
|
5138
|
+
un as sphericalToCartesian,
|
|
5139
|
+
Bs as sphericalUVMapping,
|
|
5140
|
+
Zo as spikeBrush,
|
|
5141
|
+
de as squareRoot,
|
|
5106
5142
|
yt as thetaLengthForRadius,
|
|
5107
|
-
|
|
5108
|
-
|
|
5109
|
-
|
|
5143
|
+
jo as twistBrush,
|
|
5144
|
+
rs as updateNoiseDisplacementTime,
|
|
5145
|
+
ns as updateWaterDisplacementTime
|
|
5110
5146
|
};
|
|
5111
5147
|
//# sourceMappingURL=index.es.js.map
|