three-low-poly 0.9.15 → 0.9.16
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 +44 -44
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +152 -11
- package/dist/index.es.js +1177 -938
- package/dist/index.es.js.map +1 -1
- package/dist/index.iife.js +44 -44
- package/dist/index.iife.js.map +1 -1
- package/dist/index.umd.js +44 -44
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
package/dist/index.es.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var g = (e, t, o) =>
|
|
4
|
-
import { Vector3 as b, MathUtils as
|
|
5
|
-
function
|
|
1
|
+
var It = Object.defineProperty;
|
|
2
|
+
var Et = (e, t, o) => t in e ? It(e, t, { enumerable: !0, configurable: !0, writable: !0, value: o }) : e[t] = o;
|
|
3
|
+
var g = (e, t, o) => Et(e, typeof t != "symbol" ? t + "" : t, o);
|
|
4
|
+
import { Vector3 as b, MathUtils as z, Quaternion as At, InstancedMesh as at, SphereGeometry as U, MeshStandardMaterial as y, Matrix4 as H, BufferGeometry as A, Float32BufferAttribute as D, DoubleSide as k, Euler as St, BufferAttribute as L, BoxGeometry as E, ConeGeometry as Y, CylinderGeometry as S, Vector2 as I, LatheGeometry as Z, CircleGeometry as Pt, TorusGeometry as dt, DodecahedronGeometry as it, Mesh as M, ShaderMaterial as J, Group as B, Shape as j, ExtrudeGeometry as Q, MeshBasicMaterial as Tt, PointLight as pt, MeshPhysicalMaterial as W, CatmullRomCurve3 as Gt, TubeGeometry as Ct, Path as Bt, Color as $, BackSide as ct, DataTexture as Rt, RGBAFormat as Nt, UnsignedByteType as Ut, RepeatWrapping as ht, NearestFilter as _t, Box3 as lt } from "three";
|
|
5
|
+
function mo(e, t, o, n) {
|
|
6
6
|
const r = e.position.clone(), s = r.clone().add(e.getWorldDirection(new b()).multiplyScalar(-t));
|
|
7
7
|
let a = null;
|
|
8
8
|
function i(c) {
|
|
@@ -16,7 +16,7 @@ function ro(e, t, o, n) {
|
|
|
16
16
|
}
|
|
17
17
|
requestAnimationFrame(i);
|
|
18
18
|
}
|
|
19
|
-
function
|
|
19
|
+
function fo(e, t, o, n) {
|
|
20
20
|
const r = t.length - 1;
|
|
21
21
|
let s = null;
|
|
22
22
|
function a(i) {
|
|
@@ -26,12 +26,12 @@ function ao(e, t, o, n) {
|
|
|
26
26
|
e.position.copy(t[t.length - 1]), n && n();
|
|
27
27
|
return;
|
|
28
28
|
}
|
|
29
|
-
const u = l * r,
|
|
30
|
-
e.position.lerpVectors(f,
|
|
29
|
+
const u = l * r, h = Math.floor(u), m = u - h, f = t[h], d = t[h + 1];
|
|
30
|
+
e.position.lerpVectors(f, d, m), e.lookAt(d), requestAnimationFrame(a);
|
|
31
31
|
}
|
|
32
32
|
requestAnimationFrame(a);
|
|
33
33
|
}
|
|
34
|
-
function
|
|
34
|
+
function po(e, t, o, n, r) {
|
|
35
35
|
let s = null;
|
|
36
36
|
function a(i) {
|
|
37
37
|
s || (s = i);
|
|
@@ -40,17 +40,17 @@ function io(e, t, o, n, r) {
|
|
|
40
40
|
r && r();
|
|
41
41
|
return;
|
|
42
42
|
}
|
|
43
|
-
const u = l * Math.PI * 2,
|
|
44
|
-
e.position.set(
|
|
43
|
+
const u = l * Math.PI * 2, h = t.x + o * Math.cos(u), m = t.z + o * Math.sin(u);
|
|
44
|
+
e.position.set(h, e.position.y, m), e.lookAt(t), requestAnimationFrame(a);
|
|
45
45
|
}
|
|
46
46
|
requestAnimationFrame(a);
|
|
47
47
|
}
|
|
48
|
-
function
|
|
48
|
+
function Mo(e, t, o, n, r, s) {
|
|
49
49
|
let a = null, i = 0;
|
|
50
50
|
function c(l) {
|
|
51
51
|
a === null && (a = l);
|
|
52
|
-
const u = l - a,
|
|
53
|
-
if (e.position.set(
|
|
52
|
+
const u = l - a, h = n / r, m = u % h / h, f = Math.sin(m * Math.PI * 2) * Math.PI / 6, d = t.x + o * Math.sin(f), p = t.z + o * Math.cos(f);
|
|
53
|
+
if (e.position.set(d, e.position.y, p), e.lookAt(t), u >= (i + 1) * h && i++, i >= r) {
|
|
54
54
|
s && s();
|
|
55
55
|
return;
|
|
56
56
|
}
|
|
@@ -58,21 +58,21 @@ function co(e, t, o, n, r, s) {
|
|
|
58
58
|
}
|
|
59
59
|
requestAnimationFrame(c);
|
|
60
60
|
}
|
|
61
|
-
function
|
|
61
|
+
function yo(e, t, o, n, r, s, a) {
|
|
62
62
|
let i = null;
|
|
63
63
|
function c(l) {
|
|
64
64
|
i === null && (i = l);
|
|
65
|
-
const
|
|
66
|
-
if (
|
|
65
|
+
const h = (l - i) / s;
|
|
66
|
+
if (h >= 1) {
|
|
67
67
|
a && a();
|
|
68
68
|
return;
|
|
69
69
|
}
|
|
70
|
-
const
|
|
71
|
-
e.position.set(f,
|
|
70
|
+
const m = h * Math.PI * 2 * r, f = t.x + o * Math.cos(m), d = t.z + o * Math.sin(m), p = t.y + n * h;
|
|
71
|
+
e.position.set(f, p, d), e.lookAt(t), requestAnimationFrame(c);
|
|
72
72
|
}
|
|
73
73
|
requestAnimationFrame(c);
|
|
74
74
|
}
|
|
75
|
-
function
|
|
75
|
+
function wo(e, t, o, n) {
|
|
76
76
|
const r = e.position.clone();
|
|
77
77
|
let s = null;
|
|
78
78
|
function a(i) {
|
|
@@ -89,29 +89,29 @@ function uo(e, t, o, n) {
|
|
|
89
89
|
}
|
|
90
90
|
requestAnimationFrame(a);
|
|
91
91
|
}
|
|
92
|
-
function
|
|
92
|
+
function vo(e, t, o, n, r, s) {
|
|
93
93
|
const a = e.fov;
|
|
94
94
|
e.fov = o, e.updateProjectionMatrix();
|
|
95
95
|
let i = null;
|
|
96
96
|
function c(l) {
|
|
97
97
|
i === null && (i = l);
|
|
98
|
-
const
|
|
99
|
-
if (
|
|
98
|
+
const h = (l - i) / r;
|
|
99
|
+
if (h >= 1) {
|
|
100
100
|
e.fov = n, e.updateProjectionMatrix(), e.lookAt(t), e.fov = a, e.updateProjectionMatrix(), s && s();
|
|
101
101
|
return;
|
|
102
102
|
}
|
|
103
|
-
e.fov =
|
|
103
|
+
e.fov = z.lerp(o, n, h), e.updateProjectionMatrix(), e.lookAt(t), requestAnimationFrame(c);
|
|
104
104
|
}
|
|
105
105
|
requestAnimationFrame(c);
|
|
106
106
|
}
|
|
107
|
-
const
|
|
107
|
+
const tt = {
|
|
108
108
|
UP: new b(0, 1, 0),
|
|
109
109
|
DOWN: new b(0, -1, 0),
|
|
110
110
|
LEFT: new b(-1, 0, 0),
|
|
111
111
|
RIGHT: new b(1, 0, 0),
|
|
112
112
|
FORWARD: new b(0, 0, 1),
|
|
113
113
|
BACKWARD: new b(0, 0, -1)
|
|
114
|
-
},
|
|
114
|
+
}, K = {
|
|
115
115
|
LINEAR: (e, t) => 1 - e / t,
|
|
116
116
|
QUADRATIC: (e, t) => Math.pow(1 - e / t, 2),
|
|
117
117
|
SQUARE_ROOT: (e, t) => Math.pow(1 - e / t, 0.5),
|
|
@@ -125,79 +125,79 @@ const W = {
|
|
|
125
125
|
const o = Math.max(0, Math.min(1, 1 - e / t));
|
|
126
126
|
return o * o * (3 - 2 * o);
|
|
127
127
|
}
|
|
128
|
-
},
|
|
128
|
+
}, xo = (e, t, o, n, r = tt.UP, s = K.LINEAR) => {
|
|
129
129
|
const a = e.attributes.position;
|
|
130
130
|
for (let i = 0; i < a.count; i++) {
|
|
131
131
|
const c = new b();
|
|
132
132
|
c.fromBufferAttribute(a, i);
|
|
133
133
|
const l = c.distanceTo(t);
|
|
134
134
|
if (l < o) {
|
|
135
|
-
const
|
|
136
|
-
c.add(r.clone().multiplyScalar(
|
|
135
|
+
const h = s(l, o) * n;
|
|
136
|
+
c.add(r.clone().multiplyScalar(h)), a.setXYZ(i, c.x, c.y, c.z);
|
|
137
137
|
}
|
|
138
138
|
}
|
|
139
139
|
a.needsUpdate = !0;
|
|
140
|
-
},
|
|
140
|
+
}, go = (e, t, o, n, r, s = tt.UP, a = K.LINEAR) => {
|
|
141
141
|
const i = e.attributes.position;
|
|
142
142
|
for (let c = 0; c < i.count; c++) {
|
|
143
143
|
const l = new b();
|
|
144
144
|
l.fromBufferAttribute(i, c);
|
|
145
145
|
const u = l.distanceTo(t);
|
|
146
146
|
if (u < o) {
|
|
147
|
-
const
|
|
148
|
-
l.add(s.clone().multiplyScalar(
|
|
147
|
+
const m = a(u, o) * r, f = l.dot(s.normalize()), d = n - f;
|
|
148
|
+
l.add(s.clone().multiplyScalar(d * m)), i.setXYZ(c, l.x, l.y, l.z);
|
|
149
149
|
}
|
|
150
150
|
}
|
|
151
151
|
i.needsUpdate = !0;
|
|
152
|
-
},
|
|
152
|
+
}, bo = (e, t, o, n, r = tt.UP, s = K.LINEAR) => {
|
|
153
153
|
const a = e.attributes.position;
|
|
154
154
|
for (let i = 0; i < a.count; i++) {
|
|
155
155
|
const c = new b();
|
|
156
156
|
c.fromBufferAttribute(a, i);
|
|
157
157
|
const l = c.distanceTo(t);
|
|
158
158
|
if (l < o) {
|
|
159
|
-
const u = s(l, o),
|
|
160
|
-
c.x +=
|
|
159
|
+
const u = s(l, o), h = n * u, m = r.clone().normalize();
|
|
160
|
+
c.x += z.randFloatSpread(h) * m.x, c.y += z.randFloatSpread(h) * m.y, c.z += z.randFloatSpread(h) * m.z, a.setXYZ(i, c.x, c.y, c.z);
|
|
161
161
|
}
|
|
162
162
|
}
|
|
163
163
|
a.needsUpdate = !0;
|
|
164
|
-
},
|
|
164
|
+
}, Io = (e, t, o, n) => {
|
|
165
165
|
const r = e.attributes.position, s = new b();
|
|
166
166
|
for (let a = 0; a < r.count; a++) {
|
|
167
167
|
const i = new b();
|
|
168
168
|
if (i.fromBufferAttribute(r, a), i.distanceTo(t) < o) {
|
|
169
169
|
let l = new b(), u = 0;
|
|
170
|
-
for (let
|
|
171
|
-
s.fromBufferAttribute(r,
|
|
170
|
+
for (let h = 0; h < r.count; h++)
|
|
171
|
+
s.fromBufferAttribute(r, h), s.distanceTo(i) < o && (l.add(s), u++);
|
|
172
172
|
u > 0 && (l.divideScalar(u), i.lerp(l, n), r.setXYZ(a, i.x, i.y, i.z));
|
|
173
173
|
}
|
|
174
174
|
}
|
|
175
175
|
r.needsUpdate = !0;
|
|
176
|
-
},
|
|
176
|
+
}, Eo = (e, t, o, n, r = !1, s = K.LINEAR) => {
|
|
177
177
|
const a = e.attributes.position;
|
|
178
178
|
for (let i = 0; i < a.count; i++) {
|
|
179
179
|
const c = new b();
|
|
180
180
|
c.fromBufferAttribute(a, i);
|
|
181
181
|
const l = c.distanceTo(t);
|
|
182
182
|
if (l < o) {
|
|
183
|
-
const
|
|
184
|
-
c.add(
|
|
183
|
+
const h = s(l, o) * n * (r ? -1 : 1), m = c.clone().sub(t).normalize();
|
|
184
|
+
c.add(m.multiplyScalar(h)), a.setXYZ(i, c.x, c.y, c.z);
|
|
185
185
|
}
|
|
186
186
|
}
|
|
187
187
|
a.needsUpdate = !0;
|
|
188
|
-
},
|
|
189
|
-
const a = e.attributes.position, i = new
|
|
188
|
+
}, Ao = (e, t, o, n, r = tt.UP, s = K.LINEAR) => {
|
|
189
|
+
const a = e.attributes.position, i = new At();
|
|
190
190
|
for (let c = 0; c < a.count; c++) {
|
|
191
191
|
const l = new b();
|
|
192
192
|
l.fromBufferAttribute(a, c);
|
|
193
193
|
const u = l.distanceTo(t);
|
|
194
194
|
if (u < o) {
|
|
195
|
-
const
|
|
196
|
-
i.setFromAxisAngle(r,
|
|
195
|
+
const m = s(u, o) * n;
|
|
196
|
+
i.setFromAxisAngle(r, m), l.sub(t).applyQuaternion(i).add(t), a.setXYZ(c, l.x, l.y, l.z);
|
|
197
197
|
}
|
|
198
198
|
}
|
|
199
199
|
a.needsUpdate = !0;
|
|
200
|
-
},
|
|
200
|
+
}, ut = {
|
|
201
201
|
X: new b(1, 0, 0),
|
|
202
202
|
Y: new b(0, 1, 0),
|
|
203
203
|
Z: new b(0, 0, 1),
|
|
@@ -205,77 +205,188 @@ const W = {
|
|
|
205
205
|
XZ: new b(1, 0, 1).normalize(),
|
|
206
206
|
YZ: new b(0, 1, 1).normalize(),
|
|
207
207
|
XYZ: new b(1, 1, 1).normalize()
|
|
208
|
-
},
|
|
209
|
-
|
|
210
|
-
|
|
208
|
+
}, mt = {
|
|
209
|
+
// Red
|
|
210
|
+
CARDINAL_RED: 12981270,
|
|
211
|
+
// Bright Crimson or Cardinal Red. It’s a vivid, bold red shade with warm undertones.
|
|
212
|
+
CHERRY_RED: 14165028,
|
|
213
|
+
// Bold red with slightly warm undertones.
|
|
214
|
+
CRIMSON: 12986408,
|
|
215
|
+
// Crimson Red or Firebrick Red. It’s a bold, deep red with a slightly cool undertone.
|
|
216
|
+
RUST: 12731693,
|
|
217
|
+
// Red clay or Brick Red. It’s a warm, earthy red-orange shade, often associated with weathered metal, autumn leaves, or natural clay tones.
|
|
218
|
+
DARK_RED: 9109504,
|
|
219
|
+
// Dark Red. It’s a deep, rich red shade resembling the color of garnets or dried blood.
|
|
220
|
+
// Orange
|
|
221
|
+
TANGERINE: 16733440,
|
|
222
|
+
// Tangerine or Bright Orange-Red. It’s a vibrant, warm shade of orange with red undertones with a tropical feel.
|
|
223
|
+
ORANGE_PEEL: 16737792,
|
|
224
|
+
// Orange Peel or Bright Orange. It’s a vivid, energetic orange.
|
|
225
|
+
ORANGE: 16753920,
|
|
226
|
+
// Bright, vibrant hue associated with sunsets, citrus fruits, and autumn tones.
|
|
227
|
+
// Yellow
|
|
228
|
+
AMBER: 16755200,
|
|
229
|
+
// Bright Orange. It’s a warm, vibrant shade of orange with golden-yellow undertones, associated with autumn hues.
|
|
230
|
+
GOLD: 16766720,
|
|
231
|
+
// Rich, vibrant yellow with warm undertones, resembling the color of metallic gold.
|
|
232
|
+
YELLOW: 16776960,
|
|
233
|
+
// Bright, pure yellow shade.
|
|
234
|
+
// Green
|
|
235
|
+
LIME_GREEN: 10798080,
|
|
236
|
+
// Lime Green or Bright Chartreuse. It’s a vivid, energetic yellow-green shade
|
|
237
|
+
SPRING_GREEN: 8965205,
|
|
238
|
+
// Fresh, vibrant appearance, resembling new leaves or spring foliage
|
|
239
|
+
MOSS_GREEN: 8956467,
|
|
240
|
+
// Medium-light shade of green with yellow undertones, often seen in natural foliage.
|
|
241
|
+
FERN_GREEN: 4950843,
|
|
242
|
+
// It's a natural, medium-dark green with slightly muted tones, resembling the lush greenery of ferns or foliage.
|
|
243
|
+
FOREST_GREEN: 2263842,
|
|
244
|
+
// Rich, deep green shade, often associated with dense woodland and nature.
|
|
245
|
+
OLIVE_DRAB: 5597999,
|
|
246
|
+
// Muted earthy green with brownish undertones.
|
|
247
|
+
MINT_GREEN: 8965290,
|
|
248
|
+
// Mint Green or Light Jade. It’s a soft, pastel green with subtle blue undertones.
|
|
249
|
+
AQUAMARINE: 65450,
|
|
250
|
+
// Aquamarine or Mint Green. It’s a bright, vibrant turquoise shade that blends green and blue.
|
|
251
|
+
// Blue
|
|
252
|
+
SKY_BLUE: 8965375,
|
|
253
|
+
// Sky Blue or Baby Blue. It’s a light, cheerful shade of blue with a slightly soft and pastel tone, evoking a sense of openness like a clear daytime sky.
|
|
254
|
+
CERULEAN_BLUE: 6139362,
|
|
255
|
+
// Cerulean Blue or Sky Blue. It’s a bright, vivid shade of blue with a slightly cool undertone, often associated with clear skies or tropical waters.
|
|
256
|
+
AZURE: 30719,
|
|
257
|
+
// Azure Blue or Bright Blue. It’s a vibrant, rich shade of blue with a cool undertone, often associated with clear skies or digital interfaces.
|
|
258
|
+
OCEAN_BLUE: 30654,
|
|
259
|
+
// Ocean Blue or Azure Blue. It’s a vibrant medium blue shade with a slight teal undertone, often associated with clear skies or tropical waters.
|
|
260
|
+
ROYAL_BLUE: 5592575,
|
|
261
|
+
// Royal Blue or Bright Indigo. It’s a vibrant medium blue shade with a slightly cool and saturated tone.
|
|
262
|
+
MIDNIGHT_BLUE: 51,
|
|
263
|
+
// A very deep, dark blue shade that evokes the feeling of a starless night sky or deep ocean depths, with subtle blue undertones.
|
|
264
|
+
// Purple
|
|
265
|
+
CORAL_PINK: 16724838,
|
|
266
|
+
// Bright Rose or Coral Pink. It’s a vivid, bold pinkish-red shade with warm undertones.
|
|
267
|
+
VIVID_MAGENTA: 16720639,
|
|
268
|
+
// It's an intense, electric shade of pink with equal parts red and blue.
|
|
269
|
+
MAGENTA: 16711935,
|
|
270
|
+
// Bright, vivid hue that is a mix of equal parts red and blue, sometimes called Fuchsia.
|
|
271
|
+
HOT_PINK: 16711850,
|
|
272
|
+
// Hot Pink or Fuchsia Rose. It’s a vivid and bold pink with a magenta undertone.
|
|
273
|
+
PINK_SHERBET: 16751052,
|
|
274
|
+
// Pink Sherbet or Light Pink. It’s a soft, playful pink shade with a hint of warmth.
|
|
275
|
+
SOFT_PINK: 16762823,
|
|
276
|
+
// Blush Pink or Soft Pink. It’s a pale, delicate pink with warm undertones.
|
|
277
|
+
DEEP_VIOLET: 11141375,
|
|
278
|
+
// Electric Purple or Deep Violet. It’s a bright, vibrant shade of purple with a strong blue undertone.
|
|
279
|
+
// Brown
|
|
280
|
+
TAUPE: 9141627,
|
|
281
|
+
// Rosy Brown or Taupe Gray. It’s a muted, earthy tone with a mix of brown and gray.
|
|
282
|
+
SIENNA: 9132587,
|
|
283
|
+
// Dark Goldenrod Brown. It’s a warm, earthy brown with reddish and golden undertones, often associated with natural clay or autumn leaves.
|
|
284
|
+
SADDLE_BROWN: 9127187,
|
|
285
|
+
// Rich, earthy brown with reddish undertones, often associated with leather, wood, or other natural materials.
|
|
286
|
+
COFFEE_BROWN: 6045747,
|
|
287
|
+
// Rich, earthy tone with hints of red and gray, resembling the color of natural wood or dark leather.
|
|
288
|
+
DARK_UMBER: 4929057,
|
|
289
|
+
// Coffee Brown or Dark Umber. It’s a deep, rich brown with warm, earthy undertones, often resembling dark wood or roasted coffee beans.
|
|
290
|
+
// Gray
|
|
291
|
+
ONYX: 197379,
|
|
292
|
+
// Extremely deep, almost black shade with a neutral tone.
|
|
293
|
+
CARBON: 3026478,
|
|
294
|
+
// Deep, neutral gray.
|
|
295
|
+
CHARCOAL: 3355443,
|
|
296
|
+
// Rich, neutral gray.
|
|
297
|
+
SLATE_GRAY: 4210752,
|
|
298
|
+
// Medium-dark shade of gray
|
|
299
|
+
ASH_GRAY: 4473924,
|
|
300
|
+
// Ash Gray or Dark Slate Gray.
|
|
301
|
+
STEEL_GRAY: 5592405,
|
|
302
|
+
// Medium Gray or Steel Gray.
|
|
303
|
+
COOL_GRAY: 6710886,
|
|
304
|
+
// It’s a medium-dark neutral gray.
|
|
305
|
+
IRON: 7829367,
|
|
306
|
+
// It’s a medium gray neutral.
|
|
307
|
+
GRAY: 8421504,
|
|
308
|
+
// It is a neutral, medium-gray tone that sits exactly halfway between black and white.
|
|
309
|
+
STONE: 8947848,
|
|
310
|
+
// It’s a medium-light neutral.
|
|
311
|
+
SILVER: 11184810,
|
|
312
|
+
// Light Gray. It’s a soft, pale gray shade with a slightly metallic undertone.
|
|
313
|
+
PALE_GRAY: 15658734,
|
|
314
|
+
// Very Light Gray or Soft Gray. It’s a pale, almost white shade of gray.
|
|
315
|
+
WHITE_SMOKE: 16119285,
|
|
316
|
+
// White Smoke or Light Gray. It’s a soft, pale gray shade with a hint of warmth.
|
|
317
|
+
WHITE: 16777215
|
|
318
|
+
// Pure white, the brightest color possible.
|
|
319
|
+
}, Ot = (e) => 1 - Math.cos(e * Math.PI / 2), zt = (e) => Math.sin(e * Math.PI / 2), Ft = (e) => -0.5 * (Math.cos(Math.PI * e) - 1), Lt = (e) => e * e, kt = (e) => 1 - Math.pow(1 - e, 2), Dt = (e) => e < 0.5 ? 2 * e * e : 1 - Math.pow(-2 * e + 2, 2) / 2, qt = (e) => e * e * e, Vt = (e) => 1 - Math.pow(1 - e, 3), Ht = (e) => e < 0.5 ? 4 * e * e * e : 1 - Math.pow(-2 * e + 2, 3) / 2, Xt = (e) => e * e * e * e, Yt = (e) => 1 - Math.pow(1 - e, 4), Zt = (e) => e < 0.5 ? 8 * e * e * e * e : 1 - Math.pow(-2 * e + 2, 4) / 2, jt = (e) => e * e * e * e * e, Qt = (e) => 1 - Math.pow(1 - e, 5), Kt = (e) => e < 0.5 ? 16 * e * e * e * e * e : 1 - Math.pow(-2 * e + 2, 5) / 2, $t = (e) => e === 0 ? 0 : Math.pow(2, 10 * e - 10), Jt = (e) => e === 1 ? 1 : 1 - Math.pow(2, -10 * e), Wt = (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, te = (e) => 1 - Math.sqrt(1 - Math.pow(e, 2)), ee = (e) => Math.sqrt(1 - Math.pow(e - 1, 2)), oe = (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, ne = (e) => e, se = (e) => e * e * (3 - 2 * e), re = (e) => 1 - Math.pow(1 - e, 0.3), ae = (e) => Math.pow(e, 0.3), ie = (e) => Math.log(Math.max(0.01, e)) / Math.log(2), ce = (e) => Math.sqrt(e), le = (e) => 1 - e, ue = (e) => Math.exp(-Math.pow(e - 0.5, 2) / (2 * 0.5)), So = {
|
|
320
|
+
SINE_EASE_IN: Ot,
|
|
321
|
+
SINE_EASE_OUT: zt,
|
|
211
322
|
SINE_EASE_IN_OUT: Ft,
|
|
212
|
-
QUADRATIC_EASE_IN:
|
|
213
|
-
QUADRATIC_EASE_OUT:
|
|
214
|
-
QUADRATIC_EASE_IN_OUT:
|
|
215
|
-
CUBIC_EASE_IN:
|
|
216
|
-
CUBIC_EASE_OUT:
|
|
217
|
-
CUBIC_EASE_IN_OUT:
|
|
218
|
-
QUARTIC_EASE_IN:
|
|
219
|
-
QUARTIC_EASE_OUT:
|
|
323
|
+
QUADRATIC_EASE_IN: Lt,
|
|
324
|
+
QUADRATIC_EASE_OUT: kt,
|
|
325
|
+
QUADRATIC_EASE_IN_OUT: Dt,
|
|
326
|
+
CUBIC_EASE_IN: qt,
|
|
327
|
+
CUBIC_EASE_OUT: Vt,
|
|
328
|
+
CUBIC_EASE_IN_OUT: Ht,
|
|
329
|
+
QUARTIC_EASE_IN: Xt,
|
|
330
|
+
QUARTIC_EASE_OUT: Yt,
|
|
220
331
|
QUARTIC_EASE_IN_OUT: Zt,
|
|
221
|
-
QUINTIC_EASE_IN:
|
|
222
|
-
QUINTIC_EASE_OUT:
|
|
223
|
-
QUINTIC_EASE_IN_OUT:
|
|
224
|
-
EXPONENTIAL_EASE_IN:
|
|
225
|
-
EXPONENTIAL_EASE_OUT:
|
|
226
|
-
EXPONENTIAL_EASE_IN_OUT:
|
|
227
|
-
CIRCULAR_EASE_IN:
|
|
228
|
-
CIRCULAR_EASE_OUT:
|
|
229
|
-
CIRCULAR_EASE_IN_OUT:
|
|
230
|
-
LINEAR:
|
|
231
|
-
SMOOTHSTEP:
|
|
232
|
-
CONCAVE:
|
|
233
|
-
CONVEX:
|
|
234
|
-
LOGARITHMIC:
|
|
235
|
-
SQUARE_ROOT:
|
|
236
|
-
INVERSE:
|
|
237
|
-
GAUSSIAN:
|
|
238
|
-
},
|
|
332
|
+
QUINTIC_EASE_IN: jt,
|
|
333
|
+
QUINTIC_EASE_OUT: Qt,
|
|
334
|
+
QUINTIC_EASE_IN_OUT: Kt,
|
|
335
|
+
EXPONENTIAL_EASE_IN: $t,
|
|
336
|
+
EXPONENTIAL_EASE_OUT: Jt,
|
|
337
|
+
EXPONENTIAL_EASE_IN_OUT: Wt,
|
|
338
|
+
CIRCULAR_EASE_IN: te,
|
|
339
|
+
CIRCULAR_EASE_OUT: ee,
|
|
340
|
+
CIRCULAR_EASE_IN_OUT: oe,
|
|
341
|
+
LINEAR: ne,
|
|
342
|
+
SMOOTHSTEP: se,
|
|
343
|
+
CONCAVE: re,
|
|
344
|
+
CONVEX: ae,
|
|
345
|
+
LOGARITHMIC: ie,
|
|
346
|
+
SQUARE_ROOT: ce,
|
|
347
|
+
INVERSE: le,
|
|
348
|
+
GAUSSIAN: ue
|
|
349
|
+
}, he = (e, t, o, n, r) => {
|
|
239
350
|
const s = Math.max(0, Math.min(1, e)), a = 1 - s;
|
|
240
351
|
return a * a * a * t + 3 * a * a * s * o + 3 * a * s * s * n + s * s * s * r;
|
|
241
|
-
},
|
|
352
|
+
}, me = (e, t = 1) => {
|
|
242
353
|
const o = Math.max(1e-3, t);
|
|
243
354
|
return (1 - Math.exp(-o * e)) / (1 - Math.exp(-o));
|
|
244
|
-
},
|
|
355
|
+
}, fe = (e, t = 1, o = 1) => {
|
|
245
356
|
const n = Math.max(0, Math.min(1, e));
|
|
246
357
|
return t * Math.pow(n, o);
|
|
247
|
-
},
|
|
358
|
+
}, de = (e, t = 1, o = 1) => {
|
|
248
359
|
const n = Math.max(1e-3, Math.min(1, e));
|
|
249
360
|
return t * Math.log(o * n + 1);
|
|
250
|
-
},
|
|
361
|
+
}, pe = (e, t = 1, o = 0, n = 0) => {
|
|
251
362
|
const r = Math.max(0, Math.min(1, e));
|
|
252
363
|
return t * r * r + o * r + n;
|
|
253
|
-
},
|
|
364
|
+
}, Me = (e, t, o, n) => {
|
|
254
365
|
const r = Math.max(0, Math.min(1, e)), s = 1 - r;
|
|
255
366
|
return s * s * t + 2 * s * r * o + r * r * n;
|
|
256
|
-
},
|
|
367
|
+
}, ye = (e, t = 10) => {
|
|
257
368
|
const o = Math.max(0, Math.min(1, e));
|
|
258
369
|
return 1 / (1 + Math.exp(-t * (o - 0.5)));
|
|
259
|
-
},
|
|
260
|
-
CUBIC:
|
|
261
|
-
DAMPED:
|
|
262
|
-
EXPONENTIAL:
|
|
263
|
-
LOGARITHMIC:
|
|
264
|
-
PARABOLIC:
|
|
265
|
-
QUADRATIC:
|
|
266
|
-
SIGMOID:
|
|
267
|
-
SINUSOIDAL:
|
|
370
|
+
}, we = (e) => Math.sin(e * Math.PI * 0.5), F = {
|
|
371
|
+
CUBIC: he,
|
|
372
|
+
DAMPED: me,
|
|
373
|
+
EXPONENTIAL: fe,
|
|
374
|
+
LOGARITHMIC: de,
|
|
375
|
+
PARABOLIC: pe,
|
|
376
|
+
QUADRATIC: Me,
|
|
377
|
+
SIGMOID: ye,
|
|
378
|
+
SINUSOIDAL: we
|
|
268
379
|
};
|
|
269
|
-
class
|
|
380
|
+
class Po extends at {
|
|
270
381
|
constructor(o = {}) {
|
|
271
382
|
const {
|
|
272
383
|
count: n = 20,
|
|
273
384
|
width: r = 1.5,
|
|
274
385
|
height: s = 3,
|
|
275
386
|
depth: a = 1.5,
|
|
276
|
-
geometry: i = new
|
|
387
|
+
geometry: i = new U(0.1, 6, 6),
|
|
277
388
|
// Small spheres
|
|
278
|
-
material: c = new
|
|
389
|
+
material: c = new y({
|
|
279
390
|
color: 16777215,
|
|
280
391
|
transparent: !0,
|
|
281
392
|
opacity: 0.6,
|
|
@@ -303,7 +414,7 @@ class xo extends rt {
|
|
|
303
414
|
* Updates the position of a specific bubble instance in the InstancedMesh.
|
|
304
415
|
*/
|
|
305
416
|
updateInstanceMatrix(o) {
|
|
306
|
-
const n = this.bubblePositions[o], r = new
|
|
417
|
+
const n = this.bubblePositions[o], r = new H().setPosition(n);
|
|
307
418
|
this.setMatrixAt(o, r), this.instanceMatrix.needsUpdate = !0;
|
|
308
419
|
}
|
|
309
420
|
/**
|
|
@@ -317,7 +428,7 @@ class xo extends rt {
|
|
|
317
428
|
}
|
|
318
429
|
}
|
|
319
430
|
}
|
|
320
|
-
class
|
|
431
|
+
class To {
|
|
321
432
|
constructor(t) {
|
|
322
433
|
g(this, "speed");
|
|
323
434
|
g(this, "maxIntensity");
|
|
@@ -346,7 +457,7 @@ class go {
|
|
|
346
457
|
this.material.emissiveIntensity = this.minIntensity + Math.abs(Math.sin(t * this.speed)) * (this.maxIntensity - this.minIntensity);
|
|
347
458
|
}
|
|
348
459
|
}
|
|
349
|
-
class
|
|
460
|
+
class ve extends A {
|
|
350
461
|
constructor(t = 0.1) {
|
|
351
462
|
super();
|
|
352
463
|
const o = [], n = [], r = [
|
|
@@ -374,24 +485,24 @@ class Me extends S {
|
|
|
374
485
|
for (let a = 1; a < r.length - 1; a++)
|
|
375
486
|
n.push(0, a, a + 1);
|
|
376
487
|
n.push(0, r.length - 1, 1);
|
|
377
|
-
const s = new
|
|
488
|
+
const s = new D(o, 3);
|
|
378
489
|
this.setAttribute("position", s), this.setIndex(n), this.computeVertexNormals();
|
|
379
490
|
}
|
|
380
491
|
}
|
|
381
|
-
class
|
|
492
|
+
class Go extends at {
|
|
382
493
|
constructor(o = {}) {
|
|
383
494
|
const {
|
|
384
495
|
count: n = 200,
|
|
385
496
|
width: r = 20,
|
|
386
497
|
height: s = 10,
|
|
387
498
|
depth: a = 20,
|
|
388
|
-
geometry: i = new
|
|
389
|
-
material: c = new
|
|
499
|
+
geometry: i = new ve(),
|
|
500
|
+
material: c = new y({
|
|
390
501
|
color: 8956467,
|
|
391
502
|
metalness: 0.1,
|
|
392
503
|
roughness: 0.8,
|
|
393
504
|
flatShading: !0,
|
|
394
|
-
side:
|
|
505
|
+
side: k
|
|
395
506
|
})
|
|
396
507
|
} = o;
|
|
397
508
|
super(i, c, n);
|
|
@@ -400,10 +511,10 @@ class bo extends rt {
|
|
|
400
511
|
g(this, "width");
|
|
401
512
|
g(this, "height");
|
|
402
513
|
g(this, "depth");
|
|
403
|
-
this.dummyMatrix = new
|
|
514
|
+
this.dummyMatrix = new H(), this.velocities = [], this.width = r, this.height = s, this.depth = a;
|
|
404
515
|
for (let l = 0; l < n; l++) {
|
|
405
|
-
const u = (Math.random() - 0.5) * r,
|
|
406
|
-
this.dummyMatrix.makeRotationFromEuler(new
|
|
516
|
+
const u = (Math.random() - 0.5) * r, h = Math.random() * (s - 1) + 0.5, m = (Math.random() - 0.5) * a, f = (Math.random() - 0.5) * Math.PI, d = (Math.random() - 0.5) * Math.PI, p = (Math.random() - 0.5) * Math.PI;
|
|
517
|
+
this.dummyMatrix.makeRotationFromEuler(new St(f, d, p)), this.dummyMatrix.setPosition(u, h, m), this.setMatrixAt(l, this.dummyMatrix);
|
|
407
518
|
const w = new b((Math.random() - 0.5) * 0.01, -5e-3, (Math.random() - 0.5) * 0.01);
|
|
408
519
|
this.velocities.push(w);
|
|
409
520
|
}
|
|
@@ -411,7 +522,7 @@ class bo extends rt {
|
|
|
411
522
|
}
|
|
412
523
|
update() {
|
|
413
524
|
for (let o = 0; o < this.count; o++) {
|
|
414
|
-
const n = new
|
|
525
|
+
const n = new H();
|
|
415
526
|
this.getMatrixAt(o, n);
|
|
416
527
|
const r = new b();
|
|
417
528
|
r.setFromMatrixPosition(n);
|
|
@@ -425,23 +536,23 @@ class bo extends rt {
|
|
|
425
536
|
this.instanceMatrix.needsUpdate = !0;
|
|
426
537
|
}
|
|
427
538
|
}
|
|
428
|
-
function
|
|
539
|
+
function Mt(e = 0, t = 1) {
|
|
429
540
|
return Math.random() * (t - e) + e;
|
|
430
541
|
}
|
|
431
|
-
function
|
|
542
|
+
function Co(e = 0, t = 1) {
|
|
432
543
|
return Math.floor(Math.random() * (t - e + 1)) + e;
|
|
433
544
|
}
|
|
434
|
-
function
|
|
545
|
+
function xe(e = 0.5, t = 0, o = 1) {
|
|
435
546
|
return t + (o - t) * Math.pow(Math.random(), e);
|
|
436
547
|
}
|
|
437
|
-
function
|
|
548
|
+
function ge(e = 0.5, t = 0, o = 1) {
|
|
438
549
|
return t + (o - t) * Math.pow(1 - Math.random(), e);
|
|
439
550
|
}
|
|
440
|
-
function
|
|
551
|
+
function be(e, t, o) {
|
|
441
552
|
const n = t + Math.random() * (o - t);
|
|
442
553
|
return setTimeout(e, n);
|
|
443
554
|
}
|
|
444
|
-
function
|
|
555
|
+
function Bo(e, t, o) {
|
|
445
556
|
let n;
|
|
446
557
|
function r() {
|
|
447
558
|
const s = t + Math.random() * (o - t);
|
|
@@ -451,7 +562,7 @@ function Ao(e, t, o) {
|
|
|
451
562
|
}
|
|
452
563
|
return r(), () => clearTimeout(n);
|
|
453
564
|
}
|
|
454
|
-
class
|
|
565
|
+
class Ro {
|
|
455
566
|
constructor({
|
|
456
567
|
light: t,
|
|
457
568
|
//
|
|
@@ -468,7 +579,7 @@ class So {
|
|
|
468
579
|
this.light = t, this.minIntensity = o, this.maxIntensity = n, this.minDuration = r, this.maxDuration = s;
|
|
469
580
|
}
|
|
470
581
|
triggerLightning() {
|
|
471
|
-
this.light && (this.light.intensity =
|
|
582
|
+
this.light && (this.light.intensity = Mt(this.minIntensity, this.maxIntensity)), be(
|
|
472
583
|
() => {
|
|
473
584
|
this.light && (this.light.intensity = 0);
|
|
474
585
|
},
|
|
@@ -481,33 +592,33 @@ class So {
|
|
|
481
592
|
}
|
|
482
593
|
}
|
|
483
594
|
const T = (e, t) => {
|
|
484
|
-
const o = e[0].index !== null, n = new Set(Object.keys(e[0].attributes)), r = new Set(Object.keys(e[0].morphAttributes)), s = {}, a = {}, i = e[0].morphTargetsRelative, c = new
|
|
595
|
+
const o = e[0].index !== null, n = new Set(Object.keys(e[0].attributes)), r = new Set(Object.keys(e[0].morphAttributes)), s = {}, a = {}, i = e[0].morphTargetsRelative, c = new A();
|
|
485
596
|
let l = 0;
|
|
486
|
-
if (e.forEach((u,
|
|
487
|
-
let
|
|
597
|
+
if (e.forEach((u, h) => {
|
|
598
|
+
let m = 0;
|
|
488
599
|
if (o !== (u.index !== null))
|
|
489
600
|
return console.error(
|
|
490
|
-
"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index " +
|
|
601
|
+
"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index " + h + ". All geometries must have compatible attributes; make sure index attribute exists among all geometries, or in none of them."
|
|
491
602
|
), null;
|
|
492
603
|
for (let f in u.attributes) {
|
|
493
604
|
if (!n.has(f))
|
|
494
605
|
return console.error(
|
|
495
|
-
"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index " +
|
|
606
|
+
"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index " + h + '. All geometries must have compatible attributes; make sure "' + f + '" attribute exists among all geometries, or in none of them.'
|
|
496
607
|
), null;
|
|
497
|
-
s[f] === void 0 && (s[f] = []), s[f].push(u.attributes[f]),
|
|
608
|
+
s[f] === void 0 && (s[f] = []), s[f].push(u.attributes[f]), m++;
|
|
498
609
|
}
|
|
499
|
-
if (
|
|
610
|
+
if (m !== n.size)
|
|
500
611
|
return console.error(
|
|
501
|
-
"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index " +
|
|
612
|
+
"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index " + h + ". Make sure all geometries have the same number of attributes."
|
|
502
613
|
), null;
|
|
503
614
|
if (i !== u.morphTargetsRelative)
|
|
504
615
|
return console.error(
|
|
505
|
-
"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index " +
|
|
616
|
+
"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index " + h + ". .morphTargetsRelative must be consistent throughout all geometries."
|
|
506
617
|
), null;
|
|
507
618
|
for (let f in u.morphAttributes) {
|
|
508
619
|
if (!r.has(f))
|
|
509
620
|
return console.error(
|
|
510
|
-
"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index " +
|
|
621
|
+
"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index " + h + ". .morphAttributes must be consistent throughout all geometries."
|
|
511
622
|
), null;
|
|
512
623
|
a[f] === void 0 && (a[f] = []), a[f].push(u.morphAttributes[f]);
|
|
513
624
|
}
|
|
@@ -519,47 +630,47 @@ const T = (e, t) => {
|
|
|
519
630
|
f = u.attributes.position.count;
|
|
520
631
|
else
|
|
521
632
|
return console.error(
|
|
522
|
-
"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index " +
|
|
633
|
+
"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index " + h + ". The geometry must have either an index or a position attribute"
|
|
523
634
|
), null;
|
|
524
|
-
c.addGroup(l, f,
|
|
635
|
+
c.addGroup(l, f, h), l += f;
|
|
525
636
|
}
|
|
526
637
|
}), o) {
|
|
527
638
|
let u = 0;
|
|
528
|
-
const
|
|
529
|
-
e.forEach((
|
|
530
|
-
const f =
|
|
531
|
-
for (let
|
|
532
|
-
|
|
533
|
-
u +=
|
|
534
|
-
}), c.setIndex(
|
|
639
|
+
const h = [];
|
|
640
|
+
e.forEach((m) => {
|
|
641
|
+
const f = m.index;
|
|
642
|
+
for (let d = 0; d < f.count; ++d)
|
|
643
|
+
h.push(f.getX(d) + u);
|
|
644
|
+
u += m.attributes.position.count;
|
|
645
|
+
}), c.setIndex(h);
|
|
535
646
|
}
|
|
536
647
|
for (let u in s) {
|
|
537
|
-
const
|
|
538
|
-
if (!
|
|
648
|
+
const h = ft(s[u]);
|
|
649
|
+
if (!h)
|
|
539
650
|
return console.error(
|
|
540
651
|
"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed while trying to merge the " + u + " attribute."
|
|
541
652
|
), null;
|
|
542
|
-
c.setAttribute(u,
|
|
653
|
+
c.setAttribute(u, h);
|
|
543
654
|
}
|
|
544
655
|
for (let u in a) {
|
|
545
|
-
const
|
|
546
|
-
if (
|
|
656
|
+
const h = a[u][0].length;
|
|
657
|
+
if (h === 0)
|
|
547
658
|
break;
|
|
548
659
|
c.morphAttributes = c.morphAttributes || {}, c.morphAttributes[u] = [];
|
|
549
|
-
for (let
|
|
660
|
+
for (let m = 0; m < h; ++m) {
|
|
550
661
|
const f = [];
|
|
551
|
-
for (let
|
|
552
|
-
f.push(a[u][
|
|
553
|
-
const
|
|
554
|
-
if (!
|
|
662
|
+
for (let p = 0; p < a[u].length; ++p)
|
|
663
|
+
f.push(a[u][p][m]);
|
|
664
|
+
const d = ft(f);
|
|
665
|
+
if (!d)
|
|
555
666
|
return console.error(
|
|
556
667
|
"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed while trying to merge the " + u + " morphAttribute."
|
|
557
668
|
), null;
|
|
558
|
-
c.morphAttributes[u].push(
|
|
669
|
+
c.morphAttributes[u].push(d);
|
|
559
670
|
}
|
|
560
671
|
}
|
|
561
672
|
return c;
|
|
562
|
-
},
|
|
673
|
+
}, ft = (e) => {
|
|
563
674
|
let t, o, n, r = 0;
|
|
564
675
|
if (e.forEach((s) => {
|
|
565
676
|
if (t === void 0 && (t = s.array.constructor), t !== s.array.constructor)
|
|
@@ -580,59 +691,59 @@ const T = (e, t) => {
|
|
|
580
691
|
let a = 0;
|
|
581
692
|
return e.forEach((i) => {
|
|
582
693
|
s.set(i.array, a), a += i.array.length;
|
|
583
|
-
}), new
|
|
694
|
+
}), new L(s, o, n);
|
|
584
695
|
}
|
|
585
696
|
};
|
|
586
|
-
function
|
|
697
|
+
function Ie(e, t = 1e-4) {
|
|
587
698
|
t = Math.max(t, Number.EPSILON);
|
|
588
699
|
const o = {}, n = e.getIndex(), r = e.getAttribute("position"), s = n ? n.count : r.count;
|
|
589
700
|
let a = 0;
|
|
590
|
-
const i = Object.keys(e.attributes), c = {}, l = {}, u = [],
|
|
591
|
-
for (let
|
|
592
|
-
const v = i[
|
|
701
|
+
const i = Object.keys(e.attributes), c = {}, l = {}, u = [], h = ["getX", "getY", "getZ", "getW"];
|
|
702
|
+
for (let p = 0, w = i.length; p < w; p++) {
|
|
703
|
+
const v = i[p];
|
|
593
704
|
c[v] = [];
|
|
594
705
|
const x = e.morphAttributes[v];
|
|
595
706
|
x && (l[v] = new Array(x.length).fill(0).map(() => []));
|
|
596
707
|
}
|
|
597
|
-
const
|
|
598
|
-
for (let
|
|
599
|
-
const w = n ? n.getX(
|
|
708
|
+
const m = Math.log10(1 / t), f = Math.pow(10, m);
|
|
709
|
+
for (let p = 0; p < s; p++) {
|
|
710
|
+
const w = n ? n.getX(p) : p;
|
|
600
711
|
let v = "";
|
|
601
|
-
for (let x = 0,
|
|
602
|
-
const
|
|
603
|
-
for (let
|
|
604
|
-
v += `${~~(P[
|
|
712
|
+
for (let x = 0, R = i.length; x < R; x++) {
|
|
713
|
+
const N = i[x], P = e.getAttribute(N), G = P.itemSize;
|
|
714
|
+
for (let _ = 0; _ < G; _++)
|
|
715
|
+
v += `${~~(P[h[_]](w) * f)},`;
|
|
605
716
|
}
|
|
606
717
|
if (v in o)
|
|
607
718
|
u.push(o[v]);
|
|
608
719
|
else {
|
|
609
|
-
for (let x = 0,
|
|
610
|
-
const
|
|
611
|
-
for (let
|
|
612
|
-
const V =
|
|
613
|
-
if (
|
|
614
|
-
for (let C = 0,
|
|
615
|
-
|
|
720
|
+
for (let x = 0, R = i.length; x < R; x++) {
|
|
721
|
+
const N = i[x], P = e.getAttribute(N), G = e.morphAttributes[N], _ = P.itemSize, O = c[N], et = l[N];
|
|
722
|
+
for (let q = 0; q < _; q++) {
|
|
723
|
+
const V = h[q];
|
|
724
|
+
if (O.push(P[V](w)), G)
|
|
725
|
+
for (let C = 0, bt = G.length; C < bt; C++)
|
|
726
|
+
et[C].push(G[C][V](w));
|
|
616
727
|
}
|
|
617
728
|
}
|
|
618
729
|
o[v] = a, u.push(a), a++;
|
|
619
730
|
}
|
|
620
731
|
}
|
|
621
|
-
const
|
|
622
|
-
for (let
|
|
623
|
-
const v = i[
|
|
624
|
-
if (
|
|
732
|
+
const d = e.clone();
|
|
733
|
+
for (let p = 0, w = i.length; p < w; p++) {
|
|
734
|
+
const v = i[p], x = e.getAttribute(v), R = new x.array.constructor(c[v]), N = new L(R, x.itemSize, x.normalized);
|
|
735
|
+
if (d.setAttribute(v, N), v in l)
|
|
625
736
|
for (let P = 0; P < l[v].length; P++) {
|
|
626
|
-
const
|
|
627
|
-
|
|
737
|
+
const G = e.morphAttributes[v][P], _ = new G.array.constructor(l[v][P]), O = new L(_, G.itemSize, G.normalized);
|
|
738
|
+
d.morphAttributes[v][P] = O;
|
|
628
739
|
}
|
|
629
740
|
}
|
|
630
|
-
return
|
|
741
|
+
return d.setIndex(u), d;
|
|
631
742
|
}
|
|
632
|
-
class
|
|
743
|
+
class yt extends A {
|
|
633
744
|
constructor(t = 1, o = 1.5, n = 0.5, r = 0.05, s = 0.05) {
|
|
634
745
|
super();
|
|
635
|
-
const a = t, i = o, c = n, l = r, u = s,
|
|
746
|
+
const a = t, i = o, c = n, l = r, u = s, h = [
|
|
636
747
|
// Front cover
|
|
637
748
|
0,
|
|
638
749
|
0,
|
|
@@ -815,7 +926,7 @@ class dt extends S {
|
|
|
815
926
|
a,
|
|
816
927
|
0,
|
|
817
928
|
-c + l
|
|
818
|
-
],
|
|
929
|
+
], m = [
|
|
819
930
|
0,
|
|
820
931
|
0,
|
|
821
932
|
1,
|
|
@@ -998,14 +1109,14 @@ class dt extends S {
|
|
|
998
1109
|
0,
|
|
999
1110
|
0
|
|
1000
1111
|
// Back cover edge
|
|
1001
|
-
], f = t / (t * 2 + n),
|
|
1002
|
-
|
|
1112
|
+
], f = t / (t * 2 + n), d = (t + n) / (t * 2 + n), p = [
|
|
1113
|
+
d,
|
|
1003
1114
|
0,
|
|
1004
1115
|
1,
|
|
1005
1116
|
0,
|
|
1006
1117
|
1,
|
|
1007
1118
|
1,
|
|
1008
|
-
|
|
1119
|
+
d,
|
|
1009
1120
|
1,
|
|
1010
1121
|
// Front cover
|
|
1011
1122
|
0,
|
|
@@ -1019,18 +1130,18 @@ class dt extends S {
|
|
|
1019
1130
|
// Back cover
|
|
1020
1131
|
f,
|
|
1021
1132
|
0,
|
|
1022
|
-
|
|
1133
|
+
d,
|
|
1023
1134
|
0,
|
|
1024
|
-
|
|
1135
|
+
d,
|
|
1025
1136
|
1,
|
|
1026
1137
|
f,
|
|
1027
1138
|
1,
|
|
1028
1139
|
// Spine
|
|
1029
1140
|
1,
|
|
1030
1141
|
0,
|
|
1031
|
-
|
|
1142
|
+
d,
|
|
1032
1143
|
0,
|
|
1033
|
-
|
|
1144
|
+
d,
|
|
1034
1145
|
1,
|
|
1035
1146
|
1,
|
|
1036
1147
|
1,
|
|
@@ -1044,22 +1155,22 @@ class dt extends S {
|
|
|
1044
1155
|
f,
|
|
1045
1156
|
1,
|
|
1046
1157
|
// Inside back cover
|
|
1047
|
-
|
|
1158
|
+
d,
|
|
1048
1159
|
0,
|
|
1049
1160
|
f,
|
|
1050
1161
|
0,
|
|
1051
1162
|
f,
|
|
1052
1163
|
1,
|
|
1053
|
-
|
|
1164
|
+
d,
|
|
1054
1165
|
1,
|
|
1055
1166
|
// Inside spine
|
|
1056
|
-
|
|
1167
|
+
d,
|
|
1057
1168
|
0,
|
|
1058
1169
|
1,
|
|
1059
1170
|
0,
|
|
1060
1171
|
1,
|
|
1061
1172
|
1,
|
|
1062
|
-
|
|
1173
|
+
d,
|
|
1063
1174
|
1,
|
|
1064
1175
|
// Front cover top
|
|
1065
1176
|
0,
|
|
@@ -1224,13 +1335,13 @@ class dt extends S {
|
|
|
1224
1335
|
54,
|
|
1225
1336
|
55
|
|
1226
1337
|
// Back cover edge
|
|
1227
|
-
], v = new Float32Array(
|
|
1228
|
-
P.setAttribute("position", new
|
|
1229
|
-
const
|
|
1230
|
-
|
|
1338
|
+
], v = new Float32Array(h), x = new Float32Array(m), R = new Float32Array(p), N = new Uint16Array(w), P = new A();
|
|
1339
|
+
P.setAttribute("position", new L(v, 3)), P.setAttribute("normal", new L(x, 3)), P.setAttribute("uv", new L(R, 2)), P.setIndex(new L(N, 1));
|
|
1340
|
+
const G = new E(t - l - u, i - u * 2, c - l * 2);
|
|
1341
|
+
G.translate((t - l - u) / 2 + l, i / 2, -c / 2), this.copy(T([P, G], !0));
|
|
1231
1342
|
}
|
|
1232
1343
|
}
|
|
1233
|
-
function
|
|
1344
|
+
function wt({
|
|
1234
1345
|
scaleXMin: e = 0.4,
|
|
1235
1346
|
scaleXMax: t = 0.7,
|
|
1236
1347
|
scaleYMin: o = 0.3,
|
|
@@ -1239,25 +1350,25 @@ function yt({
|
|
|
1239
1350
|
scaleZMax: s = 0.5
|
|
1240
1351
|
} = {}) {
|
|
1241
1352
|
return new b(
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1353
|
+
Mt(e, t),
|
|
1354
|
+
xe(0.25, o, n),
|
|
1355
|
+
ge(0.8, r, s)
|
|
1245
1356
|
);
|
|
1246
1357
|
}
|
|
1247
|
-
function
|
|
1358
|
+
function vt({
|
|
1248
1359
|
coverMaterial: e,
|
|
1249
1360
|
pagesMaterial: t,
|
|
1250
1361
|
scales: o
|
|
1251
1362
|
}) {
|
|
1252
|
-
const n = new
|
|
1363
|
+
const n = new yt(), r = new at(n, [e, t], o.length), s = new H();
|
|
1253
1364
|
let a = 0;
|
|
1254
1365
|
for (let i = 0; i < o.length; i++) {
|
|
1255
|
-
const c = o[i], l = new
|
|
1366
|
+
const c = o[i], l = new H();
|
|
1256
1367
|
l.makeScale(c.x, c.y, c.z), s.identity(), s.multiply(l), s.setPosition(0.01 + Math.random() * 0.1, 0, a + c.z * 0.5), r.setMatrixAt(i, s), a += c.z * 0.5;
|
|
1257
1368
|
}
|
|
1258
1369
|
return r;
|
|
1259
1370
|
}
|
|
1260
|
-
function
|
|
1371
|
+
function No({
|
|
1261
1372
|
coverMaterial: e,
|
|
1262
1373
|
pagesMaterial: t,
|
|
1263
1374
|
count: o = 10,
|
|
@@ -1270,11 +1381,11 @@ function Eo({
|
|
|
1270
1381
|
}) {
|
|
1271
1382
|
const l = Array.from(
|
|
1272
1383
|
{ length: o },
|
|
1273
|
-
() =>
|
|
1384
|
+
() => wt({ scaleXMin: n, scaleXMax: r, scaleYMin: s, scaleYMax: a, scaleZMin: i, scaleZMax: c })
|
|
1274
1385
|
);
|
|
1275
|
-
return
|
|
1386
|
+
return vt({ coverMaterial: e, pagesMaterial: t, scales: l });
|
|
1276
1387
|
}
|
|
1277
|
-
function
|
|
1388
|
+
function Uo({
|
|
1278
1389
|
coverMaterial: e,
|
|
1279
1390
|
pagesMaterial: t,
|
|
1280
1391
|
length: o = 10,
|
|
@@ -1288,50 +1399,50 @@ function Po({
|
|
|
1288
1399
|
const l = [];
|
|
1289
1400
|
let u = o;
|
|
1290
1401
|
for (; u > 0; ) {
|
|
1291
|
-
const
|
|
1292
|
-
|
|
1402
|
+
const h = wt({ scaleXMin: n, scaleXMax: r, scaleYMin: s, scaleYMax: a, scaleZMin: i, scaleZMax: c });
|
|
1403
|
+
h.z = Math.min(h.z, u), l.push(h), u -= h.z;
|
|
1293
1404
|
}
|
|
1294
|
-
return
|
|
1405
|
+
return vt({ coverMaterial: e, pagesMaterial: t, scales: l });
|
|
1295
1406
|
}
|
|
1296
|
-
class
|
|
1407
|
+
class _o extends A {
|
|
1297
1408
|
constructor(t = 2, o = 0.3, n = 0.6, r = 5, s = 5, a = Math.PI / 4) {
|
|
1298
1409
|
super();
|
|
1299
1410
|
const i = [], c = [];
|
|
1300
1411
|
for (let f = 0; f < r; f++) {
|
|
1301
|
-
const
|
|
1412
|
+
const d = f * o, p = d + o, w = f * n, v = w + n;
|
|
1302
1413
|
i.push(
|
|
1303
1414
|
// Vertical riser
|
|
1304
1415
|
-t / 2,
|
|
1305
|
-
|
|
1416
|
+
d,
|
|
1306
1417
|
w,
|
|
1307
1418
|
// Bottom-left
|
|
1308
1419
|
t / 2,
|
|
1309
|
-
|
|
1420
|
+
d,
|
|
1310
1421
|
w,
|
|
1311
1422
|
// Bottom-right
|
|
1312
1423
|
t / 2,
|
|
1313
|
-
|
|
1424
|
+
p,
|
|
1314
1425
|
w,
|
|
1315
1426
|
// Top-right
|
|
1316
1427
|
-t / 2,
|
|
1317
|
-
|
|
1428
|
+
p,
|
|
1318
1429
|
w,
|
|
1319
1430
|
// Top-left
|
|
1320
1431
|
// Horizontal tread
|
|
1321
1432
|
-t / 2,
|
|
1322
|
-
|
|
1433
|
+
p,
|
|
1323
1434
|
w,
|
|
1324
1435
|
// Top-left
|
|
1325
1436
|
t / 2,
|
|
1326
|
-
|
|
1437
|
+
p,
|
|
1327
1438
|
w,
|
|
1328
1439
|
// Top-right
|
|
1329
1440
|
t / 2,
|
|
1330
|
-
|
|
1441
|
+
p,
|
|
1331
1442
|
v,
|
|
1332
1443
|
// Back-right
|
|
1333
1444
|
-t / 2,
|
|
1334
|
-
|
|
1445
|
+
p,
|
|
1335
1446
|
v
|
|
1336
1447
|
// Back-left
|
|
1337
1448
|
);
|
|
@@ -1352,78 +1463,78 @@ class To extends S {
|
|
|
1352
1463
|
x + 7
|
|
1353
1464
|
);
|
|
1354
1465
|
}
|
|
1355
|
-
const l = r * o, u = r * n,
|
|
1466
|
+
const l = r * o, u = r * n, h = t * 2;
|
|
1356
1467
|
i.push(
|
|
1357
1468
|
// Landing platform (4 vertices)
|
|
1358
|
-
-
|
|
1469
|
+
-h / 2,
|
|
1359
1470
|
l,
|
|
1360
1471
|
u,
|
|
1361
1472
|
// Bottom-left
|
|
1362
|
-
|
|
1473
|
+
h / 2,
|
|
1363
1474
|
l,
|
|
1364
1475
|
u,
|
|
1365
1476
|
// Bottom-right
|
|
1366
|
-
|
|
1477
|
+
h / 2,
|
|
1367
1478
|
l,
|
|
1368
1479
|
u + n,
|
|
1369
1480
|
// Top-right
|
|
1370
|
-
-
|
|
1481
|
+
-h / 2,
|
|
1371
1482
|
l,
|
|
1372
1483
|
u + n
|
|
1373
1484
|
// Top-left
|
|
1374
1485
|
);
|
|
1375
|
-
const
|
|
1486
|
+
const m = r * 8;
|
|
1376
1487
|
c.push(
|
|
1377
|
-
|
|
1378
|
-
|
|
1379
|
-
|
|
1488
|
+
m,
|
|
1489
|
+
m + 1,
|
|
1490
|
+
m + 2,
|
|
1380
1491
|
// First triangle for landing
|
|
1381
|
-
|
|
1382
|
-
|
|
1383
|
-
|
|
1492
|
+
m,
|
|
1493
|
+
m + 2,
|
|
1494
|
+
m + 3
|
|
1384
1495
|
// Second triangle for landing
|
|
1385
1496
|
);
|
|
1386
1497
|
for (let f = 0; f < 2; f++) {
|
|
1387
|
-
const
|
|
1388
|
-
for (let
|
|
1389
|
-
const w = l +
|
|
1498
|
+
const d = f === 0 ? 1 : -1;
|
|
1499
|
+
for (let p = 0; p < s; p++) {
|
|
1500
|
+
const w = l + p * o, v = w + o, x = d * (h / 4), R = u + n, N = p * n * Math.cos(a), P = p * n * Math.sin(a), G = x + d * N - t / 2 * Math.cos(a), _ = x + d * N + t / 2 * Math.cos(a), O = R + P, et = G + d * n * Math.cos(a), q = _ + d * n * Math.cos(a), V = O + n * Math.sin(a);
|
|
1390
1501
|
i.push(
|
|
1391
1502
|
// Vertical riser
|
|
1392
|
-
|
|
1503
|
+
G,
|
|
1393
1504
|
w,
|
|
1394
|
-
|
|
1505
|
+
O,
|
|
1395
1506
|
// Bottom-left
|
|
1396
|
-
|
|
1507
|
+
_,
|
|
1397
1508
|
w,
|
|
1398
|
-
|
|
1509
|
+
O,
|
|
1399
1510
|
// Bottom-right
|
|
1400
|
-
|
|
1511
|
+
_,
|
|
1401
1512
|
v,
|
|
1402
|
-
|
|
1513
|
+
O,
|
|
1403
1514
|
// Top-right
|
|
1404
|
-
|
|
1515
|
+
G,
|
|
1405
1516
|
v,
|
|
1406
|
-
|
|
1517
|
+
O,
|
|
1407
1518
|
// Top-left
|
|
1408
1519
|
// Horizontal tread
|
|
1409
|
-
|
|
1520
|
+
G,
|
|
1410
1521
|
v,
|
|
1411
|
-
|
|
1522
|
+
O,
|
|
1412
1523
|
// Top-left
|
|
1413
|
-
|
|
1524
|
+
_,
|
|
1414
1525
|
v,
|
|
1415
|
-
|
|
1526
|
+
O,
|
|
1416
1527
|
// Top-right
|
|
1417
|
-
|
|
1528
|
+
q,
|
|
1418
1529
|
v,
|
|
1419
1530
|
V,
|
|
1420
1531
|
// Back-right
|
|
1421
|
-
|
|
1532
|
+
et,
|
|
1422
1533
|
v,
|
|
1423
1534
|
V
|
|
1424
1535
|
// Back-left
|
|
1425
1536
|
);
|
|
1426
|
-
const C =
|
|
1537
|
+
const C = m + 4 + f * s * 8 + p * 8;
|
|
1427
1538
|
c.push(
|
|
1428
1539
|
C,
|
|
1429
1540
|
C + 1,
|
|
@@ -1441,10 +1552,10 @@ class To extends S {
|
|
|
1441
1552
|
);
|
|
1442
1553
|
}
|
|
1443
1554
|
}
|
|
1444
|
-
this.setIndex(c), this.setAttribute("position", new
|
|
1555
|
+
this.setIndex(c), this.setAttribute("position", new D(i, 3)), this.computeVertexNormals();
|
|
1445
1556
|
}
|
|
1446
1557
|
}
|
|
1447
|
-
class
|
|
1558
|
+
class Oo extends A {
|
|
1448
1559
|
constructor(t = 5, o = 3, n = 5, r = 0.2) {
|
|
1449
1560
|
super();
|
|
1450
1561
|
const s = [
|
|
@@ -1522,52 +1633,52 @@ class Go extends S {
|
|
|
1522
1633
|
10,
|
|
1523
1634
|
11
|
|
1524
1635
|
];
|
|
1525
|
-
this.setIndex(a), this.setAttribute("position", new
|
|
1636
|
+
this.setIndex(a), this.setAttribute("position", new D(s, 3)), this.computeVertexNormals();
|
|
1526
1637
|
}
|
|
1527
1638
|
}
|
|
1528
|
-
class
|
|
1639
|
+
class zo extends A {
|
|
1529
1640
|
constructor(t = 2, o = 0.3, n = 0.5, r = 5, s = 2) {
|
|
1530
1641
|
super();
|
|
1531
1642
|
const a = [], i = [];
|
|
1532
|
-
for (let
|
|
1533
|
-
const
|
|
1643
|
+
for (let h = 0; h < r; h++) {
|
|
1644
|
+
const m = h * o, f = m + o, d = h * n, p = d + n;
|
|
1534
1645
|
a.push(
|
|
1535
1646
|
// Vertical riser
|
|
1536
1647
|
-t / 2,
|
|
1537
|
-
|
|
1538
|
-
|
|
1648
|
+
m,
|
|
1649
|
+
d,
|
|
1539
1650
|
// Bottom-left
|
|
1540
1651
|
t / 2,
|
|
1541
|
-
|
|
1542
|
-
|
|
1652
|
+
m,
|
|
1653
|
+
d,
|
|
1543
1654
|
// Bottom-right
|
|
1544
1655
|
t / 2,
|
|
1545
1656
|
f,
|
|
1546
|
-
|
|
1657
|
+
d,
|
|
1547
1658
|
// Top-right
|
|
1548
1659
|
-t / 2,
|
|
1549
1660
|
f,
|
|
1550
|
-
|
|
1661
|
+
d,
|
|
1551
1662
|
// Top-left
|
|
1552
1663
|
// Horizontal tread
|
|
1553
1664
|
-t / 2,
|
|
1554
1665
|
f,
|
|
1555
|
-
|
|
1666
|
+
d,
|
|
1556
1667
|
// Top-left
|
|
1557
1668
|
t / 2,
|
|
1558
1669
|
f,
|
|
1559
|
-
|
|
1670
|
+
d,
|
|
1560
1671
|
// Top-right
|
|
1561
1672
|
t / 2,
|
|
1562
1673
|
f,
|
|
1563
|
-
|
|
1674
|
+
p,
|
|
1564
1675
|
// Back-right
|
|
1565
1676
|
-t / 2,
|
|
1566
1677
|
f,
|
|
1567
|
-
|
|
1678
|
+
p
|
|
1568
1679
|
// Back-left
|
|
1569
1680
|
);
|
|
1570
|
-
const w =
|
|
1681
|
+
const w = h * 8;
|
|
1571
1682
|
i.push(
|
|
1572
1683
|
w,
|
|
1573
1684
|
w + 1,
|
|
@@ -1615,45 +1726,45 @@ class Bo extends S {
|
|
|
1615
1726
|
u + 3
|
|
1616
1727
|
// Second triangle for landing
|
|
1617
1728
|
);
|
|
1618
|
-
for (let
|
|
1619
|
-
const
|
|
1729
|
+
for (let h = 0; h < r; h++) {
|
|
1730
|
+
const m = c + h * o, f = m + o, d = -t / 2 - h * n, p = d - n;
|
|
1620
1731
|
a.push(
|
|
1621
1732
|
// Vertical riser
|
|
1622
|
-
|
|
1623
|
-
|
|
1733
|
+
d,
|
|
1734
|
+
m,
|
|
1624
1735
|
l + s,
|
|
1625
1736
|
// Bottom-left
|
|
1626
|
-
|
|
1627
|
-
|
|
1737
|
+
d,
|
|
1738
|
+
m,
|
|
1628
1739
|
l + s - t,
|
|
1629
1740
|
// Bottom-right
|
|
1630
|
-
|
|
1741
|
+
d,
|
|
1631
1742
|
f,
|
|
1632
1743
|
l + s - t,
|
|
1633
1744
|
// Top-right
|
|
1634
|
-
|
|
1745
|
+
d,
|
|
1635
1746
|
f,
|
|
1636
1747
|
l + s,
|
|
1637
1748
|
// Top-left
|
|
1638
1749
|
// Horizontal tread
|
|
1639
|
-
|
|
1750
|
+
d,
|
|
1640
1751
|
f,
|
|
1641
1752
|
l + s,
|
|
1642
1753
|
// Top-left
|
|
1643
|
-
|
|
1754
|
+
d,
|
|
1644
1755
|
f,
|
|
1645
1756
|
l + s - t,
|
|
1646
1757
|
// Top-right
|
|
1647
|
-
|
|
1758
|
+
p,
|
|
1648
1759
|
f,
|
|
1649
1760
|
l + s - t,
|
|
1650
1761
|
// Back-right
|
|
1651
|
-
|
|
1762
|
+
p,
|
|
1652
1763
|
f,
|
|
1653
1764
|
l + s
|
|
1654
1765
|
// Back-left
|
|
1655
1766
|
);
|
|
1656
|
-
const w = u + 4 +
|
|
1767
|
+
const w = u + 4 + h * 8;
|
|
1657
1768
|
i.push(
|
|
1658
1769
|
w,
|
|
1659
1770
|
w + 1,
|
|
@@ -1670,83 +1781,83 @@ class Bo extends S {
|
|
|
1670
1781
|
w + 7
|
|
1671
1782
|
);
|
|
1672
1783
|
}
|
|
1673
|
-
this.setIndex(i), this.setAttribute("position", new
|
|
1784
|
+
this.setIndex(i), this.setAttribute("position", new D(a, 3)), this.computeVertexNormals();
|
|
1674
1785
|
}
|
|
1675
1786
|
}
|
|
1676
|
-
class
|
|
1787
|
+
class Fo extends A {
|
|
1677
1788
|
constructor(t = 1, o = 0.4, n = 0.2, r = 20, s = 2, a = Math.PI / 8) {
|
|
1678
1789
|
super();
|
|
1679
1790
|
const i = [], c = [];
|
|
1680
1791
|
let l = 0;
|
|
1681
1792
|
for (let u = 0; u < r; u++) {
|
|
1682
|
-
const
|
|
1793
|
+
const h = s * Math.cos(l), m = s * Math.sin(l), f = u * n, d = f + n;
|
|
1683
1794
|
i.push(
|
|
1684
1795
|
// Front face (vertical riser)
|
|
1685
|
-
|
|
1796
|
+
h - t / 2 * Math.cos(l),
|
|
1686
1797
|
f,
|
|
1687
|
-
|
|
1798
|
+
m - t / 2 * Math.sin(l),
|
|
1688
1799
|
// Bottom-left
|
|
1689
|
-
|
|
1800
|
+
h + t / 2 * Math.cos(l),
|
|
1690
1801
|
f,
|
|
1691
|
-
|
|
1802
|
+
m + t / 2 * Math.sin(l),
|
|
1692
1803
|
// Bottom-right
|
|
1693
|
-
|
|
1694
|
-
|
|
1695
|
-
|
|
1804
|
+
h + t / 2 * Math.cos(l),
|
|
1805
|
+
d,
|
|
1806
|
+
m + t / 2 * Math.sin(l),
|
|
1696
1807
|
// Top-right
|
|
1697
|
-
|
|
1698
|
-
|
|
1699
|
-
|
|
1808
|
+
h - t / 2 * Math.cos(l),
|
|
1809
|
+
d,
|
|
1810
|
+
m - t / 2 * Math.sin(l)
|
|
1700
1811
|
// Top-left
|
|
1701
1812
|
), i.push(
|
|
1702
1813
|
// Top face (horizontal tread)
|
|
1703
|
-
|
|
1704
|
-
|
|
1705
|
-
|
|
1814
|
+
h - t / 2 * Math.cos(l),
|
|
1815
|
+
d,
|
|
1816
|
+
m - t / 2 * Math.sin(l),
|
|
1706
1817
|
// Top-left-front
|
|
1707
|
-
|
|
1708
|
-
|
|
1709
|
-
|
|
1818
|
+
h + t / 2 * Math.cos(l),
|
|
1819
|
+
d,
|
|
1820
|
+
m + t / 2 * Math.sin(l),
|
|
1710
1821
|
// Top-right-front
|
|
1711
|
-
|
|
1712
|
-
|
|
1713
|
-
|
|
1822
|
+
h + t / 2 * Math.cos(l) - o * Math.sin(l),
|
|
1823
|
+
d,
|
|
1824
|
+
m + t / 2 * Math.sin(l) + o * Math.cos(l),
|
|
1714
1825
|
// Back-right
|
|
1715
|
-
|
|
1716
|
-
|
|
1717
|
-
|
|
1826
|
+
h - t / 2 * Math.cos(l) - o * Math.sin(l),
|
|
1827
|
+
d,
|
|
1828
|
+
m - t / 2 * Math.sin(l) + o * Math.cos(l)
|
|
1718
1829
|
// Back-left
|
|
1719
1830
|
);
|
|
1720
|
-
const
|
|
1831
|
+
const p = u * 8;
|
|
1721
1832
|
c.push(
|
|
1722
|
-
|
|
1723
|
-
|
|
1724
|
-
|
|
1833
|
+
p,
|
|
1834
|
+
p + 1,
|
|
1835
|
+
p + 2,
|
|
1725
1836
|
// First triangle for riser
|
|
1726
|
-
|
|
1727
|
-
|
|
1728
|
-
|
|
1837
|
+
p,
|
|
1838
|
+
p + 2,
|
|
1839
|
+
p + 3
|
|
1729
1840
|
// Second triangle for riser
|
|
1730
1841
|
), c.push(
|
|
1731
|
-
|
|
1732
|
-
|
|
1733
|
-
|
|
1842
|
+
p + 4,
|
|
1843
|
+
p + 5,
|
|
1844
|
+
p + 6,
|
|
1734
1845
|
// First triangle for tread
|
|
1735
|
-
|
|
1736
|
-
|
|
1737
|
-
|
|
1846
|
+
p + 4,
|
|
1847
|
+
p + 6,
|
|
1848
|
+
p + 7
|
|
1738
1849
|
// Second triangle for tread
|
|
1739
1850
|
), l += a;
|
|
1740
1851
|
}
|
|
1741
|
-
this.setIndex(c), this.setAttribute("position", new
|
|
1852
|
+
this.setIndex(c), this.setAttribute("position", new D(i, 3)), this.computeVertexNormals();
|
|
1742
1853
|
}
|
|
1743
1854
|
}
|
|
1744
|
-
class
|
|
1855
|
+
class Lo extends A {
|
|
1745
1856
|
constructor(t = 2, o = 0.3, n = 0.5, r = 10) {
|
|
1746
1857
|
super();
|
|
1747
1858
|
const s = [], a = [];
|
|
1748
1859
|
for (let i = 0; i < r; i++) {
|
|
1749
|
-
const c = i * o, l = c + o, u = i * n,
|
|
1860
|
+
const c = i * o, l = c + o, u = i * n, h = u + n;
|
|
1750
1861
|
s.push(
|
|
1751
1862
|
// Bottom face of riser (front face)
|
|
1752
1863
|
-t / 2,
|
|
@@ -1776,91 +1887,91 @@ class Uo extends S {
|
|
|
1776
1887
|
// 5: Top-right-front (repeated)
|
|
1777
1888
|
t / 2,
|
|
1778
1889
|
l,
|
|
1779
|
-
|
|
1890
|
+
h,
|
|
1780
1891
|
// 6: Top-right-back
|
|
1781
1892
|
-t / 2,
|
|
1782
1893
|
l,
|
|
1783
|
-
|
|
1894
|
+
h
|
|
1784
1895
|
// 7: Top-left-back
|
|
1785
1896
|
);
|
|
1786
|
-
const
|
|
1897
|
+
const m = i * 8;
|
|
1787
1898
|
a.push(
|
|
1788
|
-
|
|
1789
|
-
|
|
1790
|
-
|
|
1899
|
+
m,
|
|
1900
|
+
m + 1,
|
|
1901
|
+
m + 2,
|
|
1791
1902
|
// First triangle for riser
|
|
1792
|
-
|
|
1793
|
-
|
|
1794
|
-
|
|
1903
|
+
m,
|
|
1904
|
+
m + 2,
|
|
1905
|
+
m + 3
|
|
1795
1906
|
// Second triangle for riser
|
|
1796
1907
|
), a.push(
|
|
1797
|
-
|
|
1798
|
-
|
|
1799
|
-
|
|
1908
|
+
m + 4,
|
|
1909
|
+
m + 6,
|
|
1910
|
+
m + 5,
|
|
1800
1911
|
// First triangle for tread
|
|
1801
|
-
|
|
1802
|
-
|
|
1803
|
-
|
|
1912
|
+
m + 4,
|
|
1913
|
+
m + 7,
|
|
1914
|
+
m + 6
|
|
1804
1915
|
// Second triangle for tread
|
|
1805
1916
|
);
|
|
1806
1917
|
}
|
|
1807
|
-
this.setIndex(a), this.setAttribute("position", new
|
|
1918
|
+
this.setIndex(a), this.setAttribute("position", new D(s, 3)), this.computeVertexNormals();
|
|
1808
1919
|
}
|
|
1809
1920
|
}
|
|
1810
|
-
class
|
|
1921
|
+
class Ee extends A {
|
|
1811
1922
|
constructor(t = 0.4, o = 1.2, n = 0.2) {
|
|
1812
1923
|
super();
|
|
1813
|
-
const r = o * 0.6, s = new
|
|
1924
|
+
const r = o * 0.6, s = new E(t / 2, r, n);
|
|
1814
1925
|
s.translate(0, r / 2, 0);
|
|
1815
|
-
const a = t * 1.5, i = new
|
|
1926
|
+
const a = t * 1.5, i = new E(a, t / 4, n);
|
|
1816
1927
|
i.translate(0, r * 0.75, 0), this.copy(T([s, i], !1)), this.computeVertexNormals();
|
|
1817
1928
|
}
|
|
1818
1929
|
}
|
|
1819
|
-
class
|
|
1930
|
+
class Ae extends A {
|
|
1820
1931
|
constructor(t = 1.75, o = 0.75) {
|
|
1821
1932
|
super();
|
|
1822
1933
|
const n = t * 0.05, r = t * 0.15, s = t * 0.15, a = t * 0.75;
|
|
1823
1934
|
let i = 0;
|
|
1824
|
-
const c = new
|
|
1935
|
+
const c = new E(o, n, o);
|
|
1825
1936
|
c.translate(0, i + n / 2, 0), i += n;
|
|
1826
|
-
const l = new
|
|
1937
|
+
const l = new E(o * 0.8, r, o * 0.8);
|
|
1827
1938
|
l.translate(0, i + r / 2, 0), i += r;
|
|
1828
|
-
const u = new
|
|
1939
|
+
const u = new E(o * 0.6, s, o * 0.6);
|
|
1829
1940
|
u.translate(0, i + s / 2, 0), i += s;
|
|
1830
|
-
const
|
|
1831
|
-
|
|
1832
|
-
const
|
|
1833
|
-
|
|
1941
|
+
const h = new E(o * 0.4, a, o * 0.4);
|
|
1942
|
+
h.translate(0, i + a / 2, 0), i += a;
|
|
1943
|
+
const m = new Y(o * 0.4 / Math.sqrt(2), 0.1, 4, 1, !1, Math.PI / 4);
|
|
1944
|
+
m.translate(0, i + 0.1 / 2, 0), this.copy(T([c, l, u, h, m], !1)), this.computeVertexNormals();
|
|
1834
1945
|
}
|
|
1835
1946
|
}
|
|
1836
|
-
class
|
|
1947
|
+
class Se extends A {
|
|
1837
1948
|
constructor(t = 0.6, o = 1, n = 0.2, r = 0.6) {
|
|
1838
1949
|
super();
|
|
1839
|
-
const s = o - r / 2, a = new
|
|
1950
|
+
const s = o - r / 2, a = new E(t, s, n);
|
|
1840
1951
|
a.translate(0, s / 2, 0);
|
|
1841
|
-
const i = new
|
|
1952
|
+
const i = new S(r / 2, r / 2, n, 16, 1, !1, 0, Math.PI);
|
|
1842
1953
|
i.rotateY(Math.PI / 2), i.rotateX(Math.PI / 2), i.translate(0, s, 0), this.copy(T([a, i], !1)), this.computeVertexNormals();
|
|
1843
1954
|
}
|
|
1844
1955
|
}
|
|
1845
|
-
class
|
|
1956
|
+
class Pe extends A {
|
|
1846
1957
|
constructor(t = 0.5, o = 0.8, n = 0.15) {
|
|
1847
1958
|
super();
|
|
1848
|
-
const r = new
|
|
1959
|
+
const r = new E(t, o, n);
|
|
1849
1960
|
r.translate(0, o / 2, 0), this.copy(r);
|
|
1850
1961
|
}
|
|
1851
1962
|
}
|
|
1852
|
-
class
|
|
1963
|
+
class Te extends A {
|
|
1853
1964
|
constructor({ height: t = 2.25 } = {}) {
|
|
1854
1965
|
super();
|
|
1855
|
-
const o = new
|
|
1966
|
+
const o = new E(1.2, 0.5, 1.2);
|
|
1856
1967
|
o.translate(0, 0.25, 0);
|
|
1857
|
-
const n = new
|
|
1968
|
+
const n = new E(1, t, 1);
|
|
1858
1969
|
n.translate(0, 0.5 + t / 2, 0);
|
|
1859
|
-
const r = new
|
|
1970
|
+
const r = new E(1.4, 0.3, 1.4);
|
|
1860
1971
|
r.translate(0, 0.5 + t + 0.15, 0), this.copy(T([o, n, r], !1));
|
|
1861
1972
|
}
|
|
1862
1973
|
}
|
|
1863
|
-
class
|
|
1974
|
+
class xt extends A {
|
|
1864
1975
|
constructor({
|
|
1865
1976
|
barHeight: t = 2,
|
|
1866
1977
|
//
|
|
@@ -1871,13 +1982,13 @@ class wt extends S {
|
|
|
1871
1982
|
radialSegments: a = 8
|
|
1872
1983
|
} = {}) {
|
|
1873
1984
|
super();
|
|
1874
|
-
const i = new
|
|
1985
|
+
const i = new S(o, o, t, a);
|
|
1875
1986
|
i.translate(0, t / 2, 0);
|
|
1876
|
-
const c = new
|
|
1987
|
+
const c = new Y(r, n, a);
|
|
1877
1988
|
c.translate(0, t + n / 2, 0), c.scale(1, 1, s), this.copy(T([i, c], !1));
|
|
1878
1989
|
}
|
|
1879
1990
|
}
|
|
1880
|
-
class
|
|
1991
|
+
class Ge extends A {
|
|
1881
1992
|
constructor({
|
|
1882
1993
|
count: t = 20,
|
|
1883
1994
|
//
|
|
@@ -1890,21 +2001,21 @@ class Pe extends S {
|
|
|
1890
2001
|
railHeight: c = 0.1,
|
|
1891
2002
|
railDepth: l = 0.05,
|
|
1892
2003
|
railOffset: u = 0,
|
|
1893
|
-
radialSegments:
|
|
2004
|
+
radialSegments: h = 8
|
|
1894
2005
|
} = {}) {
|
|
1895
2006
|
super();
|
|
1896
|
-
const
|
|
2007
|
+
const m = [], f = new xt({ barHeight: n, barRadius: r, spikeHeight: s, spikeRadius: a, spikeScaleZ: i, radialSegments: h }), d = new E(t * o, c, l);
|
|
1897
2008
|
for (let v = 0; v < t; v++) {
|
|
1898
2009
|
const x = f.clone();
|
|
1899
|
-
x.translate(v * o, 0, 0),
|
|
2010
|
+
x.translate(v * o, 0, 0), m.push(x);
|
|
1900
2011
|
}
|
|
1901
|
-
const
|
|
1902
|
-
|
|
1903
|
-
const w =
|
|
1904
|
-
w.translate(o * (t - 1) / 2, c / 2, 0),
|
|
2012
|
+
const p = d.clone();
|
|
2013
|
+
p.translate(o * (t - 1) / 2, n - u - c / 2, 0), m.push(p);
|
|
2014
|
+
const w = d.clone();
|
|
2015
|
+
w.translate(o * (t - 1) / 2, c / 2, 0), m.push(w), this.copy(T(m));
|
|
1905
2016
|
}
|
|
1906
2017
|
}
|
|
1907
|
-
class
|
|
2018
|
+
class Ce extends A {
|
|
1908
2019
|
constructor({
|
|
1909
2020
|
width: t = 5,
|
|
1910
2021
|
//
|
|
@@ -1915,36 +2026,36 @@ class Te extends S {
|
|
|
1915
2026
|
open: a = !1
|
|
1916
2027
|
} = {}) {
|
|
1917
2028
|
super();
|
|
1918
|
-
const i = o, c = t, l = n, u = new
|
|
1919
|
-
|
|
2029
|
+
const i = o, c = t, l = n, u = new E(s, i, l), h = new E(c - 2 * s, s, l), m = u.clone();
|
|
2030
|
+
m.translate(-c / 2 + s / 2, i / 2, 0);
|
|
1920
2031
|
const f = u.clone();
|
|
1921
2032
|
f.translate(c / 2 - s / 2, i / 2, 0);
|
|
1922
|
-
const
|
|
1923
|
-
|
|
1924
|
-
const
|
|
1925
|
-
|
|
1926
|
-
const w = new
|
|
2033
|
+
const d = h.clone();
|
|
2034
|
+
d.translate(0, i - s / 2, 0);
|
|
2035
|
+
const p = h.clone();
|
|
2036
|
+
p.translate(0, s / 2, 0);
|
|
2037
|
+
const w = new E(c, i, s);
|
|
1927
2038
|
w.translate(0, i / 2, -l / 2 + s / 2);
|
|
1928
2039
|
const v = [], x = (i - s) / (r + 1);
|
|
1929
|
-
for (let
|
|
1930
|
-
const
|
|
1931
|
-
|
|
2040
|
+
for (let R = 1; R <= r; R++) {
|
|
2041
|
+
const N = h.clone();
|
|
2042
|
+
N.translate(0, s / 2 + R * x, 0), v.push(N);
|
|
1932
2043
|
}
|
|
1933
2044
|
this.copy(T([
|
|
1934
|
-
|
|
2045
|
+
m,
|
|
1935
2046
|
//
|
|
1936
2047
|
f,
|
|
1937
|
-
p,
|
|
1938
2048
|
d,
|
|
2049
|
+
p,
|
|
1939
2050
|
...a ? [] : [w],
|
|
1940
2051
|
...v
|
|
1941
2052
|
], !1));
|
|
1942
2053
|
}
|
|
1943
2054
|
}
|
|
1944
|
-
class
|
|
2055
|
+
class Be extends A {
|
|
1945
2056
|
constructor() {
|
|
1946
2057
|
super();
|
|
1947
|
-
const t = new
|
|
2058
|
+
const t = new E(5, 0.3, 3);
|
|
1948
2059
|
t.translate(0, 3.15, 0);
|
|
1949
2060
|
const o = [
|
|
1950
2061
|
new I(0.2, 0),
|
|
@@ -1952,7 +2063,7 @@ class Ge extends S {
|
|
|
1952
2063
|
new I(0.25, 0.5),
|
|
1953
2064
|
new I(0.15, 1.5),
|
|
1954
2065
|
new I(0.3, 3)
|
|
1955
|
-
], n = new
|
|
2066
|
+
], n = new Z(o, 32), s = T(
|
|
1956
2067
|
[
|
|
1957
2068
|
[2.1, 0, 1.1],
|
|
1958
2069
|
[-2.1, 0, 1.1],
|
|
@@ -1966,8 +2077,8 @@ class Ge extends S {
|
|
|
1966
2077
|
this.copy(T([t, s], !0));
|
|
1967
2078
|
}
|
|
1968
2079
|
}
|
|
1969
|
-
function
|
|
1970
|
-
e.deleteAttribute("uv"), e.deleteAttribute("normal"), e =
|
|
2080
|
+
function Re(e, t = ut.XYZ, o = 0.5, n = 2) {
|
|
2081
|
+
e.deleteAttribute("uv"), e.deleteAttribute("normal"), e = Ie(e), e.computeVertexNormals();
|
|
1971
2082
|
const r = e.getAttribute("position");
|
|
1972
2083
|
for (let s = 0; s < r.count; s++) {
|
|
1973
2084
|
const a = new b().fromBufferAttribute(r, s), i = Math.random() * (n - o) + o, c = t.clone().multiplyScalar(i);
|
|
@@ -1975,23 +2086,23 @@ function Be(e, t = lt.XYZ, o = 0.5, n = 2) {
|
|
|
1975
2086
|
}
|
|
1976
2087
|
return r.needsUpdate = !0, e.computeVertexNormals(), e;
|
|
1977
2088
|
}
|
|
1978
|
-
class
|
|
2089
|
+
class Ne extends A {
|
|
1979
2090
|
constructor(t = 1, o = 4, n = 4) {
|
|
1980
2091
|
super();
|
|
1981
|
-
const r = new
|
|
1982
|
-
this.copy(
|
|
2092
|
+
const r = new U(t, o, n);
|
|
2093
|
+
this.copy(Re(r, ut.XYZ, 0.5, 1)), this.computeVertexNormals(), this.center();
|
|
1983
2094
|
}
|
|
1984
2095
|
}
|
|
1985
|
-
class Ue extends
|
|
2096
|
+
class Ue extends A {
|
|
1986
2097
|
constructor(t = 0.1, o = 0.1, n = 0.4, r = 8) {
|
|
1987
2098
|
super();
|
|
1988
|
-
const s = new
|
|
2099
|
+
const s = new S(t * 0.6, o * 0.6, n, r);
|
|
1989
2100
|
s.translate(0, 0, 0);
|
|
1990
|
-
const a = new
|
|
2101
|
+
const a = new U(t, r, r), i = a.clone(), c = a.clone(), l = a.clone(), u = a.clone();
|
|
1991
2102
|
i.translate(0, n / 2 + t * 0.6, -t * 0.6), c.translate(0, n / 2 + t * 0.6, t * 0.6), l.translate(0, -n / 2 - o * 0.6, -o * 0.6), u.translate(0, -n / 2 - o * 0.6, o * 0.6), this.copy(T([s, i, c, l, u], !1));
|
|
1992
2103
|
}
|
|
1993
2104
|
}
|
|
1994
|
-
class
|
|
2105
|
+
class _e extends A {
|
|
1995
2106
|
constructor({
|
|
1996
2107
|
flaskRadius: t = 1,
|
|
1997
2108
|
//
|
|
@@ -2014,18 +2125,18 @@ class ze extends S {
|
|
|
2014
2125
|
// End of the straight neck
|
|
2015
2126
|
new I(o * 1.1, n + r + 0.3)
|
|
2016
2127
|
// Slight outward lip at the top
|
|
2017
|
-
], i = new
|
|
2128
|
+
], i = new Z(a, s);
|
|
2018
2129
|
this.copy(T([i], !1));
|
|
2019
2130
|
}
|
|
2020
2131
|
}
|
|
2021
|
-
class
|
|
2132
|
+
class Oe extends A {
|
|
2022
2133
|
constructor() {
|
|
2023
2134
|
super();
|
|
2024
|
-
const t = new
|
|
2135
|
+
const t = new U(1, 16, 16), o = new S(0.2, 0.2, 2, 16, 1, !0);
|
|
2025
2136
|
o.translate(0, 1.5, 0), o.rotateX(Math.PI / 2), this.copy(T([t, o], !1));
|
|
2026
2137
|
}
|
|
2027
2138
|
}
|
|
2028
|
-
class
|
|
2139
|
+
class ze extends A {
|
|
2029
2140
|
constructor() {
|
|
2030
2141
|
super();
|
|
2031
2142
|
const t = [
|
|
@@ -2039,11 +2150,11 @@ class ke extends S {
|
|
|
2039
2150
|
// Flared edge
|
|
2040
2151
|
new I(0.8, 1.8)
|
|
2041
2152
|
// Lip of the bowl
|
|
2042
|
-
], o = new
|
|
2153
|
+
], o = new Z(t, 12), n = new Pt(1, 12);
|
|
2043
2154
|
n.rotateX(-Math.PI / 2), n.translate(0, 0, 0), this.copy(T([o, n], !1));
|
|
2044
2155
|
}
|
|
2045
2156
|
}
|
|
2046
|
-
class Fe extends
|
|
2157
|
+
class Fe extends A {
|
|
2047
2158
|
constructor({
|
|
2048
2159
|
radius: t = 0.3,
|
|
2049
2160
|
//
|
|
@@ -2053,35 +2164,35 @@ class Fe extends S {
|
|
|
2053
2164
|
radialSegments: s = 16
|
|
2054
2165
|
} = {}) {
|
|
2055
2166
|
super();
|
|
2056
|
-
const a = new
|
|
2167
|
+
const a = new dt(t, r, 8, s);
|
|
2057
2168
|
a.rotateX(Math.PI / 2), a.translate(0, o, 0);
|
|
2058
|
-
const i = new
|
|
2169
|
+
const i = new S(r * 0.6, r * 0.6, o, s), c = [];
|
|
2059
2170
|
for (let l = 0; l < n; l++) {
|
|
2060
|
-
const u = l / n * Math.PI * 2,
|
|
2061
|
-
|
|
2171
|
+
const u = l / n * Math.PI * 2, h = i.clone();
|
|
2172
|
+
h.translate(Math.cos(u) * t, o / 2, Math.sin(u) * t), c.push(h);
|
|
2062
2173
|
}
|
|
2063
2174
|
this.copy(T([a, ...c], !1));
|
|
2064
2175
|
}
|
|
2065
2176
|
}
|
|
2066
|
-
class
|
|
2177
|
+
class rt extends A {
|
|
2067
2178
|
constructor(t = 0.2, o = 0.2, n = 3, r = 32, s = !0) {
|
|
2068
2179
|
super();
|
|
2069
|
-
const a = new
|
|
2180
|
+
const a = new S(t, o, n, r, 1, s), i = new U(o, r, r / 2, 0, Math.PI * 2, Math.PI / 2, Math.PI / 2);
|
|
2070
2181
|
i.translate(0, -(n / 2), 0), this.copy(T([a, i], !1));
|
|
2071
2182
|
}
|
|
2072
2183
|
}
|
|
2073
|
-
class
|
|
2184
|
+
class Le extends A {
|
|
2074
2185
|
constructor({ radius: t = 0.5, neckRadius: o = 0.2, height: n = 3, neckHeight: r = 1, segments: s = 16 } = {}) {
|
|
2075
2186
|
super();
|
|
2076
|
-
const a = n - r, i = new
|
|
2187
|
+
const a = n - r, i = new S(t, t, a, s);
|
|
2077
2188
|
i.translate(0, a / 2, 0);
|
|
2078
|
-
const c = 0.3, l = new
|
|
2189
|
+
const c = 0.3, l = new S(o, t, c, s);
|
|
2079
2190
|
l.translate(0, a + c / 2, 0);
|
|
2080
|
-
const u = new
|
|
2191
|
+
const u = new S(o, o, r, s);
|
|
2081
2192
|
u.translate(0, a + c + r / 2, 0), this.copy(T([i, l, u], !1));
|
|
2082
2193
|
}
|
|
2083
2194
|
}
|
|
2084
|
-
class
|
|
2195
|
+
class ke extends A {
|
|
2085
2196
|
constructor({
|
|
2086
2197
|
radius: t = 3,
|
|
2087
2198
|
//
|
|
@@ -2091,20 +2202,20 @@ class _e extends S {
|
|
|
2091
2202
|
phiStart: s = 0,
|
|
2092
2203
|
phiLength: a = Math.PI * 2
|
|
2093
2204
|
} = {}) {
|
|
2094
|
-
super(), this.copy(new
|
|
2205
|
+
super(), this.copy(new U(t, n, r, s, a, 0, Math.PI / 2)), this.scale(1, o / t, 1);
|
|
2095
2206
|
}
|
|
2096
2207
|
}
|
|
2097
|
-
const
|
|
2208
|
+
const ko = (e, t) => e / (1 - Math.cos(t)), gt = (e, t) => e / (2 * Math.sin(t)), De = (e, t) => e * (1 - Math.cos(t)), Do = (e, t) => 2 * e * Math.sin(t), qo = (e, t, o) => ({
|
|
2098
2209
|
x: e * Math.sin(o) * Math.cos(t),
|
|
2099
2210
|
y: e * Math.sin(o) * Math.sin(t),
|
|
2100
2211
|
z: e * Math.cos(o)
|
|
2101
|
-
}),
|
|
2212
|
+
}), Vo = (e, t, o) => {
|
|
2102
2213
|
const n = Math.sqrt(e * e + t * t + o * o), r = Math.atan2(t, e), s = Math.acos(o / n);
|
|
2103
2214
|
return { radius: n, theta: r, phi: s };
|
|
2104
2215
|
};
|
|
2105
|
-
class
|
|
2216
|
+
class qe extends A {
|
|
2106
2217
|
constructor({
|
|
2107
|
-
radius: t =
|
|
2218
|
+
radius: t = gt(5, Math.PI / 10),
|
|
2108
2219
|
//
|
|
2109
2220
|
widthSegments: o = 64,
|
|
2110
2221
|
heightSegments: n = 32,
|
|
@@ -2112,12 +2223,12 @@ class Le extends S {
|
|
|
2112
2223
|
phiLength: s = Math.PI * 2,
|
|
2113
2224
|
thetaLength: a = Math.PI / 10
|
|
2114
2225
|
} = {}) {
|
|
2115
|
-
super(), this.copy(new
|
|
2116
|
-
const i =
|
|
2226
|
+
super(), this.copy(new U(t, o, n, r, s, 0, a));
|
|
2227
|
+
const i = De(t, a);
|
|
2117
2228
|
this.translate(0, -t + i, 0);
|
|
2118
2229
|
}
|
|
2119
2230
|
}
|
|
2120
|
-
class
|
|
2231
|
+
class Ve extends A {
|
|
2121
2232
|
constructor({
|
|
2122
2233
|
trunkRadiusTop: t = 0.25,
|
|
2123
2234
|
trunkRadiusBottom: o = 0.4,
|
|
@@ -2129,146 +2240,164 @@ class qe extends S {
|
|
|
2129
2240
|
leafSpreadRadius: c = 1.5
|
|
2130
2241
|
} = {}) {
|
|
2131
2242
|
super();
|
|
2132
|
-
const l = new
|
|
2243
|
+
const l = new S(t, o, n, r);
|
|
2133
2244
|
l.translate(0, n / 2, 0);
|
|
2134
2245
|
const u = [];
|
|
2135
|
-
for (let
|
|
2136
|
-
const
|
|
2137
|
-
|
|
2246
|
+
for (let h = 0; h < a; h++) {
|
|
2247
|
+
const m = new it(s, i);
|
|
2248
|
+
m.translate(
|
|
2138
2249
|
(Math.random() - 0.5) * c,
|
|
2139
2250
|
(Math.random() - 0.5) * s + n,
|
|
2140
2251
|
(Math.random() - 0.5) * c
|
|
2141
|
-
), u.push(
|
|
2252
|
+
), u.push(m);
|
|
2142
2253
|
}
|
|
2143
2254
|
this.copy(T([l.toNonIndexed(), T(u, !1)], !0)), this.computeVertexNormals();
|
|
2144
2255
|
}
|
|
2145
2256
|
}
|
|
2146
|
-
|
|
2147
|
-
|
|
2148
|
-
|
|
2149
|
-
|
|
2150
|
-
|
|
2151
|
-
|
|
2152
|
-
|
|
2153
|
-
|
|
2154
|
-
|
|
2155
|
-
|
|
2156
|
-
|
|
2157
|
-
|
|
2158
|
-
|
|
2159
|
-
|
|
2160
|
-
|
|
2161
|
-
|
|
2162
|
-
fragmentShader: `
|
|
2163
|
-
varying vec3 vNormal;
|
|
2164
|
-
varying vec3 vPosition;
|
|
2257
|
+
const He = {
|
|
2258
|
+
uniforms: {
|
|
2259
|
+
time: { value: 0 }
|
|
2260
|
+
},
|
|
2261
|
+
vertexShader: `
|
|
2262
|
+
varying vec3 vNormal;
|
|
2263
|
+
varying vec3 vPosition;
|
|
2264
|
+
void main() {
|
|
2265
|
+
vNormal = normalize(normal);
|
|
2266
|
+
vPosition = position;
|
|
2267
|
+
gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);
|
|
2268
|
+
}
|
|
2269
|
+
`,
|
|
2270
|
+
fragmentShader: `
|
|
2271
|
+
varying vec3 vNormal;
|
|
2272
|
+
varying vec3 vPosition;
|
|
2165
2273
|
|
|
2166
|
-
|
|
2167
|
-
|
|
2168
|
-
|
|
2169
|
-
|
|
2170
|
-
|
|
2171
|
-
|
|
2274
|
+
// Simple 3D noise function
|
|
2275
|
+
float hash(vec3 p) {
|
|
2276
|
+
p = fract(p * 0.3183099 + vec3(0.71, 0.113, 0.419));
|
|
2277
|
+
p *= 17.0;
|
|
2278
|
+
return fract(p.x * p.y * p.z * (p.x + p.y + p.z));
|
|
2279
|
+
}
|
|
2172
2280
|
|
|
2173
|
-
|
|
2174
|
-
|
|
2175
|
-
|
|
2176
|
-
|
|
2177
|
-
|
|
2178
|
-
|
|
2179
|
-
|
|
2180
|
-
|
|
2181
|
-
|
|
2182
|
-
|
|
2183
|
-
|
|
2281
|
+
float noise(vec3 p) {
|
|
2282
|
+
vec3 ip = floor(p);
|
|
2283
|
+
vec3 fp = fract(p);
|
|
2284
|
+
fp = fp * fp * (3.0 - 2.0 * fp); // Smoothstep
|
|
2285
|
+
return mix(
|
|
2286
|
+
mix(mix(hash(ip), hash(ip + vec3(1.0, 0.0, 0.0)), fp.x),
|
|
2287
|
+
mix(hash(ip + vec3(0.0, 1.0, 0.0)), hash(ip + vec3(1.0, 1.0, 0.0)), fp.x), fp.y),
|
|
2288
|
+
mix(mix(hash(ip + vec3(0.0, 0.0, 1.0)), hash(ip + vec3(1.0, 0.0, 1.0)), fp.x),
|
|
2289
|
+
mix(hash(ip + vec3(0.0, 1.0, 1.0)), hash(ip + vec3(1.0, 1.0, 1.0)), fp.x), fp.y),
|
|
2290
|
+
fp.z);
|
|
2291
|
+
}
|
|
2184
2292
|
|
|
2185
|
-
|
|
2186
|
-
|
|
2187
|
-
|
|
2188
|
-
|
|
2189
|
-
|
|
2190
|
-
|
|
2191
|
-
|
|
2192
|
-
|
|
2193
|
-
|
|
2293
|
+
void main() {
|
|
2294
|
+
vec3 color = vec3(0.8, 0.8, 0.7); // Base moon color
|
|
2295
|
+
float n = noise(vPosition * 0.5); // Apply noise with frequency
|
|
2296
|
+
color *= 0.8 + 0.2 * n; // Modulate color by noise
|
|
2297
|
+
gl_FragColor = vec4(color, 1.0);
|
|
2298
|
+
}
|
|
2299
|
+
`
|
|
2300
|
+
};
|
|
2301
|
+
class Ho extends M {
|
|
2302
|
+
constructor() {
|
|
2303
|
+
super(
|
|
2304
|
+
new U(5, 32, 32),
|
|
2305
|
+
new J(He)
|
|
2306
|
+
);
|
|
2194
2307
|
}
|
|
2195
2308
|
}
|
|
2196
|
-
class
|
|
2309
|
+
class Xo extends M {
|
|
2197
2310
|
constructor({
|
|
2198
2311
|
width: t = 1,
|
|
2199
2312
|
height: o = 1.5,
|
|
2200
2313
|
depth: n = 0.5,
|
|
2201
2314
|
coverThickness: r = 0.05,
|
|
2202
2315
|
pageIndent: s = 0.05,
|
|
2203
|
-
coverColor: a =
|
|
2204
|
-
pageColor: i =
|
|
2316
|
+
coverColor: a = mt.DARK_RED,
|
|
2317
|
+
pageColor: i = mt.WHITE
|
|
2205
2318
|
} = {}) {
|
|
2206
|
-
super(
|
|
2207
|
-
new
|
|
2208
|
-
|
|
2209
|
-
|
|
2319
|
+
super(
|
|
2320
|
+
new yt(t, o, n, r, s),
|
|
2321
|
+
[
|
|
2322
|
+
new y({ color: a, metalness: 0.1, roughness: 0.7, flatShading: !0 }),
|
|
2323
|
+
new y({ color: i, flatShading: !0 })
|
|
2324
|
+
]
|
|
2325
|
+
);
|
|
2210
2326
|
}
|
|
2211
2327
|
}
|
|
2212
|
-
class
|
|
2328
|
+
class Yo extends M {
|
|
2213
2329
|
constructor({
|
|
2214
2330
|
width: t = 0.4,
|
|
2215
2331
|
height: o = 1.2,
|
|
2216
|
-
depth: n = 0.2
|
|
2217
|
-
material: r = new M({ color: 7829367, roughness: 0.8 })
|
|
2332
|
+
depth: n = 0.2
|
|
2218
2333
|
} = {}) {
|
|
2219
|
-
|
|
2220
|
-
|
|
2334
|
+
super(
|
|
2335
|
+
new Ee(t, o, n),
|
|
2336
|
+
new y({ color: 7829367, roughness: 0.8 })
|
|
2337
|
+
);
|
|
2221
2338
|
}
|
|
2222
2339
|
}
|
|
2223
|
-
class
|
|
2340
|
+
class Zo extends B {
|
|
2224
2341
|
constructor() {
|
|
2225
2342
|
super();
|
|
2226
|
-
const t = new
|
|
2343
|
+
const t = new E(5, 1, 5), o = new y({ color: 8421504, flatShading: !0 }), n = new M(t, o);
|
|
2227
2344
|
n.position.set(0, 0.5, 0), this.add(n);
|
|
2228
|
-
const r = new
|
|
2345
|
+
const r = new E(4, 3, 4), s = new y({ color: 6908265, flatShading: !0 }), a = new M(r, s);
|
|
2229
2346
|
a.position.set(0, 2.5, 0), this.add(a);
|
|
2230
|
-
const i = new
|
|
2347
|
+
const i = new Y(3.5, 2, 4), c = new y({ color: 5263440, flatShading: !0 }), l = new M(i, c);
|
|
2231
2348
|
l.rotation.y = Math.PI / 4, l.position.set(0, 5, 0), this.add(l);
|
|
2232
|
-
const u = new
|
|
2349
|
+
const u = new S(0.2, 0.2, 3.5, 16), h = new y({ color: 6908265, flatShading: !0 });
|
|
2233
2350
|
[
|
|
2234
2351
|
[-1.8, 2.3, -2.2],
|
|
2235
2352
|
[1.8, 2.3, -2.2],
|
|
2236
2353
|
[-1.8, 2.3, 2.2],
|
|
2237
2354
|
[1.8, 2.3, 2.2]
|
|
2238
2355
|
].forEach((x) => {
|
|
2239
|
-
const
|
|
2240
|
-
|
|
2356
|
+
const R = new M(u, h);
|
|
2357
|
+
R.position.set(x[0], x[1], x[2]), this.add(R);
|
|
2241
2358
|
});
|
|
2242
2359
|
const f = new j();
|
|
2243
2360
|
f.moveTo(-1, 0), f.lineTo(-1, 2), f.absarc(0, 2, 1, Math.PI, 0, !0), f.lineTo(1, 0);
|
|
2244
|
-
const
|
|
2361
|
+
const d = {
|
|
2245
2362
|
depth: 0.5,
|
|
2246
2363
|
bevelEnabled: !1
|
|
2247
|
-
},
|
|
2364
|
+
}, p = new Q(f, d), w = new y({ color: 4210752, flatShading: !0 }), v = new M(p, w);
|
|
2248
2365
|
v.position.set(0, 0.5, 1.7), this.add(v);
|
|
2249
2366
|
}
|
|
2250
2367
|
}
|
|
2251
|
-
class
|
|
2368
|
+
class jo extends M {
|
|
2252
2369
|
constructor({ totalHeight: t = 1.75, baseWidth: o = 0.75 } = {}) {
|
|
2253
|
-
super(
|
|
2370
|
+
super(
|
|
2371
|
+
new Ae(t, o),
|
|
2372
|
+
new y({ color: 7829367, roughness: 0.8 })
|
|
2373
|
+
);
|
|
2254
2374
|
}
|
|
2255
2375
|
}
|
|
2256
|
-
class
|
|
2376
|
+
class Qo extends M {
|
|
2257
2377
|
constructor(t = 0.6, o = 1, n = 0.2, r = 0.6) {
|
|
2258
|
-
super(
|
|
2378
|
+
super(
|
|
2379
|
+
new Se(t, o, n, r),
|
|
2380
|
+
new y({ color: 7829367, roughness: 0.8 })
|
|
2381
|
+
);
|
|
2259
2382
|
}
|
|
2260
2383
|
}
|
|
2261
|
-
class
|
|
2384
|
+
class Ko extends M {
|
|
2262
2385
|
constructor(t = 0.5, o = 0.8, n = 0.15) {
|
|
2263
|
-
super(
|
|
2386
|
+
super(
|
|
2387
|
+
new Pe(t, o, n),
|
|
2388
|
+
new y({ color: 7829367, roughness: 0.8 })
|
|
2389
|
+
);
|
|
2264
2390
|
}
|
|
2265
2391
|
}
|
|
2266
|
-
class
|
|
2392
|
+
class $o extends M {
|
|
2267
2393
|
constructor({ height: t = 2.25 } = {}) {
|
|
2268
|
-
super(
|
|
2394
|
+
super(
|
|
2395
|
+
new Te({ height: t }),
|
|
2396
|
+
new y({ color: 9141627, flatShading: !0 })
|
|
2397
|
+
);
|
|
2269
2398
|
}
|
|
2270
2399
|
}
|
|
2271
|
-
class
|
|
2400
|
+
class Jo extends M {
|
|
2272
2401
|
constructor({
|
|
2273
2402
|
barHeight: t = 2,
|
|
2274
2403
|
//
|
|
@@ -2278,17 +2407,20 @@ class Zo extends y {
|
|
|
2278
2407
|
spikeScaleZ: s = 1,
|
|
2279
2408
|
radialSegments: a = 8
|
|
2280
2409
|
} = {}) {
|
|
2281
|
-
super(
|
|
2282
|
-
|
|
2283
|
-
|
|
2284
|
-
|
|
2285
|
-
|
|
2286
|
-
|
|
2287
|
-
|
|
2288
|
-
|
|
2410
|
+
super(
|
|
2411
|
+
new xt({
|
|
2412
|
+
barHeight: t,
|
|
2413
|
+
barRadius: o,
|
|
2414
|
+
spikeHeight: n,
|
|
2415
|
+
spikeRadius: r,
|
|
2416
|
+
spikeScaleZ: s,
|
|
2417
|
+
radialSegments: a
|
|
2418
|
+
}),
|
|
2419
|
+
new y({ color: 3355443, metalness: 0.8, roughness: 0.4 })
|
|
2420
|
+
);
|
|
2289
2421
|
}
|
|
2290
2422
|
}
|
|
2291
|
-
class
|
|
2423
|
+
class Wo extends M {
|
|
2292
2424
|
constructor({
|
|
2293
2425
|
count: t = 20,
|
|
2294
2426
|
//
|
|
@@ -2301,24 +2433,27 @@ class Yo extends y {
|
|
|
2301
2433
|
railHeight: c = 0.1,
|
|
2302
2434
|
railDepth: l = 0.05,
|
|
2303
2435
|
railOffset: u = 0,
|
|
2304
|
-
radialSegments:
|
|
2436
|
+
radialSegments: h = 8
|
|
2305
2437
|
} = {}) {
|
|
2306
|
-
super(
|
|
2307
|
-
|
|
2308
|
-
|
|
2309
|
-
|
|
2310
|
-
|
|
2311
|
-
|
|
2312
|
-
|
|
2313
|
-
|
|
2314
|
-
|
|
2315
|
-
|
|
2316
|
-
|
|
2317
|
-
|
|
2318
|
-
|
|
2319
|
-
|
|
2320
|
-
}
|
|
2321
|
-
|
|
2438
|
+
super(
|
|
2439
|
+
new Ge({
|
|
2440
|
+
count: t,
|
|
2441
|
+
spacing: o,
|
|
2442
|
+
barHeight: n,
|
|
2443
|
+
barRadius: r,
|
|
2444
|
+
spikeHeight: s,
|
|
2445
|
+
spikeRadius: a,
|
|
2446
|
+
spikeScaleZ: i,
|
|
2447
|
+
railHeight: c,
|
|
2448
|
+
railDepth: l,
|
|
2449
|
+
railOffset: u,
|
|
2450
|
+
radialSegments: h
|
|
2451
|
+
}),
|
|
2452
|
+
new y({ color: 3355443, metalness: 0.8, roughness: 0.4 })
|
|
2453
|
+
);
|
|
2454
|
+
}
|
|
2455
|
+
}
|
|
2456
|
+
class tn extends M {
|
|
2322
2457
|
constructor({
|
|
2323
2458
|
width: t = 5,
|
|
2324
2459
|
//
|
|
@@ -2328,23 +2463,23 @@ class jo extends y {
|
|
|
2328
2463
|
frameThickness: s = 0.1,
|
|
2329
2464
|
open: a = !1
|
|
2330
2465
|
} = {}) {
|
|
2331
|
-
super(), this.geometry = new
|
|
2466
|
+
super(), this.geometry = new Ce({ width: t, height: o, depth: n, shelves: r, frameThickness: s, open: a }), this.material = new y({ color: 9127187 });
|
|
2332
2467
|
}
|
|
2333
2468
|
}
|
|
2334
|
-
class
|
|
2469
|
+
class en extends M {
|
|
2335
2470
|
constructor() {
|
|
2336
2471
|
super();
|
|
2337
2472
|
g(this, "geometry");
|
|
2338
2473
|
g(this, "material");
|
|
2339
|
-
this.geometry = new
|
|
2340
|
-
new
|
|
2474
|
+
this.geometry = new Be(), this.material = [
|
|
2475
|
+
new y({ color: 9132587 }),
|
|
2341
2476
|
// Desk surface
|
|
2342
|
-
new
|
|
2477
|
+
new y({ color: 4929057 })
|
|
2343
2478
|
// Desk legs
|
|
2344
2479
|
];
|
|
2345
2480
|
}
|
|
2346
2481
|
}
|
|
2347
|
-
class
|
|
2482
|
+
class on extends B {
|
|
2348
2483
|
constructor(o = 1, n = 0.2) {
|
|
2349
2484
|
super();
|
|
2350
2485
|
g(this, "candle");
|
|
@@ -2353,10 +2488,10 @@ class Qo extends G {
|
|
|
2353
2488
|
g(this, "height");
|
|
2354
2489
|
g(this, "radius");
|
|
2355
2490
|
this.height = o, this.radius = n;
|
|
2356
|
-
const r = new
|
|
2357
|
-
this.candle = new
|
|
2358
|
-
const a = new
|
|
2359
|
-
this.flame = new
|
|
2491
|
+
const r = new S(this.radius, this.radius, this.height, 32), s = new y({ color: 16777215 });
|
|
2492
|
+
this.candle = new M(r, s), this.candle.position.set(0, this.height / 2, 0), this.add(this.candle);
|
|
2493
|
+
const a = new U(0.05, 16, 16), i = new Tt({ color: 16753920 });
|
|
2494
|
+
this.flame = new M(a, i), this.flame.position.set(0, this.height + 0.05, 0), this.add(this.flame), this.candleLight = new pt(16753920, 1, 5), this.candleLight.position.set(0, this.height + 0.05, 0), this.candleLight.castShadow = !0, this.add(this.candleLight), this.animateFlicker();
|
|
2360
2495
|
}
|
|
2361
2496
|
animateFlicker() {
|
|
2362
2497
|
const o = () => {
|
|
@@ -2365,49 +2500,49 @@ class Qo extends G {
|
|
|
2365
2500
|
o();
|
|
2366
2501
|
}
|
|
2367
2502
|
}
|
|
2368
|
-
class
|
|
2503
|
+
class nn extends B {
|
|
2369
2504
|
constructor(t = 1.3, o = 0.5) {
|
|
2370
2505
|
super();
|
|
2371
|
-
const n = new
|
|
2506
|
+
const n = new S(o, o, 0.2, 16), r = new y({ color: 9127187, flatShading: !0 }), s = new M(n, r);
|
|
2372
2507
|
s.position.set(0, 0, 0), this.add(s);
|
|
2373
|
-
const a = new
|
|
2508
|
+
const a = new S(o * 0.9, o * 0.9, t), i = new y({ color: 16766720, flatShading: !0, transparent: !0, opacity: 0.6 }), c = new M(a, i);
|
|
2374
2509
|
c.position.set(0, t / 2 + 0.1, 0), this.add(c);
|
|
2375
|
-
const l = new
|
|
2376
|
-
|
|
2377
|
-
const
|
|
2378
|
-
|
|
2379
|
-
const
|
|
2380
|
-
|
|
2510
|
+
const l = new Y(o * 1.1, 0.5, 8), u = new y({ color: 9127187, flatShading: !0 }), h = new M(l, u);
|
|
2511
|
+
h.position.set(0, t + 0.35, 0), this.add(h);
|
|
2512
|
+
const m = new dt(o * 0.8, 0.05, 8, 16), f = new y({ color: 9127187, flatShading: !0 }), d = new M(m, f);
|
|
2513
|
+
d.position.set(0, t + 0.85, 0), this.add(d);
|
|
2514
|
+
const p = new pt(16755200, 1.5, 15);
|
|
2515
|
+
p.position.set(0, t / 2 + 0.1, 0), p.castShadow = !0, this.add(p);
|
|
2381
2516
|
}
|
|
2382
2517
|
}
|
|
2383
|
-
class
|
|
2518
|
+
class sn extends B {
|
|
2384
2519
|
constructor() {
|
|
2385
2520
|
super();
|
|
2386
|
-
const t = new
|
|
2521
|
+
const t = new it(1, 0), o = new y({ color: 8421504, flatShading: !0 }), n = new y({ color: 4950843, flatShading: !0, opacity: 0.8, transparent: !0 });
|
|
2387
2522
|
for (let r = 0; r < 5; r++) {
|
|
2388
|
-
const s = new
|
|
2523
|
+
const s = new M(t, o);
|
|
2389
2524
|
s.scale.set(0.8 + Math.random() * 0.4, 0.8 + Math.random() * 0.4, 0.8 + Math.random() * 0.4), s.rotation.set(Math.random() * Math.PI, Math.random() * Math.PI, Math.random() * Math.PI), s.position.set((Math.random() - 0.5) * 4, 0, (Math.random() - 0.5) * 4), this.add(s);
|
|
2390
|
-
const a = new
|
|
2525
|
+
const a = new M(t, n);
|
|
2391
2526
|
a.scale.set(s.scale.x * 0.9, s.scale.y * 0.5, s.scale.z * 0.9), a.rotation.copy(s.rotation), a.position.copy(s.position), a.position.y += 0.3, this.add(a);
|
|
2392
2527
|
}
|
|
2393
2528
|
}
|
|
2394
2529
|
}
|
|
2395
|
-
class
|
|
2530
|
+
class rn extends M {
|
|
2396
2531
|
constructor(t = 1, o = 4, n = 4) {
|
|
2397
|
-
super(), this.geometry = new
|
|
2532
|
+
super(), this.geometry = new Ne(t, o, n), this.material = new y({ color: 8421504, flatShading: !0 });
|
|
2398
2533
|
}
|
|
2399
2534
|
}
|
|
2400
|
-
class
|
|
2535
|
+
class an extends B {
|
|
2401
2536
|
constructor() {
|
|
2402
2537
|
super();
|
|
2403
|
-
const t = new
|
|
2538
|
+
const t = new it(1, 0), o = new y({ color: 8421504, flatShading: !0 });
|
|
2404
2539
|
for (let n = 0; n < 5; n++) {
|
|
2405
|
-
const r = new
|
|
2540
|
+
const r = new M(t, o);
|
|
2406
2541
|
r.scale.set(0.8 + Math.random() * 0.4, 0.8 + Math.random() * 0.4, 0.8 + Math.random() * 0.4), r.rotation.set(Math.random() * Math.PI, Math.random() * Math.PI, Math.random() * Math.PI), r.position.set((Math.random() - 0.5) * 4, 0, (Math.random() - 0.5) * 4), this.add(r);
|
|
2407
2542
|
}
|
|
2408
2543
|
}
|
|
2409
2544
|
}
|
|
2410
|
-
class
|
|
2545
|
+
class cn extends B {
|
|
2411
2546
|
constructor() {
|
|
2412
2547
|
super();
|
|
2413
2548
|
const t = [
|
|
@@ -2421,91 +2556,91 @@ class tn extends G {
|
|
|
2421
2556
|
// Neck
|
|
2422
2557
|
new I(0.6, 2.5)
|
|
2423
2558
|
// Mouth
|
|
2424
|
-
], o = new
|
|
2559
|
+
], o = new Z(t, 10), n = new S(0.3, 0.4, 0.2, 8), r = new y({
|
|
2425
2560
|
color: 8965375,
|
|
2426
2561
|
transparent: !0,
|
|
2427
2562
|
opacity: 0.5,
|
|
2428
2563
|
roughness: 0.1,
|
|
2429
2564
|
metalness: 0.3
|
|
2430
|
-
}), s = new
|
|
2565
|
+
}), s = new y({
|
|
2431
2566
|
color: 16724838,
|
|
2432
2567
|
// Vibrant potion color
|
|
2433
2568
|
transparent: !0,
|
|
2434
2569
|
opacity: 0.6
|
|
2435
|
-
}), a = new
|
|
2570
|
+
}), a = new y({
|
|
2436
2571
|
color: 9127187,
|
|
2437
2572
|
roughness: 1
|
|
2438
|
-
}), i = new
|
|
2573
|
+
}), i = new M(o, r);
|
|
2439
2574
|
i.castShadow = !0;
|
|
2440
|
-
const c = new
|
|
2575
|
+
const c = new M(o, s), l = new M(n, a);
|
|
2441
2576
|
c.scale.set(0.8, 0.8, 0.8), c.position.y = 0.1, l.position.y = 2.5;
|
|
2442
|
-
const u = new
|
|
2577
|
+
const u = new B();
|
|
2443
2578
|
u.add(i, c, l), this.add(u);
|
|
2444
2579
|
}
|
|
2445
2580
|
}
|
|
2446
|
-
class
|
|
2581
|
+
class ln extends B {
|
|
2447
2582
|
constructor() {
|
|
2448
2583
|
super();
|
|
2449
|
-
const t = new
|
|
2584
|
+
const t = new S(0.3, 0.4, 0.1, 16), o = new y({
|
|
2450
2585
|
color: 3355443,
|
|
2451
2586
|
roughness: 0.6,
|
|
2452
2587
|
metalness: 0.3
|
|
2453
|
-
}), n = new
|
|
2588
|
+
}), n = new M(t, o);
|
|
2454
2589
|
n.position.y = 0.05;
|
|
2455
|
-
const r = new
|
|
2590
|
+
const r = new S(0.1, 0.1, 0.7, 16), s = new y({
|
|
2456
2591
|
color: 5592405,
|
|
2457
2592
|
roughness: 0.5,
|
|
2458
2593
|
metalness: 0.4
|
|
2459
|
-
}), a = new
|
|
2594
|
+
}), a = new M(r, s);
|
|
2460
2595
|
a.position.y = 0.4;
|
|
2461
|
-
const i = new
|
|
2596
|
+
const i = new Y(0.075, 0.2, 16), c = new y({
|
|
2462
2597
|
color: 16733440,
|
|
2463
2598
|
emissive: 16733440,
|
|
2464
2599
|
emissiveIntensity: 0.6,
|
|
2465
2600
|
transparent: !0,
|
|
2466
2601
|
opacity: 0.8
|
|
2467
|
-
}), l = new
|
|
2602
|
+
}), l = new M(i, c);
|
|
2468
2603
|
l.position.y = 0.8, this.add(n, a, l);
|
|
2469
2604
|
}
|
|
2470
2605
|
}
|
|
2471
|
-
class
|
|
2606
|
+
class un extends B {
|
|
2472
2607
|
constructor() {
|
|
2473
2608
|
super();
|
|
2474
|
-
const t = new
|
|
2609
|
+
const t = new E(3, 4, 0.1), o = new y({
|
|
2475
2610
|
color: 3026478,
|
|
2476
2611
|
roughness: 0.8,
|
|
2477
2612
|
metalness: 0.6
|
|
2478
|
-
}), n = new
|
|
2613
|
+
}), n = new E(0.2, 0.5, 0.2), r = new y({
|
|
2479
2614
|
color: 11184810,
|
|
2480
2615
|
roughness: 0.5,
|
|
2481
2616
|
metalness: 0.7
|
|
2482
|
-
}), s = new
|
|
2617
|
+
}), s = new S(0.3, 0.3, 0.1, 16), a = new y({
|
|
2483
2618
|
color: 5592405,
|
|
2484
2619
|
roughness: 0.7,
|
|
2485
2620
|
metalness: 0.5
|
|
2486
|
-
}), i = new
|
|
2621
|
+
}), i = new M(t, o);
|
|
2487
2622
|
for (let w = -1; w <= 1; w++) {
|
|
2488
|
-
const v = new
|
|
2623
|
+
const v = new M(n, r);
|
|
2489
2624
|
v.position.set(w, 1.5, 0.1), i.add(v);
|
|
2490
2625
|
}
|
|
2491
|
-
const c = new
|
|
2626
|
+
const c = new M(s, a);
|
|
2492
2627
|
c.rotation.x = Math.PI / 2, c.position.set(0, 0.5, 0.15), i.add(c);
|
|
2493
|
-
const l = new
|
|
2628
|
+
const l = new U(0.15, 8, 8), u = new y({
|
|
2494
2629
|
color: 16711680,
|
|
2495
2630
|
emissive: 16711680,
|
|
2496
2631
|
emissiveIntensity: 0.5
|
|
2497
|
-
}),
|
|
2498
|
-
|
|
2499
|
-
let
|
|
2500
|
-
function
|
|
2501
|
-
requestAnimationFrame(
|
|
2502
|
-
const w =
|
|
2503
|
-
|
|
2632
|
+
}), h = new M(l, u);
|
|
2633
|
+
h.position.set(0, -1, 0.1), i.add(h), this.add(i);
|
|
2634
|
+
let m = 0.015, f = 0.8, d = 0.2;
|
|
2635
|
+
function p() {
|
|
2636
|
+
requestAnimationFrame(p);
|
|
2637
|
+
const w = d + Math.abs(Math.sin(Date.now() * m)) * (f - d);
|
|
2638
|
+
h.material.emissiveIntensity = w;
|
|
2504
2639
|
}
|
|
2505
|
-
|
|
2640
|
+
p();
|
|
2506
2641
|
}
|
|
2507
2642
|
}
|
|
2508
|
-
class
|
|
2643
|
+
class hn extends M {
|
|
2509
2644
|
constructor({
|
|
2510
2645
|
flaskRadius: t = 1,
|
|
2511
2646
|
//
|
|
@@ -2514,7 +2649,7 @@ class nn extends y {
|
|
|
2514
2649
|
neckHeight: r = 1,
|
|
2515
2650
|
radialSegments: s = 16
|
|
2516
2651
|
} = {}) {
|
|
2517
|
-
super(), this.geometry = new
|
|
2652
|
+
super(), this.geometry = new _e({ flaskRadius: t, neckRadius: o, height: n, neckHeight: r, radialSegments: s }), this.material = new W({
|
|
2518
2653
|
color: 8965375,
|
|
2519
2654
|
transparent: !0,
|
|
2520
2655
|
opacity: 0.4,
|
|
@@ -2522,12 +2657,12 @@ class nn extends y {
|
|
|
2522
2657
|
metalness: 0.1,
|
|
2523
2658
|
reflectivity: 0.8,
|
|
2524
2659
|
transmission: 0.9,
|
|
2525
|
-
side:
|
|
2660
|
+
side: k,
|
|
2526
2661
|
wireframe: !1
|
|
2527
2662
|
});
|
|
2528
2663
|
}
|
|
2529
2664
|
}
|
|
2530
|
-
class
|
|
2665
|
+
class mn extends B {
|
|
2531
2666
|
constructor() {
|
|
2532
2667
|
super();
|
|
2533
2668
|
const t = [
|
|
@@ -2541,28 +2676,28 @@ class sn extends G {
|
|
|
2541
2676
|
// Narrow neck
|
|
2542
2677
|
new I(0.6, 3.5)
|
|
2543
2678
|
// Mouth of the flask
|
|
2544
|
-
], o = new
|
|
2679
|
+
], o = new Z(t, 12), n = new S(0.6, 0.7, 0.3, 8), r = new y({
|
|
2545
2680
|
color: 8965290,
|
|
2546
2681
|
transparent: !0,
|
|
2547
2682
|
opacity: 0.4,
|
|
2548
2683
|
roughness: 0.1,
|
|
2549
2684
|
metalness: 0.5,
|
|
2550
2685
|
depthWrite: !1
|
|
2551
|
-
}), s = new
|
|
2686
|
+
}), s = new y({
|
|
2552
2687
|
color: 9127187,
|
|
2553
2688
|
roughness: 1
|
|
2554
|
-
}), a = new
|
|
2689
|
+
}), a = new M(o, r);
|
|
2555
2690
|
a.castShadow = !0;
|
|
2556
|
-
const i = new
|
|
2691
|
+
const i = new M(n, s);
|
|
2557
2692
|
i.position.y = 3.5, this.add(a, i);
|
|
2558
2693
|
}
|
|
2559
2694
|
}
|
|
2560
|
-
class
|
|
2695
|
+
class fn extends M {
|
|
2561
2696
|
constructor() {
|
|
2562
2697
|
super();
|
|
2563
2698
|
g(this, "geometry");
|
|
2564
2699
|
g(this, "material");
|
|
2565
|
-
this.geometry = new
|
|
2700
|
+
this.geometry = new Oe(), this.material = new W({
|
|
2566
2701
|
color: 8965375,
|
|
2567
2702
|
transparent: !0,
|
|
2568
2703
|
opacity: 0.4,
|
|
@@ -2570,92 +2705,92 @@ class rn extends y {
|
|
|
2570
2705
|
metalness: 0.1,
|
|
2571
2706
|
reflectivity: 0.8,
|
|
2572
2707
|
transmission: 0.9,
|
|
2573
|
-
side:
|
|
2708
|
+
side: k
|
|
2574
2709
|
}), this.rotation.x = -Math.PI / 2;
|
|
2575
2710
|
}
|
|
2576
2711
|
}
|
|
2577
|
-
class
|
|
2712
|
+
class dn extends B {
|
|
2578
2713
|
constructor() {
|
|
2579
2714
|
super();
|
|
2580
|
-
const t = new
|
|
2715
|
+
const t = new E(2, 3, 0.1), o = new y({
|
|
2581
2716
|
color: 3355443,
|
|
2582
2717
|
roughness: 0.8,
|
|
2583
2718
|
metalness: 0.5
|
|
2584
|
-
}), n = new
|
|
2719
|
+
}), n = new M(t, o), r = new S(0.1, 0.1, 0.2, 8), s = new S(0.05, 0.05, 1, 8), a = new y({
|
|
2585
2720
|
color: 11184810,
|
|
2586
2721
|
roughness: 0.5,
|
|
2587
2722
|
metalness: 0.7
|
|
2588
2723
|
});
|
|
2589
2724
|
for (let i = -0.5; i <= 0.5; i += 0.5) {
|
|
2590
|
-
const c = new
|
|
2725
|
+
const c = new M(r, a);
|
|
2591
2726
|
c.position.set(i, 1, 0.1);
|
|
2592
|
-
const l = new
|
|
2727
|
+
const l = new M(s, a);
|
|
2593
2728
|
l.position.y = 0.5, c.add(l), this.add(c);
|
|
2594
2729
|
}
|
|
2595
2730
|
this.add(n);
|
|
2596
2731
|
}
|
|
2597
2732
|
}
|
|
2598
|
-
class
|
|
2733
|
+
class pn extends B {
|
|
2599
2734
|
constructor() {
|
|
2600
2735
|
super();
|
|
2601
|
-
const t = new
|
|
2736
|
+
const t = new E(1, 0.2, 0.5), o = new y({
|
|
2602
2737
|
color: 4473924,
|
|
2603
2738
|
roughness: 0.6,
|
|
2604
2739
|
metalness: 0.3
|
|
2605
|
-
}), n = new
|
|
2740
|
+
}), n = new M(t, o);
|
|
2606
2741
|
n.position.y = 0.1;
|
|
2607
|
-
const r = new
|
|
2742
|
+
const r = new E(0.2, 1, 0.2), s = new M(r, o);
|
|
2608
2743
|
s.position.set(0, 0.6, -0.2);
|
|
2609
|
-
const a = new
|
|
2744
|
+
const a = new S(0.1, 0.1, 0.4, 8), i = new y({
|
|
2610
2745
|
color: 3355443,
|
|
2611
2746
|
roughness: 0.5,
|
|
2612
2747
|
metalness: 0.6
|
|
2613
|
-
}), c = new
|
|
2748
|
+
}), c = new M(a, i);
|
|
2614
2749
|
c.position.set(0, 1.1, -0.35), c.rotation.x = -Math.PI / 4;
|
|
2615
|
-
const l = new
|
|
2750
|
+
const l = new E(0.6, 0.1, 0.6), u = new y({
|
|
2616
2751
|
color: 5592405,
|
|
2617
2752
|
roughness: 0.8,
|
|
2618
2753
|
metalness: 0.2
|
|
2619
|
-
}),
|
|
2620
|
-
|
|
2754
|
+
}), h = new M(l, u);
|
|
2755
|
+
h.position.set(0, 0.6, 0), this.add(n, s, c, h);
|
|
2621
2756
|
}
|
|
2622
2757
|
}
|
|
2623
|
-
class
|
|
2758
|
+
class Mn extends B {
|
|
2624
2759
|
constructor() {
|
|
2625
2760
|
super();
|
|
2626
|
-
const t = new
|
|
2761
|
+
const t = new ze(), o = new S(0.2, 0.3, 1.5, 8);
|
|
2627
2762
|
o.translate(0, 0.75, 0);
|
|
2628
|
-
const n = new
|
|
2763
|
+
const n = new y({
|
|
2629
2764
|
color: 6045747,
|
|
2630
2765
|
// Dark earthy tone
|
|
2631
2766
|
roughness: 1,
|
|
2632
2767
|
metalness: 0,
|
|
2633
|
-
side:
|
|
2768
|
+
side: k
|
|
2634
2769
|
// Render inside and outside
|
|
2635
|
-
}), r = new
|
|
2770
|
+
}), r = new y({
|
|
2636
2771
|
color: 9132587,
|
|
2637
2772
|
// Slightly lighter earthy color
|
|
2638
2773
|
roughness: 0.8,
|
|
2639
2774
|
metalness: 0.1
|
|
2640
|
-
}), s = new
|
|
2775
|
+
}), s = new M(t, n);
|
|
2641
2776
|
s.castShadow = !0;
|
|
2642
|
-
const a = new
|
|
2777
|
+
const a = new M(o, r);
|
|
2643
2778
|
a.castShadow = !0, a.position.set(0.3, 1.3, 0), a.rotation.z = Math.PI / 4, this.add(s, a);
|
|
2644
2779
|
}
|
|
2645
2780
|
}
|
|
2646
|
-
class
|
|
2781
|
+
class yn extends M {
|
|
2647
2782
|
constructor({ width: o = 3, height: n = 4, depth: r = 0.1 } = {}) {
|
|
2648
2783
|
super();
|
|
2649
2784
|
g(this, "geometry");
|
|
2650
2785
|
g(this, "material");
|
|
2651
|
-
this.geometry = new
|
|
2786
|
+
this.geometry = new E(o, n, r), this.material = new y({
|
|
2652
2787
|
color: 3026478,
|
|
2653
2788
|
roughness: 0.8,
|
|
2654
2789
|
metalness: 0.6
|
|
2655
2790
|
});
|
|
2656
2791
|
}
|
|
2657
2792
|
}
|
|
2658
|
-
class
|
|
2793
|
+
class wn extends M {
|
|
2659
2794
|
constructor({
|
|
2660
2795
|
radius: o = 0.15,
|
|
2661
2796
|
//
|
|
@@ -2666,34 +2801,34 @@ class mn extends y {
|
|
|
2666
2801
|
super();
|
|
2667
2802
|
g(this, "geometry");
|
|
2668
2803
|
g(this, "material");
|
|
2669
|
-
this.geometry = new
|
|
2804
|
+
this.geometry = new U(o, 8, 8), this.material = new y({
|
|
2670
2805
|
color: n,
|
|
2671
2806
|
emissive: r,
|
|
2672
2807
|
emissiveIntensity: s
|
|
2673
2808
|
});
|
|
2674
2809
|
}
|
|
2675
2810
|
}
|
|
2676
|
-
class
|
|
2811
|
+
class vn extends B {
|
|
2677
2812
|
constructor() {
|
|
2678
2813
|
super();
|
|
2679
|
-
const t = 100, o = 0.05, n = new
|
|
2814
|
+
const t = 100, o = 0.05, n = new Gt(
|
|
2680
2815
|
Array.from({ length: t }, (l, u) => {
|
|
2681
|
-
const
|
|
2816
|
+
const h = u * 0.2;
|
|
2682
2817
|
return new b(
|
|
2683
|
-
Math.cos(
|
|
2818
|
+
Math.cos(h) * 0.4,
|
|
2684
2819
|
u * o,
|
|
2685
2820
|
// Gradual height increase
|
|
2686
|
-
Math.sin(
|
|
2821
|
+
Math.sin(h) * 0.4
|
|
2687
2822
|
);
|
|
2688
2823
|
})
|
|
2689
|
-
), r = new
|
|
2824
|
+
), r = new Ct(n, 200, 0.1, 8, !1), s = new y({
|
|
2690
2825
|
color: 8965375,
|
|
2691
2826
|
transparent: !0,
|
|
2692
2827
|
opacity: 0.3,
|
|
2693
2828
|
roughness: 0.1,
|
|
2694
2829
|
metalness: 0.2,
|
|
2695
2830
|
emissive: 8965375
|
|
2696
|
-
}), a = new
|
|
2831
|
+
}), a = new M(r, s);
|
|
2697
2832
|
this.add(a);
|
|
2698
2833
|
function i() {
|
|
2699
2834
|
s.emissiveIntensity = 0.2 + Math.sin(Date.now() * 5e-3) * 0.1;
|
|
@@ -2704,7 +2839,7 @@ class hn extends G {
|
|
|
2704
2839
|
c();
|
|
2705
2840
|
}
|
|
2706
2841
|
}
|
|
2707
|
-
class
|
|
2842
|
+
class xn extends M {
|
|
2708
2843
|
constructor({
|
|
2709
2844
|
radius: o = 0.3,
|
|
2710
2845
|
//
|
|
@@ -2716,37 +2851,37 @@ class fn extends y {
|
|
|
2716
2851
|
super();
|
|
2717
2852
|
g(this, "geometry");
|
|
2718
2853
|
g(this, "material");
|
|
2719
|
-
this.geometry = new Fe({ radius: o, height: n, count: r, thickness: s, radialSegments: a }), this.material = new
|
|
2854
|
+
this.geometry = new Fe({ radius: o, height: n, count: r, thickness: s, radialSegments: a }), this.material = new y({
|
|
2720
2855
|
color: 8947848,
|
|
2721
2856
|
roughness: 0.7,
|
|
2722
2857
|
metalness: 0.3
|
|
2723
2858
|
});
|
|
2724
2859
|
}
|
|
2725
2860
|
}
|
|
2726
|
-
class
|
|
2861
|
+
class gn extends B {
|
|
2727
2862
|
constructor() {
|
|
2728
2863
|
super();
|
|
2729
|
-
const t = new
|
|
2864
|
+
const t = new S(0.5, 0.6, 0.3, 16), o = new y({
|
|
2730
2865
|
color: 3355443,
|
|
2731
2866
|
roughness: 0.6,
|
|
2732
2867
|
metalness: 0.5
|
|
2733
|
-
}), n = new
|
|
2868
|
+
}), n = new M(t, o);
|
|
2734
2869
|
n.position.y = 0.15;
|
|
2735
|
-
const r = new
|
|
2870
|
+
const r = new S(0.15, 0.15, 2, 12, 1, !0), s = new y({
|
|
2736
2871
|
color: 16737792,
|
|
2737
2872
|
roughness: 0.5,
|
|
2738
2873
|
metalness: 0.8,
|
|
2739
|
-
side:
|
|
2740
|
-
}), a = new
|
|
2874
|
+
side: k
|
|
2875
|
+
}), a = new M(r, s);
|
|
2741
2876
|
a.position.y = 1.3;
|
|
2742
|
-
const i = new
|
|
2877
|
+
const i = new U(0.3, 16, 16), c = new M(i, s);
|
|
2743
2878
|
c.position.y = 2.4, this.add(n, a, c);
|
|
2744
2879
|
}
|
|
2745
2880
|
}
|
|
2746
|
-
class
|
|
2881
|
+
class bn extends B {
|
|
2747
2882
|
constructor(t = 0.2, o = 0.2, n = 3, r = 32) {
|
|
2748
2883
|
super();
|
|
2749
|
-
const s = new
|
|
2884
|
+
const s = new rt(t, o, n, r), a = new W({
|
|
2750
2885
|
color: 8965375,
|
|
2751
2886
|
transparent: !0,
|
|
2752
2887
|
opacity: 0.4,
|
|
@@ -2756,49 +2891,49 @@ class dn extends G {
|
|
|
2756
2891
|
transmission: 0.9,
|
|
2757
2892
|
// For glass effect
|
|
2758
2893
|
depthWrite: !1,
|
|
2759
|
-
side:
|
|
2760
|
-
}), i = new
|
|
2894
|
+
side: k
|
|
2895
|
+
}), i = new M(s, a);
|
|
2761
2896
|
this.add(i);
|
|
2762
2897
|
}
|
|
2763
2898
|
}
|
|
2764
|
-
class
|
|
2899
|
+
class In extends B {
|
|
2765
2900
|
constructor(t = 3, o = [65450, 16711850, 11141375]) {
|
|
2766
2901
|
super();
|
|
2767
|
-
const n = new
|
|
2902
|
+
const n = new E(3, 0.2, 1), r = new y({
|
|
2768
2903
|
color: 9127187,
|
|
2769
2904
|
// Wooden color or change to metallic tone
|
|
2770
2905
|
roughness: 0.7,
|
|
2771
2906
|
metalness: 0.3
|
|
2772
|
-
}), s = new
|
|
2907
|
+
}), s = new M(n, r);
|
|
2773
2908
|
s.position.y = 0.5, s.castShadow = !0;
|
|
2774
|
-
const a = new
|
|
2909
|
+
const a = new rt(0.1, 0.1, 1, 16), i = new y({
|
|
2775
2910
|
color: 11184810,
|
|
2776
2911
|
transparent: !0,
|
|
2777
2912
|
opacity: 0.4,
|
|
2778
2913
|
roughness: 0.1,
|
|
2779
2914
|
metalness: 0.5,
|
|
2780
2915
|
depthWrite: !1,
|
|
2781
|
-
side:
|
|
2916
|
+
side: k
|
|
2782
2917
|
});
|
|
2783
2918
|
for (let c = 0; c < t; c++) {
|
|
2784
|
-
const l = new
|
|
2919
|
+
const l = new M(a, i), u = (c - (t - 1) / 2) * 0.8;
|
|
2785
2920
|
l.position.set(u, 1, 0), l.castShadow = !0;
|
|
2786
|
-
const
|
|
2787
|
-
color:
|
|
2788
|
-
emissive:
|
|
2921
|
+
const h = new rt(0.099, 0.099, 0.5, 16, !1), m = o[c % o.length], f = new y({
|
|
2922
|
+
color: m,
|
|
2923
|
+
emissive: m,
|
|
2789
2924
|
emissiveIntensity: 0.5,
|
|
2790
2925
|
transparent: !0,
|
|
2791
2926
|
opacity: 0.6
|
|
2792
|
-
}),
|
|
2793
|
-
|
|
2927
|
+
}), d = new M(h, f);
|
|
2928
|
+
d.position.set(0, -0.25, 0), l.add(d), s.add(l);
|
|
2794
2929
|
}
|
|
2795
2930
|
this.add(s);
|
|
2796
2931
|
}
|
|
2797
2932
|
}
|
|
2798
|
-
class
|
|
2933
|
+
class En extends M {
|
|
2799
2934
|
constructor() {
|
|
2800
2935
|
super();
|
|
2801
|
-
const t = new
|
|
2936
|
+
const t = new Le(), o = new W({
|
|
2802
2937
|
color: 5597999,
|
|
2803
2938
|
roughness: 0.1,
|
|
2804
2939
|
transmission: 0.9,
|
|
@@ -2811,27 +2946,27 @@ class Mn extends y {
|
|
|
2811
2946
|
this.geometry = t, this.material = o;
|
|
2812
2947
|
}
|
|
2813
2948
|
}
|
|
2814
|
-
class
|
|
2949
|
+
class Xe extends j {
|
|
2815
2950
|
constructor(t = 5, o = 0.5, n = 1) {
|
|
2816
2951
|
super();
|
|
2817
2952
|
const r = Math.PI * 2 / t, s = r / 2, a = r / 4;
|
|
2818
2953
|
this.moveTo(Math.cos(0) * n, -Math.sin(0) * n);
|
|
2819
2954
|
for (let i = 1; i <= t; ++i) {
|
|
2820
|
-
let c = Math.cos(r * i - a * 3) * (o / Math.cos(a)), l = -Math.sin(r * i - a * 3) * (o / Math.cos(a)), u = Math.cos(r * i - s) * o,
|
|
2821
|
-
this.quadraticCurveTo(c, l, u,
|
|
2955
|
+
let c = Math.cos(r * i - a * 3) * (o / Math.cos(a)), l = -Math.sin(r * i - a * 3) * (o / Math.cos(a)), u = Math.cos(r * i - s) * o, h = -Math.sin(r * i - s) * o;
|
|
2956
|
+
this.quadraticCurveTo(c, l, u, h), c = Math.cos(r * i - a) * (o / Math.cos(a)), l = -Math.sin(r * i - a) * (o / Math.cos(a)), u = Math.cos(r * i) * n, h = -Math.sin(r * i) * n, this.quadraticCurveTo(c, l, u, h);
|
|
2822
2957
|
}
|
|
2823
2958
|
this.closePath();
|
|
2824
2959
|
}
|
|
2825
2960
|
}
|
|
2826
|
-
class
|
|
2961
|
+
class An extends M {
|
|
2827
2962
|
constructor(t = 5, o = 0.5, n = 1, r = 0.25) {
|
|
2828
2963
|
super();
|
|
2829
|
-
const s = new
|
|
2964
|
+
const s = new Xe(t, o, n), a = new Q(s, {
|
|
2830
2965
|
depth: r,
|
|
2831
2966
|
bevelEnabled: r > 0,
|
|
2832
2967
|
bevelThickness: 0,
|
|
2833
2968
|
bevelSize: 0
|
|
2834
|
-
}), i = new
|
|
2969
|
+
}), i = new y({
|
|
2835
2970
|
color: 16776960,
|
|
2836
2971
|
emissive: 16766720,
|
|
2837
2972
|
emissiveIntensity: 0.25,
|
|
@@ -2842,7 +2977,7 @@ class wn extends y {
|
|
|
2842
2977
|
a.center(), this.geometry = a, this.material = i;
|
|
2843
2978
|
}
|
|
2844
2979
|
}
|
|
2845
|
-
class
|
|
2980
|
+
class Ye extends j {
|
|
2846
2981
|
constructor(t = 5, o = 0.5, n = 1, r = 5, s = 0.25) {
|
|
2847
2982
|
super();
|
|
2848
2983
|
const a = Math.PI * 2 / t, i = a / 4;
|
|
@@ -2850,7 +2985,7 @@ class Ve extends j {
|
|
|
2850
2985
|
for (let c = 1; c <= t; ++c)
|
|
2851
2986
|
this.lineTo(Math.cos(a * c - i * 3) * o, -Math.sin(a * c - i * 3) * o), this.lineTo(Math.cos(a * c - i * 2) * o, -Math.sin(a * c - i * 2) * o), this.lineTo(Math.cos(a * c - i) * n, -Math.sin(a * c - i) * n), this.lineTo(Math.cos(a * c) * n, -Math.sin(a * c) * n);
|
|
2852
2987
|
if (this.closePath(), s > 0 && r > 2) {
|
|
2853
|
-
const c = new
|
|
2988
|
+
const c = new Bt(), l = Math.PI * 2 / r;
|
|
2854
2989
|
c.moveTo(Math.cos(0) * s, -Math.sin(0) * s);
|
|
2855
2990
|
for (let u = 1; u < r; ++u)
|
|
2856
2991
|
c.lineTo(Math.cos(l * u) * s, -Math.sin(l * u) * s);
|
|
@@ -2858,15 +2993,15 @@ class Ve extends j {
|
|
|
2858
2993
|
}
|
|
2859
2994
|
}
|
|
2860
2995
|
}
|
|
2861
|
-
class
|
|
2996
|
+
class Sn extends M {
|
|
2862
2997
|
constructor(t = 5, o = 0.5, n = 1, r = 5, s = 0.25, a = 0.25) {
|
|
2863
2998
|
super();
|
|
2864
|
-
const i = new
|
|
2999
|
+
const i = new Ye(t, o, n, r, s), c = new Q(i, {
|
|
2865
3000
|
depth: a,
|
|
2866
3001
|
bevelEnabled: a > 0,
|
|
2867
3002
|
bevelThickness: 0,
|
|
2868
3003
|
bevelSize: 0
|
|
2869
|
-
}), l = new
|
|
3004
|
+
}), l = new y({
|
|
2870
3005
|
color: 11184810,
|
|
2871
3006
|
metalness: 0.8,
|
|
2872
3007
|
roughness: 0.2
|
|
@@ -2874,7 +3009,7 @@ class vn extends y {
|
|
|
2874
3009
|
c.center(), this.geometry = c, this.material = l;
|
|
2875
3010
|
}
|
|
2876
3011
|
}
|
|
2877
|
-
class
|
|
3012
|
+
class Ze extends j {
|
|
2878
3013
|
constructor(t = 1, o = 2.1, n = 1.4, r = 1.6) {
|
|
2879
3014
|
super(), this.moveTo(0, n * t / 3), this.bezierCurveTo(
|
|
2880
3015
|
-o * 0.375 * t,
|
|
@@ -2899,15 +3034,15 @@ class Xe extends j {
|
|
|
2899
3034
|
);
|
|
2900
3035
|
}
|
|
2901
3036
|
}
|
|
2902
|
-
class
|
|
3037
|
+
class Pn extends M {
|
|
2903
3038
|
constructor(t = 1, o = 1, n = 1, r = 10, s = 0.25) {
|
|
2904
3039
|
super();
|
|
2905
|
-
const a = new
|
|
3040
|
+
const a = new Ze(t, o, n, r), i = new Q(a, {
|
|
2906
3041
|
depth: s,
|
|
2907
3042
|
bevelEnabled: s > 0,
|
|
2908
3043
|
bevelThickness: 0,
|
|
2909
3044
|
bevelSize: 0
|
|
2910
|
-
}), c = new
|
|
3045
|
+
}), c = new y({
|
|
2911
3046
|
color: 12986408,
|
|
2912
3047
|
emissive: 12981270,
|
|
2913
3048
|
emissiveIntensity: 0.25,
|
|
@@ -2918,7 +3053,7 @@ class xn extends y {
|
|
|
2918
3053
|
i.center(), this.geometry = i, this.material = c;
|
|
2919
3054
|
}
|
|
2920
3055
|
}
|
|
2921
|
-
class
|
|
3056
|
+
class je extends j {
|
|
2922
3057
|
constructor(t = 5, o = 0.5, n = 1) {
|
|
2923
3058
|
super();
|
|
2924
3059
|
const r = Math.PI * 2 / t, s = r / 2;
|
|
@@ -2928,15 +3063,15 @@ class Ze extends j {
|
|
|
2928
3063
|
this.closePath();
|
|
2929
3064
|
}
|
|
2930
3065
|
}
|
|
2931
|
-
class
|
|
3066
|
+
class Tn extends M {
|
|
2932
3067
|
constructor(t = 5, o = 0.5, n = 1, r = 0.25) {
|
|
2933
3068
|
super();
|
|
2934
|
-
const s = new
|
|
3069
|
+
const s = new je(t, o, n), a = new Q(s, {
|
|
2935
3070
|
depth: r,
|
|
2936
3071
|
bevelEnabled: r > 0,
|
|
2937
3072
|
bevelThickness: 0,
|
|
2938
3073
|
bevelSize: 0
|
|
2939
|
-
}), i = new
|
|
3074
|
+
}), i = new y({
|
|
2940
3075
|
color: 16776960,
|
|
2941
3076
|
emissive: 16766720,
|
|
2942
3077
|
emissiveIntensity: 0.25,
|
|
@@ -2947,12 +3082,12 @@ class gn extends y {
|
|
|
2947
3082
|
a.center(), this.geometry = a, this.material = i;
|
|
2948
3083
|
}
|
|
2949
3084
|
}
|
|
2950
|
-
class
|
|
3085
|
+
class Gn extends M {
|
|
2951
3086
|
constructor() {
|
|
2952
|
-
super(), this.geometry = new Ue(), this.material = new
|
|
3087
|
+
super(), this.geometry = new Ue(), this.material = new y({ color: 16777215 });
|
|
2953
3088
|
}
|
|
2954
3089
|
}
|
|
2955
|
-
class
|
|
3090
|
+
class Cn extends M {
|
|
2956
3091
|
constructor({
|
|
2957
3092
|
trunkRadiusTop: t = 0.25,
|
|
2958
3093
|
trunkRadiusBottom: o = 0.4,
|
|
@@ -2966,7 +3101,7 @@ class In extends y {
|
|
|
2966
3101
|
leafColor: u = 2263842
|
|
2967
3102
|
} = {}) {
|
|
2968
3103
|
super();
|
|
2969
|
-
const
|
|
3104
|
+
const h = new Ve({
|
|
2970
3105
|
trunkRadiusTop: t,
|
|
2971
3106
|
trunkRadiusBottom: o,
|
|
2972
3107
|
trunkHeight: n,
|
|
@@ -2975,21 +3110,21 @@ class In extends y {
|
|
|
2975
3110
|
leafCount: i,
|
|
2976
3111
|
leafDetail: c,
|
|
2977
3112
|
leafSpreadRadius: l
|
|
2978
|
-
}),
|
|
3113
|
+
}), m = new y({
|
|
2979
3114
|
color: s,
|
|
2980
3115
|
roughness: 0.9,
|
|
2981
3116
|
metalness: 0,
|
|
2982
3117
|
flatShading: !0
|
|
2983
|
-
}), f = new
|
|
3118
|
+
}), f = new y({
|
|
2984
3119
|
color: u,
|
|
2985
3120
|
roughness: 0.8,
|
|
2986
3121
|
metalness: 0,
|
|
2987
3122
|
flatShading: !0
|
|
2988
3123
|
});
|
|
2989
|
-
this.geometry =
|
|
3124
|
+
this.geometry = h, this.material = [m, f];
|
|
2990
3125
|
}
|
|
2991
3126
|
}
|
|
2992
|
-
class
|
|
3127
|
+
class Bn extends M {
|
|
2993
3128
|
constructor({
|
|
2994
3129
|
radius: t = 3,
|
|
2995
3130
|
//
|
|
@@ -2999,19 +3134,19 @@ class An extends y {
|
|
|
2999
3134
|
phiStart: s = 0,
|
|
3000
3135
|
phiLength: a = Math.PI * 2
|
|
3001
3136
|
} = {}) {
|
|
3002
|
-
super(), this.geometry = new
|
|
3137
|
+
super(), this.geometry = new ke({
|
|
3003
3138
|
radius: t,
|
|
3004
3139
|
height: o,
|
|
3005
3140
|
widthSegments: n,
|
|
3006
3141
|
heightSegments: r,
|
|
3007
3142
|
phiStart: s,
|
|
3008
3143
|
phiLength: a
|
|
3009
|
-
}), this.material = new
|
|
3144
|
+
}), this.material = new y({ color: 65280, flatShading: !0 });
|
|
3010
3145
|
}
|
|
3011
3146
|
}
|
|
3012
|
-
class
|
|
3147
|
+
class Rn extends M {
|
|
3013
3148
|
constructor({
|
|
3014
|
-
radius: t =
|
|
3149
|
+
radius: t = gt(5, Math.PI / 10),
|
|
3015
3150
|
//
|
|
3016
3151
|
widthSegments: o = 64,
|
|
3017
3152
|
heightSegments: n = 32,
|
|
@@ -3019,17 +3154,17 @@ class Sn extends y {
|
|
|
3019
3154
|
phiLength: s = Math.PI * 2,
|
|
3020
3155
|
thetaLength: a = Math.PI / 10
|
|
3021
3156
|
} = {}) {
|
|
3022
|
-
super(), this.geometry = new
|
|
3157
|
+
super(), this.geometry = new qe({
|
|
3023
3158
|
radius: t,
|
|
3024
3159
|
widthSegments: o,
|
|
3025
3160
|
heightSegments: n,
|
|
3026
3161
|
phiStart: r,
|
|
3027
3162
|
phiLength: s,
|
|
3028
3163
|
thetaLength: a
|
|
3029
|
-
}), this.material = new
|
|
3164
|
+
}), this.material = new y({ color: 65280, flatShading: !0 });
|
|
3030
3165
|
}
|
|
3031
3166
|
}
|
|
3032
|
-
function
|
|
3167
|
+
function Nn(e, { time: t = 0, waveFrequency: o = 0.2, waveAmplitude: n = 0.5 } = {}) {
|
|
3033
3168
|
e.onBeforeCompile = (r) => {
|
|
3034
3169
|
r.uniforms.time = { value: t }, r.uniforms.waveFrequency = { value: o }, r.uniforms.waveAmplitude = { value: n }, r.vertexShader = `
|
|
3035
3170
|
uniform float time;
|
|
@@ -3053,10 +3188,10 @@ function En(e, { time: t = 0, waveFrequency: o = 0.2, waveAmplitude: n = 0.5 } =
|
|
|
3053
3188
|
), e.userData.shader = r;
|
|
3054
3189
|
};
|
|
3055
3190
|
}
|
|
3056
|
-
function
|
|
3191
|
+
function Un(e, t) {
|
|
3057
3192
|
e.userData.shader && (e.userData.shader.uniforms.time.value += t);
|
|
3058
3193
|
}
|
|
3059
|
-
function
|
|
3194
|
+
function _n(e, { time: t = 0, intensity: o = 1, axis: n = ut.XYZ, scale: r = 10 } = {}) {
|
|
3060
3195
|
e.onBeforeCompile = (s) => {
|
|
3061
3196
|
s.uniforms.time = { value: t }, s.uniforms.axis = { value: n }, s.uniforms.intensity = { value: o }, s.uniforms.scale = { value: r }, s.vertexShader = `
|
|
3062
3197
|
uniform float time;
|
|
@@ -3100,16 +3235,16 @@ function Tn(e, { time: t = 0, intensity: o = 1, axis: n = lt.XYZ, scale: r = 10
|
|
|
3100
3235
|
), e.userData.shader = s;
|
|
3101
3236
|
};
|
|
3102
3237
|
}
|
|
3103
|
-
function
|
|
3238
|
+
function On(e, t) {
|
|
3104
3239
|
e.userData.shader && (e.userData.shader.uniforms.time.value += t);
|
|
3105
3240
|
}
|
|
3106
|
-
const
|
|
3241
|
+
const ot = {
|
|
3107
3242
|
uniforms: {
|
|
3108
3243
|
turbidity: { value: 10 },
|
|
3109
3244
|
rayleigh: { value: 2 },
|
|
3110
3245
|
mieCoefficient: { value: 5e-3 },
|
|
3111
3246
|
mieDirectionalG: { value: 0.8 },
|
|
3112
|
-
sunPosition: { value: new b().setFromSphericalCoords(1,
|
|
3247
|
+
sunPosition: { value: new b().setFromSphericalCoords(1, z.degToRad(90), z.degToRad(180)) },
|
|
3113
3248
|
up: { value: new b(0, 1, 0) }
|
|
3114
3249
|
},
|
|
3115
3250
|
vertexShader: `
|
|
@@ -3265,10 +3400,10 @@ const et = {
|
|
|
3265
3400
|
#include <colorspace_fragment>
|
|
3266
3401
|
}
|
|
3267
3402
|
`
|
|
3268
|
-
},
|
|
3403
|
+
}, nt = {
|
|
3269
3404
|
uniforms: {
|
|
3270
|
-
topColor: { value: new
|
|
3271
|
-
bottomColor: { value: new
|
|
3405
|
+
topColor: { value: new $(0.5, 0.8, 1) },
|
|
3406
|
+
bottomColor: { value: new $(1, 1, 1) }
|
|
3272
3407
|
},
|
|
3273
3408
|
vertexShader: `
|
|
3274
3409
|
varying vec3 vPosition;
|
|
@@ -3286,7 +3421,7 @@ const et = {
|
|
|
3286
3421
|
gl_FragColor = vec4(mix(bottomColor, topColor, y), 1.0);
|
|
3287
3422
|
}
|
|
3288
3423
|
`
|
|
3289
|
-
},
|
|
3424
|
+
}, zn = {
|
|
3290
3425
|
uniforms: {
|
|
3291
3426
|
tDiffuse: { value: null },
|
|
3292
3427
|
opacity: { value: 1 }
|
|
@@ -3307,10 +3442,10 @@ const et = {
|
|
|
3307
3442
|
gl_FragColor = opacity * texel;
|
|
3308
3443
|
}
|
|
3309
3444
|
`
|
|
3310
|
-
},
|
|
3445
|
+
}, st = {
|
|
3311
3446
|
uniforms: {
|
|
3312
|
-
topColor: { value: new
|
|
3313
|
-
bottomColor: { value: new
|
|
3447
|
+
topColor: { value: new $(51) },
|
|
3448
|
+
bottomColor: { value: new $(17) },
|
|
3314
3449
|
offset: { value: 33 },
|
|
3315
3450
|
exponent: { value: 0.6 }
|
|
3316
3451
|
},
|
|
@@ -3334,19 +3469,19 @@ const et = {
|
|
|
3334
3469
|
}
|
|
3335
3470
|
`
|
|
3336
3471
|
};
|
|
3337
|
-
class
|
|
3472
|
+
class Fn extends M {
|
|
3338
3473
|
constructor() {
|
|
3339
3474
|
super();
|
|
3340
3475
|
g(this, "geometry");
|
|
3341
3476
|
g(this, "material");
|
|
3342
|
-
this.geometry = new
|
|
3343
|
-
uniforms:
|
|
3344
|
-
vertexShader:
|
|
3345
|
-
fragmentShader:
|
|
3477
|
+
this.geometry = new E(1, 1, 1), this.material = new J({
|
|
3478
|
+
uniforms: ot.uniforms,
|
|
3479
|
+
vertexShader: ot.vertexShader,
|
|
3480
|
+
fragmentShader: ot.fragmentShader,
|
|
3346
3481
|
depthWrite: !1,
|
|
3347
|
-
side:
|
|
3482
|
+
side: ct
|
|
3348
3483
|
}), this.scale.setScalar(45e4);
|
|
3349
|
-
const o =
|
|
3484
|
+
const o = z.degToRad(89), n = z.degToRad(180), r = new b().setFromSphericalCoords(1, o, n);
|
|
3350
3485
|
this.material.uniforms.sunPosition.value = r;
|
|
3351
3486
|
}
|
|
3352
3487
|
/**
|
|
@@ -3367,52 +3502,141 @@ class Cn extends y {
|
|
|
3367
3502
|
r.setFromSphericalCoords(1, o, n), this.material.uniforms.sunPosition.value = r;
|
|
3368
3503
|
}
|
|
3369
3504
|
}
|
|
3370
|
-
class
|
|
3505
|
+
class Ln extends M {
|
|
3371
3506
|
constructor(o = 1e3) {
|
|
3372
3507
|
super();
|
|
3373
3508
|
g(this, "geometry");
|
|
3374
3509
|
g(this, "material");
|
|
3375
|
-
this.geometry = new
|
|
3376
|
-
uniforms:
|
|
3377
|
-
vertexShader:
|
|
3378
|
-
fragmentShader:
|
|
3379
|
-
side:
|
|
3510
|
+
this.geometry = new E(o, o, o), this.material = new J({
|
|
3511
|
+
uniforms: nt.uniforms,
|
|
3512
|
+
vertexShader: nt.vertexShader,
|
|
3513
|
+
fragmentShader: nt.fragmentShader,
|
|
3514
|
+
side: ct
|
|
3380
3515
|
});
|
|
3381
3516
|
}
|
|
3382
3517
|
}
|
|
3383
|
-
class
|
|
3518
|
+
class kn extends M {
|
|
3384
3519
|
constructor(o = 1e3) {
|
|
3385
3520
|
super();
|
|
3386
3521
|
g(this, "geometry");
|
|
3387
3522
|
g(this, "material");
|
|
3388
|
-
this.geometry = new
|
|
3389
|
-
vertexShader:
|
|
3390
|
-
fragmentShader:
|
|
3391
|
-
uniforms:
|
|
3392
|
-
side:
|
|
3523
|
+
this.geometry = new U(o, 32, 15), this.material = new J({
|
|
3524
|
+
vertexShader: st.vertexShader,
|
|
3525
|
+
fragmentShader: st.fragmentShader,
|
|
3526
|
+
uniforms: st.uniforms,
|
|
3527
|
+
side: ct
|
|
3393
3528
|
});
|
|
3394
3529
|
}
|
|
3395
3530
|
}
|
|
3396
|
-
const
|
|
3531
|
+
const Dn = (e) => {
|
|
3397
3532
|
const t = new Uint8Array(4 * e * e);
|
|
3398
3533
|
for (let n = 0; n < e * e; n++) {
|
|
3399
3534
|
const r = n * 4, s = (n % e ^ Math.floor(n / e)) & 1 ? 255 : 0;
|
|
3400
3535
|
t[r] = s, t[r + 1] = s, t[r + 2] = s, t[r + 3] = 255;
|
|
3401
3536
|
}
|
|
3402
|
-
const o = new
|
|
3403
|
-
return o.wrapS =
|
|
3537
|
+
const o = new Rt(t, e, e, Nt, Ut);
|
|
3538
|
+
return o.wrapS = ht, o.wrapT = ht, o.minFilter = _t, o.needsUpdate = !0, o;
|
|
3404
3539
|
};
|
|
3405
|
-
function
|
|
3406
|
-
const t =
|
|
3540
|
+
function qn(e) {
|
|
3541
|
+
const t = parseInt(e.slice(1), 16);
|
|
3542
|
+
return [
|
|
3543
|
+
t >> 16 & 255,
|
|
3544
|
+
// r
|
|
3545
|
+
t >> 8 & 255,
|
|
3546
|
+
// g
|
|
3547
|
+
t & 255
|
|
3548
|
+
// b
|
|
3549
|
+
];
|
|
3550
|
+
}
|
|
3551
|
+
function Vn(e) {
|
|
3552
|
+
const [t, o, n] = X(e);
|
|
3553
|
+
return Ke(t, o, n);
|
|
3554
|
+
}
|
|
3555
|
+
function X(e) {
|
|
3556
|
+
const t = e >> 16 & 255, o = e >> 8 & 255, n = e & 255;
|
|
3557
|
+
return [t, o, n];
|
|
3558
|
+
}
|
|
3559
|
+
function Hn(e, t, o) {
|
|
3560
|
+
t /= 100, o /= 100;
|
|
3561
|
+
function n(c, l, u) {
|
|
3562
|
+
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;
|
|
3563
|
+
}
|
|
3564
|
+
let r, s, a;
|
|
3565
|
+
if (t === 0)
|
|
3566
|
+
r = s = a = o;
|
|
3567
|
+
else {
|
|
3568
|
+
const c = o < 0.5 ? o * (1 + t) : o + t - o * t, l = 2 * o - c;
|
|
3569
|
+
r = n(l, c, e / 360 + 1 / 3), s = n(l, c, e / 360), a = n(l, c, e / 360 - 1 / 3);
|
|
3570
|
+
}
|
|
3571
|
+
const i = (c) => Math.round(c * 255);
|
|
3572
|
+
return [
|
|
3573
|
+
i(r),
|
|
3574
|
+
i(s),
|
|
3575
|
+
i(a)
|
|
3576
|
+
];
|
|
3577
|
+
}
|
|
3578
|
+
function Qe(e, t, o) {
|
|
3579
|
+
t /= 100, o /= 100;
|
|
3580
|
+
const n = (a) => (a + e / 30) % 12, r = t * Math.min(o, 1 - o), s = (a) => o - r * Math.max(-1, Math.min(n(a) - 3, Math.min(9 - n(a), 1)));
|
|
3581
|
+
return [s(0) * 255, s(8) * 255, s(4) * 255];
|
|
3582
|
+
}
|
|
3583
|
+
function Xn(e, t, o) {
|
|
3584
|
+
return [e / 255, t / 255, o / 255];
|
|
3585
|
+
}
|
|
3586
|
+
function Yn(e, t, o) {
|
|
3587
|
+
return e = Math.round(e), t = Math.round(t), o = Math.round(o), (e << 16) + (t << 8) + o;
|
|
3588
|
+
}
|
|
3589
|
+
function Ke(e, t, o) {
|
|
3590
|
+
e /= 255, t /= 255, o /= 255;
|
|
3591
|
+
const n = Math.max(e, t, o), r = Math.min(e, t, o), s = n - r;
|
|
3592
|
+
let a = 0, i = 0;
|
|
3593
|
+
const c = (n + r) / 2;
|
|
3594
|
+
s !== 0 && (n === e ? a = ((t - o) / s + (t < o ? 6 : 0)) * 60 : n === t ? a = ((o - e) / s + 2) * 60 : n === o && (a = ((e - t) / s + 4) * 60)), s !== 0 && (i = s / (1 - Math.abs(2 * c - 1))), a = Math.round(a), i = Math.round(i * 100);
|
|
3595
|
+
const l = Math.round(c * 100);
|
|
3596
|
+
return [a, i, l];
|
|
3597
|
+
}
|
|
3598
|
+
function $e(e, t) {
|
|
3599
|
+
return Math.sqrt(
|
|
3600
|
+
Math.pow(e[0] - t[0], 2) + Math.pow(e[1] - t[1], 2) + Math.pow(e[2] - t[2], 2)
|
|
3601
|
+
);
|
|
3602
|
+
}
|
|
3603
|
+
function Je(e, t) {
|
|
3604
|
+
return Math.abs(e[0] - t[0]) + //
|
|
3605
|
+
Math.abs(e[1] - t[1]) + Math.abs(e[2] - t[2]);
|
|
3606
|
+
}
|
|
3607
|
+
function Zn(e, t) {
|
|
3608
|
+
const o = X(e);
|
|
3609
|
+
let n = null, r = 1 / 0;
|
|
3610
|
+
for (const s of t) {
|
|
3611
|
+
const a = X(s), i = $e(o, a);
|
|
3612
|
+
i < r && (r = i, n = s);
|
|
3613
|
+
}
|
|
3614
|
+
return n;
|
|
3615
|
+
}
|
|
3616
|
+
function jn(e, t) {
|
|
3617
|
+
const o = X(e);
|
|
3618
|
+
let n = null, r = 1 / 0;
|
|
3619
|
+
for (const s of t) {
|
|
3620
|
+
const a = X(s), i = Je(o, a);
|
|
3621
|
+
i < r && (r = i, n = s);
|
|
3622
|
+
}
|
|
3623
|
+
return n;
|
|
3624
|
+
}
|
|
3625
|
+
function Qn(e) {
|
|
3626
|
+
const t = (e + Math.floor(-30 + Math.random() * 61)) % 360, o = Math.floor(60 + Math.random() * 21), n = Math.floor(50 + Math.random() * 21);
|
|
3627
|
+
return Qe(t, o, n);
|
|
3628
|
+
}
|
|
3629
|
+
function Kn(e) {
|
|
3630
|
+
const t = new lt().setFromObject(e), o = new b();
|
|
3407
3631
|
t.getCenter(o), e.position.sub(o);
|
|
3408
3632
|
}
|
|
3409
|
-
function
|
|
3410
|
-
const o = new
|
|
3633
|
+
function $n(e, t = new b(0, 0, 0)) {
|
|
3634
|
+
const o = new lt().setFromObject(e), n = new b();
|
|
3411
3635
|
o.getCenter(n);
|
|
3412
3636
|
const r = new b().subVectors(t, n);
|
|
3413
3637
|
e.position.add(r);
|
|
3414
3638
|
}
|
|
3415
|
-
function
|
|
3639
|
+
function Jn(e) {
|
|
3416
3640
|
e.computeBoundingBox();
|
|
3417
3641
|
const t = e.boundingBox;
|
|
3418
3642
|
if (t) {
|
|
@@ -3420,22 +3644,22 @@ function On(e) {
|
|
|
3420
3644
|
e.translateX(-o.x), e.translateY(-o.y), e.translateZ(-o.z);
|
|
3421
3645
|
}
|
|
3422
3646
|
}
|
|
3423
|
-
function
|
|
3647
|
+
function We(e, t, o) {
|
|
3424
3648
|
return Math.max(0, Math.min(1, (e - t) / (o - t)));
|
|
3425
3649
|
}
|
|
3426
|
-
function
|
|
3650
|
+
function Wn(e, t, o, n, r, s = 20, a = 0, i = 1) {
|
|
3427
3651
|
const c = [];
|
|
3428
3652
|
for (let l = 0; l <= s; l++) {
|
|
3429
|
-
const u = l / s,
|
|
3430
|
-
c.push(new I(
|
|
3653
|
+
const u = l / s, h = e(We(u, a, i)), m = t + h * (o - t), f = n + u * (r - n);
|
|
3654
|
+
c.push(new I(m, f));
|
|
3431
3655
|
}
|
|
3432
3656
|
return c;
|
|
3433
3657
|
}
|
|
3434
|
-
function
|
|
3435
|
-
const o = new
|
|
3658
|
+
function ts(e) {
|
|
3659
|
+
const o = new lt().setFromObject(e).getCenter(new b());
|
|
3436
3660
|
e.translateX(-o.x), e.translateY(-o.y), e.translateZ(-o.z), e.updateMatrixWorld(!0);
|
|
3437
3661
|
}
|
|
3438
|
-
function
|
|
3662
|
+
function es(e) {
|
|
3439
3663
|
e.geometry.computeBoundingBox();
|
|
3440
3664
|
const t = e.geometry.boundingBox;
|
|
3441
3665
|
if (t) {
|
|
@@ -3443,66 +3667,66 @@ function Ln(e) {
|
|
|
3443
3667
|
e.geometry.translate(-o.x, -o.y, -o.z);
|
|
3444
3668
|
}
|
|
3445
3669
|
}
|
|
3446
|
-
const
|
|
3670
|
+
const to = (e, t, o, n, r = 24) => {
|
|
3447
3671
|
let s = [];
|
|
3448
3672
|
for (let a = 0; a <= r; a++) {
|
|
3449
|
-
const i = a / r, c =
|
|
3673
|
+
const i = a / r, c = F.CUBIC(i, e.x, t.x, o.x, n.x), l = F.CUBIC(i, e.y, t.y, o.y, n.y);
|
|
3450
3674
|
s.push(new I(c, l));
|
|
3451
3675
|
}
|
|
3452
3676
|
return s;
|
|
3453
|
-
},
|
|
3677
|
+
}, eo = (e, t, o, n = 24) => {
|
|
3454
3678
|
let r = [];
|
|
3455
3679
|
for (let s = 0; s <= n; s++) {
|
|
3456
|
-
const a = s / n, i =
|
|
3680
|
+
const a = s / n, i = F.DAMPED(a, o) * (t.x - e.x) + e.x, c = e.y + a * (t.y - e.y);
|
|
3457
3681
|
r.push(new I(i, c));
|
|
3458
3682
|
}
|
|
3459
3683
|
return r;
|
|
3460
|
-
},
|
|
3684
|
+
}, oo = (e, t, o, n, r = 24) => {
|
|
3461
3685
|
let s = [];
|
|
3462
3686
|
for (let a = 0; a <= r; a++) {
|
|
3463
|
-
const i = a / r, c =
|
|
3687
|
+
const i = a / r, c = F.EXPONENTIAL(i, o, n) * (t.x - e.x) + e.x, l = e.y + i * (t.y - e.y);
|
|
3464
3688
|
s.push(new I(c, l));
|
|
3465
3689
|
}
|
|
3466
3690
|
return s;
|
|
3467
|
-
},
|
|
3691
|
+
}, no = (e, t, o, n, r = 24) => {
|
|
3468
3692
|
let s = [];
|
|
3469
3693
|
for (let a = 0; a <= r; a++) {
|
|
3470
|
-
const i = a / r, c =
|
|
3694
|
+
const i = a / r, c = F.LOGARITHMIC(i, o, n) * (t.x - e.x) + e.x, l = e.y + i * (t.y - e.y);
|
|
3471
3695
|
s.push(new I(c, l));
|
|
3472
3696
|
}
|
|
3473
3697
|
return s;
|
|
3474
|
-
},
|
|
3698
|
+
}, so = (e, t, o, n, r, s = 24) => {
|
|
3475
3699
|
let a = [];
|
|
3476
3700
|
for (let i = 0; i <= s; i++) {
|
|
3477
3701
|
const c = i / s, l = o * c * c + n * c + r + e.x, u = e.y + c * (t.y - e.y);
|
|
3478
3702
|
a.push(new I(l, u));
|
|
3479
3703
|
}
|
|
3480
3704
|
return a;
|
|
3481
|
-
},
|
|
3705
|
+
}, ro = (e, t, o, n = 24) => {
|
|
3482
3706
|
let r = [];
|
|
3483
3707
|
for (let s = 0; s <= n; s++) {
|
|
3484
|
-
const a = s / n, i =
|
|
3708
|
+
const a = s / n, i = F.QUADRATIC(a, e.x, t.x, o.x), c = F.QUADRATIC(a, e.y, t.y, o.y);
|
|
3485
3709
|
r.push(new I(i, c));
|
|
3486
3710
|
}
|
|
3487
3711
|
return r;
|
|
3488
|
-
},
|
|
3712
|
+
}, ao = (e, t, o, n = 24) => {
|
|
3489
3713
|
let r = [];
|
|
3490
3714
|
for (let s = 0; s <= n; s++) {
|
|
3491
|
-
const a = s / n, i =
|
|
3715
|
+
const a = s / n, i = F.SIGMOID(a, o) * (t.x - e.x) + e.x, c = e.y + a * (t.y - e.y);
|
|
3492
3716
|
r.push(new I(i, c));
|
|
3493
3717
|
}
|
|
3494
3718
|
return r;
|
|
3495
|
-
},
|
|
3496
|
-
createCubicCurvePoints:
|
|
3497
|
-
createDampedCurvePoints:
|
|
3498
|
-
createExponentialCurvePoints:
|
|
3499
|
-
createLogarithmicCurvePoints:
|
|
3500
|
-
createParabolicCurvePoints:
|
|
3501
|
-
createQuadraticCurvePoints:
|
|
3502
|
-
createSigmoidCurvePoints:
|
|
3719
|
+
}, os = {
|
|
3720
|
+
createCubicCurvePoints: to,
|
|
3721
|
+
createDampedCurvePoints: eo,
|
|
3722
|
+
createExponentialCurvePoints: oo,
|
|
3723
|
+
createLogarithmicCurvePoints: no,
|
|
3724
|
+
createParabolicCurvePoints: so,
|
|
3725
|
+
createQuadraticCurvePoints: ro,
|
|
3726
|
+
createSigmoidCurvePoints: ao
|
|
3503
3727
|
};
|
|
3504
|
-
function
|
|
3505
|
-
const l = r ||
|
|
3728
|
+
function ns(e, t, o, n, r, s = [0, 0], a = [1, 0], i = [0, 1], c = [1, 1]) {
|
|
3729
|
+
const l = r || io(e, t, o);
|
|
3506
3730
|
return [
|
|
3507
3731
|
// Triangle 1
|
|
3508
3732
|
{ pos: e, norm: l, uv: s },
|
|
@@ -3514,7 +3738,7 @@ function Dn(e, t, o, n, r, s = [0, 0], a = [1, 0], i = [0, 1], c = [1, 1]) {
|
|
|
3514
3738
|
{ pos: o, norm: l, uv: i }
|
|
3515
3739
|
];
|
|
3516
3740
|
}
|
|
3517
|
-
function
|
|
3741
|
+
function io(e, t, o) {
|
|
3518
3742
|
const n = [
|
|
3519
3743
|
t[0] - e[0],
|
|
3520
3744
|
t[1] - e[1],
|
|
@@ -3530,7 +3754,7 @@ function to(e, t, o) {
|
|
|
3530
3754
|
], a = Math.sqrt(s[0] ** 2 + s[1] ** 2 + s[2] ** 2);
|
|
3531
3755
|
return s.map((i) => i / a);
|
|
3532
3756
|
}
|
|
3533
|
-
function
|
|
3757
|
+
function ss(e, t) {
|
|
3534
3758
|
return e.map(([o, n, r]) => {
|
|
3535
3759
|
switch (t) {
|
|
3536
3760
|
case "x":
|
|
@@ -3544,39 +3768,39 @@ function Vn(e, t) {
|
|
|
3544
3768
|
}
|
|
3545
3769
|
});
|
|
3546
3770
|
}
|
|
3547
|
-
function
|
|
3771
|
+
function co(e) {
|
|
3548
3772
|
const [t, o, n] = e, r = Math.abs(t), s = Math.abs(o), a = Math.abs(n);
|
|
3549
3773
|
return r >= s && r >= a ? [n > 0 ? n : -n, o] : s >= r && s >= a ? [t, n > 0 ? n : -n] : [t, o];
|
|
3550
3774
|
}
|
|
3551
|
-
function
|
|
3552
|
-
return e.map((t) =>
|
|
3775
|
+
function rs(e) {
|
|
3776
|
+
return e.map((t) => co(t));
|
|
3553
3777
|
}
|
|
3554
|
-
function
|
|
3778
|
+
function as(e) {
|
|
3555
3779
|
return e.map(([t, o, n]) => {
|
|
3556
3780
|
const r = Math.atan2(n, t), s = Math.acos(o / Math.sqrt(t ** 2 + o ** 2 + n ** 2)), a = r / (2 * Math.PI) + 0.5, i = 1 - s / Math.PI;
|
|
3557
3781
|
return [a, i];
|
|
3558
3782
|
});
|
|
3559
3783
|
}
|
|
3560
|
-
function
|
|
3784
|
+
function is(e) {
|
|
3561
3785
|
return e.map(([t, o, n]) => [Math.atan2(n, t) / (2 * Math.PI) + 0.5, o]);
|
|
3562
3786
|
}
|
|
3563
|
-
function
|
|
3787
|
+
function cs(e) {
|
|
3564
3788
|
return e.map(([t, o, n]) => {
|
|
3565
3789
|
const r = Math.sqrt(t ** 2 + n ** 2);
|
|
3566
3790
|
return [Math.atan2(n, t) / (2 * Math.PI) + 0.5, r];
|
|
3567
3791
|
});
|
|
3568
3792
|
}
|
|
3569
|
-
function
|
|
3793
|
+
function lo(e, t, o, n, r) {
|
|
3570
3794
|
return [
|
|
3571
3795
|
(e[0] - t) / (o - t),
|
|
3572
3796
|
(e[1] - n) / (r - n)
|
|
3573
3797
|
];
|
|
3574
3798
|
}
|
|
3575
|
-
function
|
|
3799
|
+
function ls(e, t, o) {
|
|
3576
3800
|
const [n, r] = t, [s, a] = o;
|
|
3577
|
-
return e.map((i) =>
|
|
3801
|
+
return e.map((i) => lo(i, n, s, r, a));
|
|
3578
3802
|
}
|
|
3579
|
-
function
|
|
3803
|
+
function us(e) {
|
|
3580
3804
|
const t = Math.min(...e.map((s) => s[0])), o = Math.max(...e.map((s) => s[0])), n = Math.min(...e.map((s) => s[1])), r = Math.max(...e.map((s) => s[1]));
|
|
3581
3805
|
return {
|
|
3582
3806
|
minBounds: [t, n],
|
|
@@ -3584,189 +3808,204 @@ function Qn(e) {
|
|
|
3584
3808
|
};
|
|
3585
3809
|
}
|
|
3586
3810
|
export {
|
|
3587
|
-
|
|
3588
|
-
|
|
3589
|
-
|
|
3590
|
-
|
|
3811
|
+
Fn as AtmosphericSkybox,
|
|
3812
|
+
ut as Axis,
|
|
3813
|
+
_o as BifurcatedStaircaseGeometry,
|
|
3814
|
+
Gn as Bone,
|
|
3591
3815
|
Ue as BoneGeometry,
|
|
3592
|
-
|
|
3593
|
-
|
|
3594
|
-
|
|
3595
|
-
|
|
3596
|
-
|
|
3597
|
-
|
|
3598
|
-
|
|
3599
|
-
|
|
3600
|
-
|
|
3601
|
-
|
|
3602
|
-
|
|
3603
|
-
|
|
3604
|
-
|
|
3605
|
-
|
|
3606
|
-
|
|
3607
|
-
|
|
3608
|
-
|
|
3609
|
-
|
|
3610
|
-
|
|
3611
|
-
|
|
3612
|
-
|
|
3613
|
-
|
|
3614
|
-
|
|
3615
|
-
|
|
3616
|
-
|
|
3617
|
-
|
|
3618
|
-
|
|
3619
|
-
|
|
3620
|
-
|
|
3621
|
-
|
|
3622
|
-
|
|
3623
|
-
|
|
3624
|
-
|
|
3625
|
-
|
|
3626
|
-
|
|
3627
|
-
|
|
3628
|
-
|
|
3629
|
-
|
|
3630
|
-
|
|
3631
|
-
|
|
3632
|
-
|
|
3633
|
-
|
|
3634
|
-
|
|
3635
|
-
|
|
3636
|
-
|
|
3637
|
-
|
|
3638
|
-
|
|
3639
|
-
|
|
3640
|
-
|
|
3641
|
-
|
|
3642
|
-
|
|
3643
|
-
|
|
3644
|
-
|
|
3645
|
-
|
|
3646
|
-
|
|
3647
|
-
|
|
3648
|
-
|
|
3649
|
-
|
|
3650
|
-
|
|
3651
|
-
|
|
3652
|
-
|
|
3653
|
-
|
|
3654
|
-
|
|
3655
|
-
|
|
3656
|
-
|
|
3657
|
-
|
|
3816
|
+
Xo as Book,
|
|
3817
|
+
yt as BookGeometry,
|
|
3818
|
+
tn as Bookshelf,
|
|
3819
|
+
Ce as BookshelfGeometry,
|
|
3820
|
+
cn as Bottle,
|
|
3821
|
+
Po as BubblingEffect,
|
|
3822
|
+
ln as BunsenBurner,
|
|
3823
|
+
An as Burst,
|
|
3824
|
+
Xe as BurstShape,
|
|
3825
|
+
on as Candle,
|
|
3826
|
+
mt as ColorPalette,
|
|
3827
|
+
Yo as CrossHeadstone,
|
|
3828
|
+
Ee as CrossHeadstoneGeometry,
|
|
3829
|
+
Ln as DaySkybox,
|
|
3830
|
+
en as Desk,
|
|
3831
|
+
Be as DeskGeometry,
|
|
3832
|
+
Oo as DioramaGeometry,
|
|
3833
|
+
tt as Direction,
|
|
3834
|
+
So as Easing,
|
|
3835
|
+
un as ElectricPanel,
|
|
3836
|
+
ve as EllipticLeafGeometry,
|
|
3837
|
+
To as EmissivePulseEffect,
|
|
3838
|
+
hn as ErlenmeyerFlask,
|
|
3839
|
+
_e as ErlenmeyerFlaskGeometry,
|
|
3840
|
+
K as Falloff,
|
|
3841
|
+
$o as FenceColumn,
|
|
3842
|
+
Te as FenceColumnGeometry,
|
|
3843
|
+
mn as Flask,
|
|
3844
|
+
fn as FlorenceFlask,
|
|
3845
|
+
Oe as FlorenceFlaskGeometry,
|
|
3846
|
+
Sn as Gear,
|
|
3847
|
+
Ye as GearShape,
|
|
3848
|
+
Pn as Heart,
|
|
3849
|
+
Ze as HeartShape,
|
|
3850
|
+
Bn as Hill,
|
|
3851
|
+
ke as HillGeometry,
|
|
3852
|
+
zo as LShapedStaircaseGeometry,
|
|
3853
|
+
nn as Lantern,
|
|
3854
|
+
Go as LeafEffect,
|
|
3855
|
+
dn as LeverPanel,
|
|
3856
|
+
Ro as LightningEffect,
|
|
3857
|
+
Zo as Mausoleum,
|
|
3858
|
+
pn as Microscope,
|
|
3859
|
+
Ho as Moon,
|
|
3860
|
+
Mn as MortarAndPestle,
|
|
3861
|
+
ze as MortarGeometry,
|
|
3862
|
+
sn as MossyRocks,
|
|
3863
|
+
Rn as Mound,
|
|
3864
|
+
qe as MoundGeometry,
|
|
3865
|
+
kn as NightSkybox,
|
|
3866
|
+
jo as ObeliskHeadstone,
|
|
3867
|
+
Ae as ObeliskHeadstoneGeometry,
|
|
3868
|
+
yn as Panel,
|
|
3869
|
+
wn as PanelLight,
|
|
3870
|
+
F as ParametricCurve,
|
|
3871
|
+
os as ParametricCurveUtils,
|
|
3872
|
+
rn as Rock,
|
|
3873
|
+
Ne as RockGeometry,
|
|
3874
|
+
an as Rocks,
|
|
3875
|
+
Qo as RoundedHeadstone,
|
|
3876
|
+
Se as RoundedHeadstoneGeometry,
|
|
3877
|
+
Fo as SpiralStaircaseGeometry,
|
|
3878
|
+
vn as SpiralTube,
|
|
3879
|
+
Ko as SquareHeadstone,
|
|
3880
|
+
Pe as SquareHeadstoneGeometry,
|
|
3881
|
+
Lo as StaircaseGeometry,
|
|
3882
|
+
xn as Stand,
|
|
3658
3883
|
Fe as StandGeometry,
|
|
3659
|
-
|
|
3660
|
-
|
|
3661
|
-
|
|
3662
|
-
|
|
3663
|
-
|
|
3664
|
-
|
|
3665
|
-
|
|
3666
|
-
|
|
3667
|
-
|
|
3668
|
-
|
|
3669
|
-
|
|
3670
|
-
|
|
3671
|
-
|
|
3672
|
-
|
|
3673
|
-
|
|
3674
|
-
|
|
3675
|
-
|
|
3676
|
-
|
|
3677
|
-
|
|
3678
|
-
|
|
3679
|
-
|
|
3680
|
-
|
|
3681
|
-
|
|
3682
|
-
|
|
3683
|
-
|
|
3684
|
-
|
|
3685
|
-
|
|
3686
|
-
|
|
3687
|
-
|
|
3688
|
-
|
|
3689
|
-
|
|
3690
|
-
|
|
3691
|
-
|
|
3692
|
-
|
|
3693
|
-
|
|
3694
|
-
|
|
3695
|
-
|
|
3696
|
-
|
|
3697
|
-
|
|
3698
|
-
|
|
3699
|
-
|
|
3700
|
-
|
|
3701
|
-
|
|
3702
|
-
|
|
3703
|
-
qt as
|
|
3704
|
-
|
|
3705
|
-
|
|
3706
|
-
|
|
3707
|
-
|
|
3708
|
-
|
|
3709
|
-
|
|
3710
|
-
|
|
3711
|
-
|
|
3712
|
-
|
|
3713
|
-
|
|
3714
|
-
|
|
3715
|
-
|
|
3716
|
-
|
|
3717
|
-
|
|
3718
|
-
|
|
3719
|
-
|
|
3720
|
-
|
|
3721
|
-
|
|
3722
|
-
|
|
3723
|
-
|
|
3724
|
-
|
|
3725
|
-
|
|
3726
|
-
|
|
3727
|
-
|
|
3728
|
-
|
|
3729
|
-
|
|
3730
|
-
|
|
3731
|
-
|
|
3732
|
-
|
|
3733
|
-
|
|
3734
|
-
|
|
3735
|
-
|
|
3736
|
-
|
|
3737
|
-
|
|
3738
|
-
|
|
3739
|
-
|
|
3884
|
+
Tn as Star,
|
|
3885
|
+
je as StarShape,
|
|
3886
|
+
gn as TeslaCoil,
|
|
3887
|
+
bn as TestTube,
|
|
3888
|
+
rt as TestTubeGeometry,
|
|
3889
|
+
In as TestTubeRack,
|
|
3890
|
+
Cn as Tree,
|
|
3891
|
+
Ve as TreeGeometry,
|
|
3892
|
+
En as WineBottle,
|
|
3893
|
+
Le as WineBottleGeometry,
|
|
3894
|
+
Jo as WroughtIronBar,
|
|
3895
|
+
xt as WroughtIronBarGeometry,
|
|
3896
|
+
Wo as WroughtIronFence,
|
|
3897
|
+
Ge as WroughtIronFenceGeometry,
|
|
3898
|
+
_n as addNoiseDisplacement,
|
|
3899
|
+
Nn as addWaterDisplacement,
|
|
3900
|
+
ot as atmosphericShader,
|
|
3901
|
+
Je as calculateChannelDifference,
|
|
3902
|
+
$e as calculateDistance,
|
|
3903
|
+
io as calculateNormal,
|
|
3904
|
+
us as calculateUVBounds,
|
|
3905
|
+
De as capHeightFromRadius,
|
|
3906
|
+
Do as capWidthFromRadius,
|
|
3907
|
+
Vo as cartesianToSpherical,
|
|
3908
|
+
Kn as centerGroup,
|
|
3909
|
+
$n as centerGroupAtTarget,
|
|
3910
|
+
Jn as centerInstancedMesh,
|
|
3911
|
+
ts as centerMesh,
|
|
3912
|
+
es as centerMeshGeometry,
|
|
3913
|
+
Dn as checkerboardTexture,
|
|
3914
|
+
te as circularEaseIn,
|
|
3915
|
+
oe as circularEaseInOut,
|
|
3916
|
+
ee as circularEaseOut,
|
|
3917
|
+
re as concave,
|
|
3918
|
+
ae as convex,
|
|
3919
|
+
to as createCubicCurvePoints,
|
|
3920
|
+
eo as createDampedCurvePoints,
|
|
3921
|
+
oo as createExponentialCurvePoints,
|
|
3922
|
+
no as createLogarithmicCurvePoints,
|
|
3923
|
+
so as createParabolicCurvePoints,
|
|
3924
|
+
ns as createQuad,
|
|
3925
|
+
ro as createQuadraticCurvePoints,
|
|
3926
|
+
ao as createSigmoidCurvePoints,
|
|
3927
|
+
he as cubicCurve,
|
|
3928
|
+
qt as cubicEaseIn,
|
|
3929
|
+
Ht as cubicEaseInOut,
|
|
3930
|
+
Vt as cubicEaseOut,
|
|
3931
|
+
co as cubicUVMapping,
|
|
3932
|
+
rs as cubicUVMappingBatch,
|
|
3933
|
+
is as cylindricalUVMapping,
|
|
3934
|
+
me as dampedCurve,
|
|
3935
|
+
nt as daySkyShader,
|
|
3936
|
+
xo as displacementBrush,
|
|
3937
|
+
mo as dollyAnimation,
|
|
3938
|
+
fe as exponentialCurve,
|
|
3939
|
+
$t as exponentialEaseIn,
|
|
3940
|
+
Wt as exponentialEaseInOut,
|
|
3941
|
+
Jt as exponentialEaseOut,
|
|
3942
|
+
zn as fadeShader,
|
|
3943
|
+
Zn as findClosestColor,
|
|
3944
|
+
jn as findClosestColorChannelWise,
|
|
3945
|
+
go as flattenBrush,
|
|
3946
|
+
fo as flythroughAnimation,
|
|
3947
|
+
ue as gaussian,
|
|
3948
|
+
Qn as getAnalogousColors,
|
|
3949
|
+
Vn as hexToHsl,
|
|
3950
|
+
X as hexToRgb,
|
|
3951
|
+
Hn as hslToHex,
|
|
3952
|
+
Qe as hslToRgb,
|
|
3953
|
+
Wn as interpolateCurve,
|
|
3954
|
+
le as inverse,
|
|
3955
|
+
ne as linear,
|
|
3956
|
+
ie as logarithmic,
|
|
3957
|
+
de as logarithmicCurve,
|
|
3958
|
+
xe as logarithmicRandomMax,
|
|
3959
|
+
ge as logarithmicRandomMin,
|
|
3960
|
+
He as moonShader,
|
|
3961
|
+
st as nightSkyShader,
|
|
3962
|
+
bo as noiseBrush,
|
|
3963
|
+
Xn as normalizeRgb,
|
|
3964
|
+
lo as normalizeUV,
|
|
3965
|
+
ls as normalizeUVBatch,
|
|
3966
|
+
po as orbitAnimation,
|
|
3967
|
+
pe as parabolicCurve,
|
|
3968
|
+
qn as parseHexCode,
|
|
3969
|
+
Mo as pendulumAnimation,
|
|
3970
|
+
ss as planarUVMapping,
|
|
3971
|
+
cs as polarUVMapping,
|
|
3972
|
+
Me as quadraticCurve,
|
|
3973
|
+
Lt as quadraticEaseIn,
|
|
3974
|
+
Dt as quadraticEaseInOut,
|
|
3975
|
+
kt as quadraticEaseOut,
|
|
3976
|
+
Xt as quarticEaseIn,
|
|
3740
3977
|
Zt as quarticEaseInOut,
|
|
3741
|
-
|
|
3742
|
-
|
|
3743
|
-
|
|
3744
|
-
|
|
3745
|
-
|
|
3746
|
-
|
|
3747
|
-
|
|
3748
|
-
|
|
3749
|
-
|
|
3750
|
-
|
|
3751
|
-
|
|
3752
|
-
|
|
3753
|
-
|
|
3754
|
-
|
|
3755
|
-
|
|
3756
|
-
|
|
3978
|
+
Yt as quarticEaseOut,
|
|
3979
|
+
jt as quinticEaseIn,
|
|
3980
|
+
Kt as quinticEaseInOut,
|
|
3981
|
+
Qt as quinticEaseOut,
|
|
3982
|
+
ko as radiusFromCapHeight,
|
|
3983
|
+
gt as radiusFromCapWidth,
|
|
3984
|
+
Mt as randomFloat,
|
|
3985
|
+
Co as randomInteger,
|
|
3986
|
+
Re as randomTransformVertices,
|
|
3987
|
+
Yn as rgbToHex,
|
|
3988
|
+
Ke as rgbToHsl,
|
|
3989
|
+
No as rowOfBooksByCount,
|
|
3990
|
+
Uo as rowOfBooksByLength,
|
|
3991
|
+
vt as rowOfBooksByScales,
|
|
3992
|
+
Bo as setRandomInterval,
|
|
3993
|
+
be as setRandomTimeout,
|
|
3994
|
+
ye as sigmoidCurve,
|
|
3995
|
+
Ot as sineEaseIn,
|
|
3757
3996
|
Ft as sineEaseInOut,
|
|
3758
|
-
|
|
3759
|
-
|
|
3760
|
-
|
|
3761
|
-
|
|
3762
|
-
|
|
3763
|
-
|
|
3764
|
-
|
|
3765
|
-
|
|
3766
|
-
|
|
3767
|
-
|
|
3768
|
-
|
|
3769
|
-
|
|
3770
|
-
|
|
3997
|
+
zt as sineEaseOut,
|
|
3998
|
+
Io as smoothBrush,
|
|
3999
|
+
se as smoothstep,
|
|
4000
|
+
qo as sphericalToCartesian,
|
|
4001
|
+
as as sphericalUVMapping,
|
|
4002
|
+
Eo as spikeBrush,
|
|
4003
|
+
yo as spiralAscensionAnimation,
|
|
4004
|
+
ce as squareRoot,
|
|
4005
|
+
Ao as twistBrush,
|
|
4006
|
+
On as updateNoiseDisplacementTime,
|
|
4007
|
+
Un as updateWaterDisplacementTime,
|
|
4008
|
+
wo as wobbleAnimation,
|
|
4009
|
+
vo as zoomInAnimation
|
|
3771
4010
|
};
|
|
3772
4011
|
//# sourceMappingURL=index.es.js.map
|