three-low-poly 0.9.11 → 0.9.12
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/README.md +1 -1
- package/dist/index.cjs.js +8 -8
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.es.js +1101 -998
- package/dist/index.es.js.map +1 -1
- package/dist/index.iife.js +8 -8
- package/dist/index.iife.js.map +1 -1
- package/dist/index.umd.js +8 -8
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
package/dist/index.es.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { Vector3 as M, MathUtils as Q, Quaternion as
|
|
2
|
-
import { mergeGeometries as A, mergeVertices as
|
|
3
|
-
import { Sky as
|
|
1
|
+
import { Vector3 as M, MathUtils as Q, Quaternion as de, Group as P, SphereGeometry as C, MeshStandardMaterial as w, Mesh as f, BufferGeometry as g, BufferAttribute as Z, BoxGeometry as I, InstancedMesh as we, Matrix4 as ee, Float32BufferAttribute as F, ConeGeometry as q, CylinderGeometry as b, Vector2 as v, LatheGeometry as L, CircleGeometry as xe, TorusGeometry as re, DodecahedronGeometry as K, ShaderMaterial as J, Shape as R, ExtrudeGeometry as X, MeshBasicMaterial as ye, PointLight as ae, MeshPhysicalMaterial as Y, DoubleSide as z, CatmullRomCurve3 as Me, TubeGeometry as ve, LineBasicMaterial as ge, Line as Ie, Path as be, Color as te, BackSide as ce, DataTexture as Se, RGBAFormat as Ge, UnsignedByteType as Pe, RepeatWrapping as oe, NearestFilter as Ae, Box3 as $ } from "three";
|
|
2
|
+
import { mergeGeometries as A, mergeVertices as Ee } from "three/addons/utils/BufferGeometryUtils.js";
|
|
3
|
+
import { Sky as Ce } from "three/addons/objects/Sky.js";
|
|
4
4
|
import { EffectComposer as Te } from "three/addons/postprocessing/EffectComposer.js";
|
|
5
|
-
import { RenderPass as
|
|
5
|
+
import { RenderPass as ne } from "three/addons/postprocessing/RenderPass.js";
|
|
6
6
|
import { ShaderPass as Be } from "three/addons/postprocessing/ShaderPass.js";
|
|
7
|
-
const
|
|
7
|
+
const _ = {
|
|
8
8
|
UP: new M(0, 1, 0),
|
|
9
9
|
DOWN: new M(0, -1, 0),
|
|
10
10
|
LEFT: new M(-1, 0, 0),
|
|
@@ -18,135 +18,164 @@ const U = {
|
|
|
18
18
|
XZ: new M(1, 0, 1).normalize(),
|
|
19
19
|
YZ: new M(0, 1, 1).normalize(),
|
|
20
20
|
XYZ: new M(1, 1, 1).normalize()
|
|
21
|
-
},
|
|
22
|
-
LINEAR: (
|
|
23
|
-
QUADRATIC: (
|
|
24
|
-
SQUARE_ROOT: (
|
|
25
|
-
LOGARITHMIC: (
|
|
26
|
-
SINE: (
|
|
27
|
-
EXPONENTIAL: (
|
|
28
|
-
CUBIC: (
|
|
29
|
-
GAUSSIAN: (
|
|
30
|
-
INVERSE: (
|
|
31
|
-
SMOOTHSTEP: (
|
|
32
|
-
const
|
|
33
|
-
return
|
|
34
|
-
}
|
|
35
|
-
},
|
|
36
|
-
const s =
|
|
37
|
-
for (let
|
|
21
|
+
}, V = {
|
|
22
|
+
LINEAR: (t, e) => 1 - t / e,
|
|
23
|
+
QUADRATIC: (t, e) => Math.pow(1 - t / e, 2),
|
|
24
|
+
SQUARE_ROOT: (t, e) => Math.pow(1 - t / e, 0.5),
|
|
25
|
+
LOGARITHMIC: (t, e) => Math.log(1 + (e - t)) / Math.log(1 + e),
|
|
26
|
+
SINE: (t, e) => Math.cos(t / e * Math.PI / 2),
|
|
27
|
+
EXPONENTIAL: (t, e) => Math.exp(-t / e),
|
|
28
|
+
CUBIC: (t, e) => Math.pow(1 - t / e, 3),
|
|
29
|
+
GAUSSIAN: (t, e) => Math.exp(-Math.pow(t, 2) / (2 * Math.pow(e / 3, 2))),
|
|
30
|
+
INVERSE: (t, e) => e / (e + t),
|
|
31
|
+
SMOOTHSTEP: (t, e) => {
|
|
32
|
+
const o = Math.max(0, Math.min(1, 1 - t / e));
|
|
33
|
+
return o * o * (3 - 2 * o);
|
|
34
|
+
}
|
|
35
|
+
}, to = (t, e, o, n, r = _.UP, a = V.LINEAR) => {
|
|
36
|
+
const s = t.attributes.position;
|
|
37
|
+
for (let c = 0; c < s.count; c++) {
|
|
38
38
|
const i = new M();
|
|
39
|
-
i.fromBufferAttribute(s,
|
|
39
|
+
i.fromBufferAttribute(s, c);
|
|
40
40
|
const l = i.distanceTo(e);
|
|
41
|
-
if (l <
|
|
42
|
-
const m =
|
|
43
|
-
i.add(
|
|
41
|
+
if (l < o) {
|
|
42
|
+
const m = a(l, o) * n;
|
|
43
|
+
i.add(r.clone().multiplyScalar(m)), s.setXYZ(c, i.x, i.y, i.z);
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
46
|
s.needsUpdate = !0;
|
|
47
|
-
},
|
|
48
|
-
const
|
|
49
|
-
for (let i = 0; i <
|
|
47
|
+
}, oo = (t, e, o, n, r, a = _.UP, s = V.LINEAR) => {
|
|
48
|
+
const c = t.attributes.position;
|
|
49
|
+
for (let i = 0; i < c.count; i++) {
|
|
50
50
|
const l = new M();
|
|
51
|
-
l.fromBufferAttribute(
|
|
51
|
+
l.fromBufferAttribute(c, i);
|
|
52
52
|
const u = l.distanceTo(e);
|
|
53
|
-
if (u <
|
|
54
|
-
const h = s(u,
|
|
55
|
-
l.add(
|
|
53
|
+
if (u < o) {
|
|
54
|
+
const h = s(u, o) * r, d = l.dot(a.normalize()), p = n - d;
|
|
55
|
+
l.add(a.clone().multiplyScalar(p * h)), c.setXYZ(i, l.x, l.y, l.z);
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
|
-
|
|
59
|
-
},
|
|
60
|
-
const s =
|
|
61
|
-
for (let
|
|
58
|
+
c.needsUpdate = !0;
|
|
59
|
+
}, no = (t, e, o, n, r = _.UP, a = V.LINEAR) => {
|
|
60
|
+
const s = t.attributes.position;
|
|
61
|
+
for (let c = 0; c < s.count; c++) {
|
|
62
62
|
const i = new M();
|
|
63
|
-
i.fromBufferAttribute(s,
|
|
63
|
+
i.fromBufferAttribute(s, c);
|
|
64
64
|
const l = i.distanceTo(e);
|
|
65
|
-
if (l <
|
|
66
|
-
const u =
|
|
67
|
-
i.x += Q.randFloatSpread(m) * h.x, i.y += Q.randFloatSpread(m) * h.y, i.z += Q.randFloatSpread(m) * h.z, s.setXYZ(
|
|
65
|
+
if (l < o) {
|
|
66
|
+
const u = a(l, o), m = n * u, h = r.clone().normalize();
|
|
67
|
+
i.x += Q.randFloatSpread(m) * h.x, i.y += Q.randFloatSpread(m) * h.y, i.z += Q.randFloatSpread(m) * h.z, s.setXYZ(c, i.x, i.y, i.z);
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
70
|
s.needsUpdate = !0;
|
|
71
|
-
},
|
|
72
|
-
const
|
|
73
|
-
for (let s = 0; s <
|
|
74
|
-
const
|
|
75
|
-
if (
|
|
71
|
+
}, so = (t, e, o, n) => {
|
|
72
|
+
const r = t.attributes.position, a = new M();
|
|
73
|
+
for (let s = 0; s < r.count; s++) {
|
|
74
|
+
const c = new M();
|
|
75
|
+
if (c.fromBufferAttribute(r, s), c.distanceTo(e) < o) {
|
|
76
76
|
let l = new M(), u = 0;
|
|
77
|
-
for (let m = 0; m <
|
|
78
|
-
|
|
79
|
-
u > 0 && (l.divideScalar(u),
|
|
77
|
+
for (let m = 0; m < r.count; m++)
|
|
78
|
+
a.fromBufferAttribute(r, m), a.distanceTo(c) < o && (l.add(a), u++);
|
|
79
|
+
u > 0 && (l.divideScalar(u), c.lerp(l, n), r.setXYZ(s, c.x, c.y, c.z));
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
|
-
|
|
83
|
-
},
|
|
84
|
-
const s =
|
|
85
|
-
for (let
|
|
82
|
+
r.needsUpdate = !0;
|
|
83
|
+
}, ro = (t, e, o, n, r = !1, a = V.LINEAR) => {
|
|
84
|
+
const s = t.attributes.position;
|
|
85
|
+
for (let c = 0; c < s.count; c++) {
|
|
86
86
|
const i = new M();
|
|
87
|
-
i.fromBufferAttribute(s,
|
|
87
|
+
i.fromBufferAttribute(s, c);
|
|
88
88
|
const l = i.distanceTo(e);
|
|
89
|
-
if (l <
|
|
90
|
-
const m =
|
|
91
|
-
i.add(h.multiplyScalar(m)), s.setXYZ(
|
|
89
|
+
if (l < o) {
|
|
90
|
+
const m = a(l, o) * n * (r ? -1 : 1), h = i.clone().sub(e).normalize();
|
|
91
|
+
i.add(h.multiplyScalar(m)), s.setXYZ(c, i.x, i.y, i.z);
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
94
|
s.needsUpdate = !0;
|
|
95
|
-
},
|
|
96
|
-
const s =
|
|
95
|
+
}, ao = (t, e, o, n, r = _.UP, a = V.LINEAR) => {
|
|
96
|
+
const s = t.attributes.position, c = new de();
|
|
97
97
|
for (let i = 0; i < s.count; i++) {
|
|
98
98
|
const l = new M();
|
|
99
99
|
l.fromBufferAttribute(s, i);
|
|
100
100
|
const u = l.distanceTo(e);
|
|
101
|
-
if (u <
|
|
102
|
-
const h =
|
|
103
|
-
|
|
101
|
+
if (u < o) {
|
|
102
|
+
const h = a(u, o) * n;
|
|
103
|
+
c.setFromAxisAngle(r, h), l.sub(e).applyQuaternion(c).add(e), s.setXYZ(i, l.x, l.y, l.z);
|
|
104
104
|
}
|
|
105
105
|
}
|
|
106
106
|
s.needsUpdate = !0;
|
|
107
|
-
},
|
|
108
|
-
SINE_EASE_IN:
|
|
109
|
-
SINE_EASE_OUT:
|
|
110
|
-
SINE_EASE_IN_OUT:
|
|
111
|
-
QUADRATIC_EASE_IN:
|
|
112
|
-
QUADRATIC_EASE_OUT:
|
|
107
|
+
}, ke = (t) => 1 - Math.cos(t * Math.PI / 2), Ne = (t) => Math.sin(t * Math.PI / 2), Ue = (t) => -0.5 * (Math.cos(Math.PI * t) - 1), Oe = (t) => t * t, _e = (t) => 1 - Math.pow(1 - t, 2), Fe = (t) => t < 0.5 ? 2 * t * t : 1 - Math.pow(-2 * t + 2, 2) / 2, ze = (t) => t * t * t, qe = (t) => 1 - Math.pow(1 - t, 3), Le = (t) => t < 0.5 ? 4 * t * t * t : 1 - Math.pow(-2 * t + 2, 3) / 2, Re = (t) => t * t * t * t, Xe = (t) => 1 - Math.pow(1 - t, 4), Ve = (t) => t < 0.5 ? 8 * t * t * t * t : 1 - Math.pow(-2 * t + 2, 4) / 2, De = (t) => t * t * t * t * t, Ze = (t) => 1 - Math.pow(1 - t, 5), Ye = (t) => t < 0.5 ? 16 * t * t * t * t * t : 1 - Math.pow(-2 * t + 2, 5) / 2, Qe = (t) => t === 0 ? 0 : Math.pow(2, 10 * t - 10), He = (t) => t === 1 ? 1 : 1 - Math.pow(2, -10 * t), je = (t) => t === 0 ? 0 : t === 1 ? 1 : t < 0.5 ? Math.pow(2, 20 * t - 10) / 2 : (2 - Math.pow(2, -20 * t + 10)) / 2, Ke = (t) => 1 - Math.sqrt(1 - Math.pow(t, 2)), Je = (t) => Math.sqrt(1 - Math.pow(t - 1, 2)), $e = (t) => t < 0.5 ? (1 - Math.sqrt(1 - Math.pow(2 * t, 2))) / 2 : (Math.sqrt(1 - Math.pow(-2 * t + 2, 2)) + 1) / 2, We = (t) => t, et = (t) => t * t * (3 - 2 * t), tt = (t) => 1 - Math.pow(1 - t, 0.3), ot = (t) => Math.pow(t, 0.3), nt = (t) => Math.log(Math.max(0.01, t)) / Math.log(2), st = (t) => Math.sqrt(t), rt = (t) => 1 - t, at = (t) => Math.exp(-Math.pow(t - 0.5, 2) / (2 * 0.5)), co = {
|
|
108
|
+
SINE_EASE_IN: ke,
|
|
109
|
+
SINE_EASE_OUT: Ne,
|
|
110
|
+
SINE_EASE_IN_OUT: Ue,
|
|
111
|
+
QUADRATIC_EASE_IN: Oe,
|
|
112
|
+
QUADRATIC_EASE_OUT: _e,
|
|
113
113
|
QUADRATIC_EASE_IN_OUT: Fe,
|
|
114
|
-
CUBIC_EASE_IN:
|
|
115
|
-
CUBIC_EASE_OUT:
|
|
116
|
-
CUBIC_EASE_IN_OUT:
|
|
117
|
-
QUARTIC_EASE_IN:
|
|
118
|
-
QUARTIC_EASE_OUT:
|
|
119
|
-
QUARTIC_EASE_IN_OUT:
|
|
120
|
-
QUINTIC_EASE_IN:
|
|
114
|
+
CUBIC_EASE_IN: ze,
|
|
115
|
+
CUBIC_EASE_OUT: qe,
|
|
116
|
+
CUBIC_EASE_IN_OUT: Le,
|
|
117
|
+
QUARTIC_EASE_IN: Re,
|
|
118
|
+
QUARTIC_EASE_OUT: Xe,
|
|
119
|
+
QUARTIC_EASE_IN_OUT: Ve,
|
|
120
|
+
QUINTIC_EASE_IN: De,
|
|
121
121
|
QUINTIC_EASE_OUT: Ze,
|
|
122
122
|
QUINTIC_EASE_IN_OUT: Ye,
|
|
123
123
|
EXPONENTIAL_EASE_IN: Qe,
|
|
124
|
-
EXPONENTIAL_EASE_OUT:
|
|
125
|
-
EXPONENTIAL_EASE_IN_OUT:
|
|
126
|
-
CIRCULAR_EASE_IN:
|
|
127
|
-
CIRCULAR_EASE_OUT:
|
|
128
|
-
CIRCULAR_EASE_IN_OUT:
|
|
129
|
-
LINEAR:
|
|
130
|
-
SMOOTHSTEP:
|
|
131
|
-
CONCAVE:
|
|
132
|
-
CONVEX:
|
|
133
|
-
LOGARITHMIC:
|
|
134
|
-
SQUARE_ROOT:
|
|
135
|
-
INVERSE:
|
|
124
|
+
EXPONENTIAL_EASE_OUT: He,
|
|
125
|
+
EXPONENTIAL_EASE_IN_OUT: je,
|
|
126
|
+
CIRCULAR_EASE_IN: Ke,
|
|
127
|
+
CIRCULAR_EASE_OUT: Je,
|
|
128
|
+
CIRCULAR_EASE_IN_OUT: $e,
|
|
129
|
+
LINEAR: We,
|
|
130
|
+
SMOOTHSTEP: et,
|
|
131
|
+
CONCAVE: tt,
|
|
132
|
+
CONVEX: ot,
|
|
133
|
+
LOGARITHMIC: nt,
|
|
134
|
+
SQUARE_ROOT: st,
|
|
135
|
+
INVERSE: rt,
|
|
136
136
|
GAUSSIAN: at
|
|
137
|
+
}, ct = (t, e = 1, o = 0, n = 0) => {
|
|
138
|
+
const r = Math.max(0, Math.min(1, t));
|
|
139
|
+
return e * r * r + o * r + n;
|
|
140
|
+
}, it = (t, e = 1) => {
|
|
141
|
+
const o = Math.max(1e-3, e);
|
|
142
|
+
return (1 - Math.exp(-o * t)) / (1 - Math.exp(-o));
|
|
143
|
+
}, lt = (t, e, o, n) => {
|
|
144
|
+
const r = Math.max(0, Math.min(1, t)), a = 1 - r;
|
|
145
|
+
return a * a * e + 2 * a * r * o + r * r * n;
|
|
146
|
+
}, ut = (t, e, o, n, r) => {
|
|
147
|
+
const a = Math.max(0, Math.min(1, t)), s = 1 - a;
|
|
148
|
+
return s * s * s * e + 3 * s * s * a * o + 3 * s * a * a * n + a * a * a * r;
|
|
149
|
+
}, mt = (t, e = 1, o = 1) => {
|
|
150
|
+
const n = Math.max(0, Math.min(1, t));
|
|
151
|
+
return e * Math.pow(n, o);
|
|
152
|
+
}, ht = (t, e = 1, o = 1) => {
|
|
153
|
+
const n = Math.max(1e-3, Math.min(1, t));
|
|
154
|
+
return e * Math.log(o * n + 1);
|
|
155
|
+
}, ft = (t, e = 10) => {
|
|
156
|
+
const o = Math.max(0, Math.min(1, t));
|
|
157
|
+
return 1 / (1 + Math.exp(-e * (o - 0.5)));
|
|
158
|
+
}, B = {
|
|
159
|
+
PARABOLIC: ct,
|
|
160
|
+
DAMPED: it,
|
|
161
|
+
QUADRATIC: lt,
|
|
162
|
+
CUBIC: ut,
|
|
163
|
+
EXPONENTIAL: mt,
|
|
164
|
+
LOGARITHMIC: ht,
|
|
165
|
+
SIGMOID: ft
|
|
137
166
|
};
|
|
138
|
-
class
|
|
167
|
+
class io extends P {
|
|
139
168
|
constructor() {
|
|
140
169
|
super();
|
|
141
|
-
const e = [],
|
|
170
|
+
const e = [], o = 20, n = new C(0.1, 6, 6), r = new w({
|
|
142
171
|
color: 16777215,
|
|
143
172
|
transparent: !0,
|
|
144
173
|
opacity: 0.6,
|
|
145
174
|
roughness: 0.3,
|
|
146
175
|
metalness: 0.3
|
|
147
176
|
});
|
|
148
|
-
for (let
|
|
149
|
-
const i = new f(n,
|
|
177
|
+
for (let c = 0; c < o; c++) {
|
|
178
|
+
const i = new f(n, r);
|
|
150
179
|
i.position.set(
|
|
151
180
|
(Math.random() - 0.5) * 1.5,
|
|
152
181
|
// Random x position within flask
|
|
@@ -156,21 +185,21 @@ class Dt extends P {
|
|
|
156
185
|
// Random z position within flask
|
|
157
186
|
), e.push(i), this.add(i);
|
|
158
187
|
}
|
|
159
|
-
function
|
|
160
|
-
e.forEach((
|
|
161
|
-
|
|
188
|
+
function a() {
|
|
189
|
+
e.forEach((c) => {
|
|
190
|
+
c.position.y += 0.02, c.position.y > 3 && (c.position.y = 0, c.position.x = (Math.random() - 0.5) * 1.5, c.position.z = (Math.random() - 0.5) * 1.5);
|
|
162
191
|
});
|
|
163
192
|
}
|
|
164
193
|
function s() {
|
|
165
|
-
requestAnimationFrame(s),
|
|
194
|
+
requestAnimationFrame(s), a();
|
|
166
195
|
}
|
|
167
196
|
s();
|
|
168
197
|
}
|
|
169
198
|
}
|
|
170
|
-
class
|
|
171
|
-
constructor(e = 1,
|
|
199
|
+
class ie extends g {
|
|
200
|
+
constructor(e = 1, o = 1.5, n = 0.5, r = 0.05, a = 0.05) {
|
|
172
201
|
super();
|
|
173
|
-
const s = e,
|
|
202
|
+
const s = e, c = o, i = n, l = r, u = a, m = [
|
|
174
203
|
// Front cover
|
|
175
204
|
0,
|
|
176
205
|
0,
|
|
@@ -179,10 +208,10 @@ class ce extends v {
|
|
|
179
208
|
0,
|
|
180
209
|
0,
|
|
181
210
|
s,
|
|
182
|
-
|
|
211
|
+
c,
|
|
183
212
|
0,
|
|
184
213
|
0,
|
|
185
|
-
|
|
214
|
+
c,
|
|
186
215
|
0,
|
|
187
216
|
// Back cover
|
|
188
217
|
s,
|
|
@@ -192,10 +221,10 @@ class ce extends v {
|
|
|
192
221
|
0,
|
|
193
222
|
-i,
|
|
194
223
|
0,
|
|
195
|
-
|
|
224
|
+
c,
|
|
196
225
|
-i,
|
|
197
226
|
s,
|
|
198
|
-
|
|
227
|
+
c,
|
|
199
228
|
-i,
|
|
200
229
|
// Spine
|
|
201
230
|
0,
|
|
@@ -205,10 +234,10 @@ class ce extends v {
|
|
|
205
234
|
0,
|
|
206
235
|
0,
|
|
207
236
|
0,
|
|
208
|
-
|
|
237
|
+
c,
|
|
209
238
|
0,
|
|
210
239
|
0,
|
|
211
|
-
|
|
240
|
+
c,
|
|
212
241
|
-i,
|
|
213
242
|
// Inside front cover
|
|
214
243
|
s,
|
|
@@ -218,10 +247,10 @@ class ce extends v {
|
|
|
218
247
|
0,
|
|
219
248
|
-l,
|
|
220
249
|
l,
|
|
221
|
-
|
|
250
|
+
c,
|
|
222
251
|
-l,
|
|
223
252
|
s,
|
|
224
|
-
|
|
253
|
+
c,
|
|
225
254
|
-l,
|
|
226
255
|
// Inside back cover
|
|
227
256
|
l,
|
|
@@ -231,10 +260,10 @@ class ce extends v {
|
|
|
231
260
|
0,
|
|
232
261
|
-i + l,
|
|
233
262
|
s,
|
|
234
|
-
|
|
263
|
+
c,
|
|
235
264
|
-i + l,
|
|
236
265
|
l,
|
|
237
|
-
|
|
266
|
+
c,
|
|
238
267
|
-i + l,
|
|
239
268
|
// Inside spine
|
|
240
269
|
l,
|
|
@@ -244,49 +273,49 @@ class ce extends v {
|
|
|
244
273
|
0,
|
|
245
274
|
-i + l,
|
|
246
275
|
l,
|
|
247
|
-
|
|
276
|
+
c,
|
|
248
277
|
-i + l,
|
|
249
278
|
l,
|
|
250
|
-
|
|
279
|
+
c,
|
|
251
280
|
-l,
|
|
252
281
|
// Front cover top
|
|
253
282
|
0,
|
|
254
|
-
|
|
283
|
+
c,
|
|
255
284
|
0,
|
|
256
285
|
s,
|
|
257
|
-
|
|
286
|
+
c,
|
|
258
287
|
0,
|
|
259
288
|
s,
|
|
260
|
-
|
|
289
|
+
c,
|
|
261
290
|
-l,
|
|
262
291
|
l,
|
|
263
|
-
|
|
292
|
+
c,
|
|
264
293
|
-l,
|
|
265
294
|
// Back cover top
|
|
266
295
|
0,
|
|
267
|
-
|
|
296
|
+
c,
|
|
268
297
|
-i,
|
|
269
298
|
l,
|
|
270
|
-
|
|
299
|
+
c,
|
|
271
300
|
-i + l,
|
|
272
301
|
s,
|
|
273
|
-
|
|
302
|
+
c,
|
|
274
303
|
-i + l,
|
|
275
304
|
s,
|
|
276
|
-
|
|
305
|
+
c,
|
|
277
306
|
-i,
|
|
278
307
|
// Spine cover top
|
|
279
308
|
0,
|
|
280
|
-
|
|
309
|
+
c,
|
|
281
310
|
0,
|
|
282
311
|
l,
|
|
283
|
-
|
|
312
|
+
c,
|
|
284
313
|
-l,
|
|
285
314
|
l,
|
|
286
|
-
|
|
315
|
+
c,
|
|
287
316
|
-i + l,
|
|
288
317
|
0,
|
|
289
|
-
|
|
318
|
+
c,
|
|
290
319
|
-i,
|
|
291
320
|
// Front cover bottom
|
|
292
321
|
0,
|
|
@@ -335,20 +364,20 @@ class ce extends v {
|
|
|
335
364
|
0,
|
|
336
365
|
-l,
|
|
337
366
|
s,
|
|
338
|
-
|
|
367
|
+
c,
|
|
339
368
|
-l,
|
|
340
369
|
s,
|
|
341
|
-
|
|
370
|
+
c,
|
|
342
371
|
0,
|
|
343
372
|
// Back cover edge
|
|
344
373
|
s,
|
|
345
374
|
0,
|
|
346
375
|
-i,
|
|
347
376
|
s,
|
|
348
|
-
|
|
377
|
+
c,
|
|
349
378
|
-i,
|
|
350
379
|
s,
|
|
351
|
-
|
|
380
|
+
c,
|
|
352
381
|
-i + l,
|
|
353
382
|
s,
|
|
354
383
|
0,
|
|
@@ -536,7 +565,7 @@ class ce extends v {
|
|
|
536
565
|
0,
|
|
537
566
|
0
|
|
538
567
|
// Back cover edge
|
|
539
|
-
], d = e / (e * 2 + n), p = (e + n) / (e * 2 + n),
|
|
568
|
+
], d = e / (e * 2 + n), p = (e + n) / (e * 2 + n), y = [
|
|
540
569
|
p,
|
|
541
570
|
0,
|
|
542
571
|
1,
|
|
@@ -663,7 +692,7 @@ class ce extends v {
|
|
|
663
692
|
0,
|
|
664
693
|
1
|
|
665
694
|
// Back cover edge
|
|
666
|
-
],
|
|
695
|
+
], x = [
|
|
667
696
|
0,
|
|
668
697
|
1,
|
|
669
698
|
2,
|
|
@@ -762,123 +791,123 @@ class ce extends v {
|
|
|
762
791
|
54,
|
|
763
792
|
55
|
|
764
793
|
// Back cover edge
|
|
765
|
-
],
|
|
766
|
-
|
|
767
|
-
const
|
|
768
|
-
|
|
794
|
+
], S = new Float32Array(m), G = new Float32Array(h), T = new Float32Array(y), k = new Uint16Array(x), N = new g();
|
|
795
|
+
N.setAttribute("position", new Z(S, 3)), N.setAttribute("normal", new Z(G, 3)), N.setAttribute("uv", new Z(T, 2)), N.setIndex(new Z(k, 1));
|
|
796
|
+
const U = new I(e - l - u, c - u * 2, i - l * 2);
|
|
797
|
+
U.translate((e - l - u) / 2 + l, c / 2, -i / 2), this.copy(A([N, U], !0));
|
|
769
798
|
}
|
|
770
799
|
}
|
|
771
|
-
function
|
|
772
|
-
return Math.random() * (e -
|
|
800
|
+
function pt(t = 0, e = 1) {
|
|
801
|
+
return Math.random() * (e - t) + t;
|
|
773
802
|
}
|
|
774
|
-
function
|
|
775
|
-
return Math.floor(Math.random() * (e -
|
|
803
|
+
function lo(t = 0, e = 1) {
|
|
804
|
+
return Math.floor(Math.random() * (e - t + 1)) + t;
|
|
776
805
|
}
|
|
777
|
-
function
|
|
778
|
-
return e + (
|
|
806
|
+
function dt(t = 0.5, e = 0, o = 1) {
|
|
807
|
+
return e + (o - e) * Math.pow(Math.random(), t);
|
|
779
808
|
}
|
|
780
|
-
function
|
|
781
|
-
return e + (
|
|
809
|
+
function wt(t = 0.5, e = 0, o = 1) {
|
|
810
|
+
return e + (o - e) * Math.pow(1 - Math.random(), t);
|
|
782
811
|
}
|
|
783
|
-
function
|
|
784
|
-
scaleXMin:
|
|
812
|
+
function le({
|
|
813
|
+
scaleXMin: t = 0.4,
|
|
785
814
|
scaleXMax: e = 0.7,
|
|
786
|
-
scaleYMin:
|
|
815
|
+
scaleYMin: o = 0.3,
|
|
787
816
|
scaleYMax: n = 0.95,
|
|
788
|
-
scaleZMin:
|
|
789
|
-
scaleZMax:
|
|
817
|
+
scaleZMin: r = 0.1,
|
|
818
|
+
scaleZMax: a = 0.5
|
|
790
819
|
} = {}) {
|
|
791
820
|
return new M(
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
821
|
+
pt(t, e),
|
|
822
|
+
dt(0.25, o, n),
|
|
823
|
+
wt(0.8, r, a)
|
|
795
824
|
);
|
|
796
825
|
}
|
|
797
|
-
function
|
|
798
|
-
const n = new
|
|
826
|
+
function ue({ coverMaterial: t, pagesMaterial: e, scales: o = [] } = {}) {
|
|
827
|
+
const n = new ie(), r = new we(n, [t, e], o.length), a = new ee();
|
|
799
828
|
let s = 0;
|
|
800
|
-
for (let
|
|
801
|
-
const i =
|
|
802
|
-
l.makeScale(i.x, i.y, i.z),
|
|
829
|
+
for (let c = 0; c < o.length; c++) {
|
|
830
|
+
const i = o[c], l = new ee();
|
|
831
|
+
l.makeScale(i.x, i.y, i.z), a.identity(), a.multiply(l), a.setPosition(0.01 + Math.random() * 0.1, 0, s + i.z * 0.5), r.setMatrixAt(c, a), s += i.z * 0.5;
|
|
803
832
|
}
|
|
804
|
-
return
|
|
833
|
+
return r;
|
|
805
834
|
}
|
|
806
|
-
function
|
|
807
|
-
coverMaterial:
|
|
835
|
+
function uo({
|
|
836
|
+
coverMaterial: t,
|
|
808
837
|
pagesMaterial: e,
|
|
809
|
-
count:
|
|
838
|
+
count: o = 10,
|
|
810
839
|
scaleXMin: n = 0.4,
|
|
811
|
-
scaleXMax:
|
|
812
|
-
scaleYMin:
|
|
840
|
+
scaleXMax: r = 0.7,
|
|
841
|
+
scaleYMin: a = 0.3,
|
|
813
842
|
scaleYMax: s = 0.95,
|
|
814
|
-
scaleZMin:
|
|
843
|
+
scaleZMin: c = 0.1,
|
|
815
844
|
scaleZMax: i = 0.5
|
|
816
845
|
} = {}) {
|
|
817
846
|
const l = Array.from(
|
|
818
|
-
{ length:
|
|
819
|
-
() =>
|
|
847
|
+
{ length: o },
|
|
848
|
+
() => le({ scaleXMin: n, scaleXMax: r, scaleYMin: a, scaleYMax: s, scaleZMin: c, scaleZMax: i })
|
|
820
849
|
);
|
|
821
|
-
return
|
|
850
|
+
return ue({ coverMaterial: t, pagesMaterial: e, scales: l });
|
|
822
851
|
}
|
|
823
|
-
function
|
|
824
|
-
coverMaterial:
|
|
852
|
+
function mo({
|
|
853
|
+
coverMaterial: t,
|
|
825
854
|
pagesMaterial: e,
|
|
826
|
-
length:
|
|
855
|
+
length: o = 10,
|
|
827
856
|
scaleXMin: n = 0.4,
|
|
828
|
-
scaleXMax:
|
|
829
|
-
scaleYMin:
|
|
857
|
+
scaleXMax: r = 0.7,
|
|
858
|
+
scaleYMin: a = 0.3,
|
|
830
859
|
scaleYMax: s = 0.95,
|
|
831
|
-
scaleZMin:
|
|
860
|
+
scaleZMin: c = 0.1,
|
|
832
861
|
scaleZMax: i = 0.5
|
|
833
862
|
} = {}) {
|
|
834
863
|
const l = [];
|
|
835
|
-
let u =
|
|
864
|
+
let u = o;
|
|
836
865
|
for (; u > 0; ) {
|
|
837
|
-
const m =
|
|
866
|
+
const m = le({ scaleXMin: n, scaleXMax: r, scaleYMin: a, scaleYMax: s, scaleZMin: c, scaleZMax: i });
|
|
838
867
|
m.z = Math.min(m.z, u), l.push(m), u -= m.z;
|
|
839
868
|
}
|
|
840
|
-
return
|
|
869
|
+
return ue({ coverMaterial: t, pagesMaterial: e, scales: l });
|
|
841
870
|
}
|
|
842
|
-
class
|
|
843
|
-
constructor(e = 2,
|
|
871
|
+
class ho extends g {
|
|
872
|
+
constructor(e = 2, o = 0.3, n = 0.6, r = 5, a = 5, s = Math.PI / 4) {
|
|
844
873
|
super();
|
|
845
|
-
const
|
|
846
|
-
for (let d = 0; d <
|
|
847
|
-
const p = d *
|
|
848
|
-
|
|
874
|
+
const c = [], i = [];
|
|
875
|
+
for (let d = 0; d < r; d++) {
|
|
876
|
+
const p = d * o, y = p + o, x = d * n, S = x + n;
|
|
877
|
+
c.push(
|
|
849
878
|
// Vertical riser
|
|
850
879
|
-e / 2,
|
|
851
880
|
p,
|
|
852
|
-
|
|
881
|
+
x,
|
|
853
882
|
// Bottom-left
|
|
854
883
|
e / 2,
|
|
855
884
|
p,
|
|
856
|
-
|
|
885
|
+
x,
|
|
857
886
|
// Bottom-right
|
|
858
887
|
e / 2,
|
|
859
|
-
x,
|
|
860
888
|
y,
|
|
889
|
+
x,
|
|
861
890
|
// Top-right
|
|
862
891
|
-e / 2,
|
|
863
|
-
x,
|
|
864
892
|
y,
|
|
893
|
+
x,
|
|
865
894
|
// Top-left
|
|
866
895
|
// Horizontal tread
|
|
867
896
|
-e / 2,
|
|
868
|
-
x,
|
|
869
897
|
y,
|
|
898
|
+
x,
|
|
870
899
|
// Top-left
|
|
871
900
|
e / 2,
|
|
872
|
-
x,
|
|
873
901
|
y,
|
|
902
|
+
x,
|
|
874
903
|
// Top-right
|
|
875
904
|
e / 2,
|
|
876
|
-
|
|
877
|
-
|
|
905
|
+
y,
|
|
906
|
+
S,
|
|
878
907
|
// Back-right
|
|
879
908
|
-e / 2,
|
|
880
|
-
|
|
881
|
-
|
|
909
|
+
y,
|
|
910
|
+
S
|
|
882
911
|
// Back-left
|
|
883
912
|
);
|
|
884
913
|
const G = d * 8;
|
|
@@ -898,8 +927,8 @@ class Jt extends v {
|
|
|
898
927
|
G + 7
|
|
899
928
|
);
|
|
900
929
|
}
|
|
901
|
-
const l =
|
|
902
|
-
|
|
930
|
+
const l = r * o, u = r * n, m = e * 2;
|
|
931
|
+
c.push(
|
|
903
932
|
// Landing platform (4 vertices)
|
|
904
933
|
-m / 2,
|
|
905
934
|
l,
|
|
@@ -918,7 +947,7 @@ class Jt extends v {
|
|
|
918
947
|
u + n
|
|
919
948
|
// Top-left
|
|
920
949
|
);
|
|
921
|
-
const h =
|
|
950
|
+
const h = r * 8;
|
|
922
951
|
i.push(
|
|
923
952
|
h,
|
|
924
953
|
h + 1,
|
|
@@ -931,45 +960,45 @@ class Jt extends v {
|
|
|
931
960
|
);
|
|
932
961
|
for (let d = 0; d < 2; d++) {
|
|
933
962
|
const p = d === 0 ? 1 : -1;
|
|
934
|
-
for (let
|
|
935
|
-
const
|
|
936
|
-
|
|
963
|
+
for (let y = 0; y < a; y++) {
|
|
964
|
+
const x = l + y * o, S = x + o, G = p * (m / 4), T = u + n, k = y * n * Math.cos(s), N = y * n * Math.sin(s), U = G + p * k - e / 2 * Math.cos(s), D = G + p * k + e / 2 * Math.cos(s), O = T + N, fe = U + p * n * Math.cos(s), pe = D + p * n * Math.cos(s), W = O + n * Math.sin(s);
|
|
965
|
+
c.push(
|
|
937
966
|
// Vertical riser
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
967
|
+
U,
|
|
968
|
+
x,
|
|
969
|
+
O,
|
|
941
970
|
// Bottom-left
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
971
|
+
D,
|
|
972
|
+
x,
|
|
973
|
+
O,
|
|
945
974
|
// Bottom-right
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
975
|
+
D,
|
|
976
|
+
S,
|
|
977
|
+
O,
|
|
949
978
|
// Top-right
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
979
|
+
U,
|
|
980
|
+
S,
|
|
981
|
+
O,
|
|
953
982
|
// Top-left
|
|
954
983
|
// Horizontal tread
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
984
|
+
U,
|
|
985
|
+
S,
|
|
986
|
+
O,
|
|
958
987
|
// Top-left
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
988
|
+
D,
|
|
989
|
+
S,
|
|
990
|
+
O,
|
|
962
991
|
// Top-right
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
992
|
+
pe,
|
|
993
|
+
S,
|
|
994
|
+
W,
|
|
966
995
|
// Back-right
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
996
|
+
fe,
|
|
997
|
+
S,
|
|
998
|
+
W
|
|
970
999
|
// Back-left
|
|
971
1000
|
);
|
|
972
|
-
const E = h + 4 + d *
|
|
1001
|
+
const E = h + 4 + d * a * 8 + y * 8;
|
|
973
1002
|
i.push(
|
|
974
1003
|
E,
|
|
975
1004
|
E + 1,
|
|
@@ -987,13 +1016,13 @@ class Jt extends v {
|
|
|
987
1016
|
);
|
|
988
1017
|
}
|
|
989
1018
|
}
|
|
990
|
-
this.setIndex(i), this.setAttribute("position", new F(
|
|
1019
|
+
this.setIndex(i), this.setAttribute("position", new F(c, 3)), this.computeVertexNormals();
|
|
991
1020
|
}
|
|
992
1021
|
}
|
|
993
|
-
class
|
|
994
|
-
constructor(e = 5,
|
|
1022
|
+
class fo extends g {
|
|
1023
|
+
constructor(e = 5, o = 3, n = 5, r = 0.2) {
|
|
995
1024
|
super();
|
|
996
|
-
const
|
|
1025
|
+
const a = [
|
|
997
1026
|
// Floor vertices
|
|
998
1027
|
-e / 2,
|
|
999
1028
|
0,
|
|
@@ -1021,11 +1050,11 @@ class $t extends v {
|
|
|
1021
1050
|
-n / 2,
|
|
1022
1051
|
// 5
|
|
1023
1052
|
e / 2,
|
|
1024
|
-
|
|
1053
|
+
o,
|
|
1025
1054
|
-n / 2,
|
|
1026
1055
|
// 6
|
|
1027
1056
|
-e / 2,
|
|
1028
|
-
|
|
1057
|
+
o,
|
|
1029
1058
|
-n / 2,
|
|
1030
1059
|
// 7
|
|
1031
1060
|
// Left wall vertices
|
|
@@ -1038,11 +1067,11 @@ class $t extends v {
|
|
|
1038
1067
|
n / 2,
|
|
1039
1068
|
// 9
|
|
1040
1069
|
-e / 2,
|
|
1041
|
-
|
|
1070
|
+
o,
|
|
1042
1071
|
n / 2,
|
|
1043
1072
|
// 10
|
|
1044
1073
|
-e / 2,
|
|
1045
|
-
|
|
1074
|
+
o,
|
|
1046
1075
|
-n / 2
|
|
1047
1076
|
// 11
|
|
1048
1077
|
], s = [
|
|
@@ -1068,15 +1097,15 @@ class $t extends v {
|
|
|
1068
1097
|
10,
|
|
1069
1098
|
11
|
|
1070
1099
|
];
|
|
1071
|
-
this.setIndex(s), this.setAttribute("position", new F(
|
|
1100
|
+
this.setIndex(s), this.setAttribute("position", new F(a, 3)), this.computeVertexNormals();
|
|
1072
1101
|
}
|
|
1073
1102
|
}
|
|
1074
|
-
class
|
|
1075
|
-
constructor(e = 2,
|
|
1103
|
+
class po extends g {
|
|
1104
|
+
constructor(e = 2, o = 0.3, n = 0.5, r = 5, a = 2) {
|
|
1076
1105
|
super();
|
|
1077
|
-
const s = [],
|
|
1078
|
-
for (let m = 0; m <
|
|
1079
|
-
const h = m *
|
|
1106
|
+
const s = [], c = [];
|
|
1107
|
+
for (let m = 0; m < r; m++) {
|
|
1108
|
+
const h = m * o, d = h + o, p = m * n, y = p + n;
|
|
1080
1109
|
s.push(
|
|
1081
1110
|
// Vertical riser
|
|
1082
1111
|
-e / 2,
|
|
@@ -1106,31 +1135,31 @@ class Wt extends v {
|
|
|
1106
1135
|
// Top-right
|
|
1107
1136
|
e / 2,
|
|
1108
1137
|
d,
|
|
1109
|
-
|
|
1138
|
+
y,
|
|
1110
1139
|
// Back-right
|
|
1111
1140
|
-e / 2,
|
|
1112
1141
|
d,
|
|
1113
|
-
|
|
1142
|
+
y
|
|
1114
1143
|
// Back-left
|
|
1115
1144
|
);
|
|
1116
|
-
const
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
),
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1145
|
+
const x = m * 8;
|
|
1146
|
+
c.push(
|
|
1147
|
+
x,
|
|
1148
|
+
x + 1,
|
|
1149
|
+
x + 2,
|
|
1150
|
+
x,
|
|
1151
|
+
x + 2,
|
|
1152
|
+
x + 3
|
|
1153
|
+
), c.push(
|
|
1154
|
+
x + 4,
|
|
1155
|
+
x + 5,
|
|
1156
|
+
x + 6,
|
|
1157
|
+
x + 4,
|
|
1158
|
+
x + 6,
|
|
1159
|
+
x + 7
|
|
1131
1160
|
);
|
|
1132
1161
|
}
|
|
1133
|
-
const i =
|
|
1162
|
+
const i = r * o, l = r * n;
|
|
1134
1163
|
s.push(
|
|
1135
1164
|
// Landing platform (4 vertices)
|
|
1136
1165
|
-e / 2,
|
|
@@ -1143,15 +1172,15 @@ class Wt extends v {
|
|
|
1143
1172
|
// Bottom-right
|
|
1144
1173
|
e / 2,
|
|
1145
1174
|
i,
|
|
1146
|
-
l +
|
|
1175
|
+
l + a,
|
|
1147
1176
|
// Top-right
|
|
1148
1177
|
-e / 2,
|
|
1149
1178
|
i,
|
|
1150
|
-
l +
|
|
1179
|
+
l + a
|
|
1151
1180
|
// Top-left
|
|
1152
1181
|
);
|
|
1153
|
-
const u =
|
|
1154
|
-
|
|
1182
|
+
const u = r * 8;
|
|
1183
|
+
c.push(
|
|
1155
1184
|
u,
|
|
1156
1185
|
u + 1,
|
|
1157
1186
|
u + 2,
|
|
@@ -1161,72 +1190,72 @@ class Wt extends v {
|
|
|
1161
1190
|
u + 3
|
|
1162
1191
|
// Second triangle for landing
|
|
1163
1192
|
);
|
|
1164
|
-
for (let m = 0; m <
|
|
1165
|
-
const h = i + m *
|
|
1193
|
+
for (let m = 0; m < r; m++) {
|
|
1194
|
+
const h = i + m * o, d = h + o, p = -e / 2 - m * n, y = p - n;
|
|
1166
1195
|
s.push(
|
|
1167
1196
|
// Vertical riser
|
|
1168
1197
|
p,
|
|
1169
1198
|
h,
|
|
1170
|
-
l +
|
|
1199
|
+
l + a,
|
|
1171
1200
|
// Bottom-left
|
|
1172
1201
|
p,
|
|
1173
1202
|
h,
|
|
1174
|
-
l +
|
|
1203
|
+
l + a - e,
|
|
1175
1204
|
// Bottom-right
|
|
1176
1205
|
p,
|
|
1177
1206
|
d,
|
|
1178
|
-
l +
|
|
1207
|
+
l + a - e,
|
|
1179
1208
|
// Top-right
|
|
1180
1209
|
p,
|
|
1181
1210
|
d,
|
|
1182
|
-
l +
|
|
1211
|
+
l + a,
|
|
1183
1212
|
// Top-left
|
|
1184
1213
|
// Horizontal tread
|
|
1185
1214
|
p,
|
|
1186
1215
|
d,
|
|
1187
|
-
l +
|
|
1216
|
+
l + a,
|
|
1188
1217
|
// Top-left
|
|
1189
1218
|
p,
|
|
1190
1219
|
d,
|
|
1191
|
-
l +
|
|
1220
|
+
l + a - e,
|
|
1192
1221
|
// Top-right
|
|
1193
|
-
|
|
1222
|
+
y,
|
|
1194
1223
|
d,
|
|
1195
|
-
l +
|
|
1224
|
+
l + a - e,
|
|
1196
1225
|
// Back-right
|
|
1197
|
-
|
|
1226
|
+
y,
|
|
1198
1227
|
d,
|
|
1199
|
-
l +
|
|
1228
|
+
l + a
|
|
1200
1229
|
// Back-left
|
|
1201
1230
|
);
|
|
1202
|
-
const
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
),
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
|
|
1231
|
+
const x = u + 4 + m * 8;
|
|
1232
|
+
c.push(
|
|
1233
|
+
x,
|
|
1234
|
+
x + 1,
|
|
1235
|
+
x + 2,
|
|
1236
|
+
x,
|
|
1237
|
+
x + 2,
|
|
1238
|
+
x + 3
|
|
1239
|
+
), c.push(
|
|
1240
|
+
x + 4,
|
|
1241
|
+
x + 5,
|
|
1242
|
+
x + 6,
|
|
1243
|
+
x + 4,
|
|
1244
|
+
x + 6,
|
|
1245
|
+
x + 7
|
|
1217
1246
|
);
|
|
1218
1247
|
}
|
|
1219
|
-
this.setIndex(
|
|
1248
|
+
this.setIndex(c), this.setAttribute("position", new F(s, 3)), this.computeVertexNormals();
|
|
1220
1249
|
}
|
|
1221
1250
|
}
|
|
1222
|
-
class
|
|
1223
|
-
constructor(e = 1,
|
|
1251
|
+
class wo extends g {
|
|
1252
|
+
constructor(e = 1, o = 0.4, n = 0.2, r = 20, a = 2, s = Math.PI / 8) {
|
|
1224
1253
|
super();
|
|
1225
|
-
const
|
|
1254
|
+
const c = [], i = [];
|
|
1226
1255
|
let l = 0;
|
|
1227
|
-
for (let u = 0; u <
|
|
1228
|
-
const m =
|
|
1229
|
-
|
|
1256
|
+
for (let u = 0; u < r; u++) {
|
|
1257
|
+
const m = a * Math.cos(l), h = a * Math.sin(l), d = u * n, p = d + n;
|
|
1258
|
+
c.push(
|
|
1230
1259
|
// Front face (vertical riser)
|
|
1231
1260
|
m - e / 2 * Math.cos(l),
|
|
1232
1261
|
d,
|
|
@@ -1244,7 +1273,7 @@ class eo extends v {
|
|
|
1244
1273
|
p,
|
|
1245
1274
|
h - e / 2 * Math.sin(l)
|
|
1246
1275
|
// Top-left
|
|
1247
|
-
),
|
|
1276
|
+
), c.push(
|
|
1248
1277
|
// Top face (horizontal tread)
|
|
1249
1278
|
m - e / 2 * Math.cos(l),
|
|
1250
1279
|
p,
|
|
@@ -1254,46 +1283,46 @@ class eo extends v {
|
|
|
1254
1283
|
p,
|
|
1255
1284
|
h + e / 2 * Math.sin(l),
|
|
1256
1285
|
// Top-right-front
|
|
1257
|
-
m + e / 2 * Math.cos(l) -
|
|
1286
|
+
m + e / 2 * Math.cos(l) - o * Math.sin(l),
|
|
1258
1287
|
p,
|
|
1259
|
-
h + e / 2 * Math.sin(l) +
|
|
1288
|
+
h + e / 2 * Math.sin(l) + o * Math.cos(l),
|
|
1260
1289
|
// Back-right
|
|
1261
|
-
m - e / 2 * Math.cos(l) -
|
|
1290
|
+
m - e / 2 * Math.cos(l) - o * Math.sin(l),
|
|
1262
1291
|
p,
|
|
1263
|
-
h - e / 2 * Math.sin(l) +
|
|
1292
|
+
h - e / 2 * Math.sin(l) + o * Math.cos(l)
|
|
1264
1293
|
// Back-left
|
|
1265
1294
|
);
|
|
1266
|
-
const
|
|
1295
|
+
const y = u * 8;
|
|
1267
1296
|
i.push(
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1297
|
+
y,
|
|
1298
|
+
y + 1,
|
|
1299
|
+
y + 2,
|
|
1271
1300
|
// First triangle for riser
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
|
|
1301
|
+
y,
|
|
1302
|
+
y + 2,
|
|
1303
|
+
y + 3
|
|
1275
1304
|
// Second triangle for riser
|
|
1276
1305
|
), i.push(
|
|
1277
|
-
|
|
1278
|
-
|
|
1279
|
-
|
|
1306
|
+
y + 4,
|
|
1307
|
+
y + 5,
|
|
1308
|
+
y + 6,
|
|
1280
1309
|
// First triangle for tread
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1310
|
+
y + 4,
|
|
1311
|
+
y + 6,
|
|
1312
|
+
y + 7
|
|
1284
1313
|
// Second triangle for tread
|
|
1285
1314
|
), l += s;
|
|
1286
1315
|
}
|
|
1287
|
-
this.setIndex(i), this.setAttribute("position", new F(
|
|
1316
|
+
this.setIndex(i), this.setAttribute("position", new F(c, 3)), this.computeVertexNormals();
|
|
1288
1317
|
}
|
|
1289
1318
|
}
|
|
1290
|
-
class
|
|
1291
|
-
constructor(e = 2,
|
|
1319
|
+
class xo extends g {
|
|
1320
|
+
constructor(e = 2, o = 0.3, n = 0.5, r = 10) {
|
|
1292
1321
|
super();
|
|
1293
|
-
const
|
|
1294
|
-
for (let
|
|
1295
|
-
const i =
|
|
1296
|
-
|
|
1322
|
+
const a = [], s = [];
|
|
1323
|
+
for (let c = 0; c < r; c++) {
|
|
1324
|
+
const i = c * o, l = i + o, u = c * n, m = u + n;
|
|
1325
|
+
a.push(
|
|
1297
1326
|
// Bottom face of riser (front face)
|
|
1298
1327
|
-e / 2,
|
|
1299
1328
|
i,
|
|
@@ -1329,7 +1358,7 @@ class to extends v {
|
|
|
1329
1358
|
m
|
|
1330
1359
|
// 7: Top-left-back
|
|
1331
1360
|
);
|
|
1332
|
-
const h =
|
|
1361
|
+
const h = c * 8;
|
|
1333
1362
|
s.push(
|
|
1334
1363
|
h,
|
|
1335
1364
|
h + 1,
|
|
@@ -1350,147 +1379,147 @@ class to extends v {
|
|
|
1350
1379
|
// Second triangle for tread
|
|
1351
1380
|
);
|
|
1352
1381
|
}
|
|
1353
|
-
this.setIndex(s), this.setAttribute("position", new F(
|
|
1382
|
+
this.setIndex(s), this.setAttribute("position", new F(a, 3)), this.computeVertexNormals();
|
|
1354
1383
|
}
|
|
1355
1384
|
}
|
|
1356
|
-
class
|
|
1357
|
-
constructor(e = 0.4,
|
|
1385
|
+
class xt extends g {
|
|
1386
|
+
constructor(e = 0.4, o = 1.2, n = 0.2) {
|
|
1358
1387
|
super();
|
|
1359
|
-
const
|
|
1360
|
-
|
|
1361
|
-
const s = e * 1.5,
|
|
1362
|
-
|
|
1388
|
+
const r = o * 0.6, a = new I(e / 2, r, n);
|
|
1389
|
+
a.translate(0, r / 2, 0);
|
|
1390
|
+
const s = e * 1.5, c = new I(s, e / 4, n);
|
|
1391
|
+
c.translate(0, r * 0.75, 0), this.copy(A([a, c], !1)), this.computeVertexNormals();
|
|
1363
1392
|
}
|
|
1364
1393
|
}
|
|
1365
|
-
class
|
|
1366
|
-
constructor(e = 1.75,
|
|
1394
|
+
class yt extends g {
|
|
1395
|
+
constructor(e = 1.75, o = 0.75) {
|
|
1367
1396
|
super();
|
|
1368
|
-
const n = e * 0.05,
|
|
1369
|
-
let
|
|
1370
|
-
const i = new
|
|
1371
|
-
i.translate(0,
|
|
1372
|
-
const l = new
|
|
1373
|
-
l.translate(0,
|
|
1374
|
-
const u = new
|
|
1375
|
-
u.translate(0,
|
|
1376
|
-
const m = new
|
|
1377
|
-
m.translate(0,
|
|
1378
|
-
const h = new
|
|
1379
|
-
h.translate(0,
|
|
1380
|
-
}
|
|
1381
|
-
}
|
|
1382
|
-
class
|
|
1383
|
-
constructor(e = 0.6,
|
|
1397
|
+
const n = e * 0.05, r = e * 0.15, a = e * 0.15, s = e * 0.75;
|
|
1398
|
+
let c = 0;
|
|
1399
|
+
const i = new I(o, n, o);
|
|
1400
|
+
i.translate(0, c + n / 2, 0), c += n;
|
|
1401
|
+
const l = new I(o * 0.8, r, o * 0.8);
|
|
1402
|
+
l.translate(0, c + r / 2, 0), c += r;
|
|
1403
|
+
const u = new I(o * 0.6, a, o * 0.6);
|
|
1404
|
+
u.translate(0, c + a / 2, 0), c += a;
|
|
1405
|
+
const m = new I(o * 0.4, s, o * 0.4);
|
|
1406
|
+
m.translate(0, c + s / 2, 0), c += s;
|
|
1407
|
+
const h = new q(o * 0.4 / Math.sqrt(2), 0.1, 4, 1, !1, Math.PI / 4);
|
|
1408
|
+
h.translate(0, c + 0.1 / 2, 0), this.copy(A([i, l, u, m, h], !1)), this.computeVertexNormals();
|
|
1409
|
+
}
|
|
1410
|
+
}
|
|
1411
|
+
class Mt extends g {
|
|
1412
|
+
constructor(e = 0.6, o = 1, n = 0.2, r = 0.6) {
|
|
1384
1413
|
super();
|
|
1385
|
-
const
|
|
1386
|
-
s.translate(0,
|
|
1387
|
-
const
|
|
1388
|
-
|
|
1414
|
+
const a = o - r / 2, s = new I(e, a, n);
|
|
1415
|
+
s.translate(0, a / 2, 0);
|
|
1416
|
+
const c = new b(r / 2, r / 2, n, 16, 1, !1, 0, Math.PI);
|
|
1417
|
+
c.rotateY(Math.PI / 2), c.rotateX(Math.PI / 2), c.translate(0, a, 0), this.copy(A([s, c], !1)), this.computeVertexNormals();
|
|
1389
1418
|
}
|
|
1390
1419
|
}
|
|
1391
|
-
class
|
|
1392
|
-
constructor(e = 0.5,
|
|
1420
|
+
class vt extends g {
|
|
1421
|
+
constructor(e = 0.5, o = 0.8, n = 0.15) {
|
|
1393
1422
|
super();
|
|
1394
|
-
const
|
|
1395
|
-
|
|
1423
|
+
const r = new I(e, o, n);
|
|
1424
|
+
r.translate(0, o / 2, 0), this.copy(r);
|
|
1396
1425
|
}
|
|
1397
1426
|
}
|
|
1398
|
-
class
|
|
1427
|
+
class gt extends g {
|
|
1399
1428
|
constructor({ height: e = 2.25 } = {}) {
|
|
1400
1429
|
super();
|
|
1401
|
-
const
|
|
1402
|
-
|
|
1403
|
-
const n = new
|
|
1430
|
+
const o = new I(1.2, 0.5, 1.2);
|
|
1431
|
+
o.translate(0, 0.25, 0);
|
|
1432
|
+
const n = new I(1, e, 1);
|
|
1404
1433
|
n.translate(0, 0.5 + e / 2, 0);
|
|
1405
|
-
const
|
|
1406
|
-
|
|
1434
|
+
const r = new I(1.4, 0.3, 1.4);
|
|
1435
|
+
r.translate(0, 0.5 + e + 0.15, 0), this.copy(A([o, n, r], !1));
|
|
1407
1436
|
}
|
|
1408
1437
|
}
|
|
1409
|
-
class
|
|
1438
|
+
class me extends g {
|
|
1410
1439
|
constructor({
|
|
1411
1440
|
barHeight: e = 2,
|
|
1412
1441
|
//
|
|
1413
|
-
barRadius:
|
|
1442
|
+
barRadius: o = 0.05,
|
|
1414
1443
|
spikeHeight: n = 0.3,
|
|
1415
|
-
spikeRadius:
|
|
1416
|
-
spikeScaleZ:
|
|
1444
|
+
spikeRadius: r = 0.075,
|
|
1445
|
+
spikeScaleZ: a = 1,
|
|
1417
1446
|
radialSegments: s = 8
|
|
1418
1447
|
} = {}) {
|
|
1419
1448
|
super();
|
|
1420
|
-
const
|
|
1421
|
-
|
|
1422
|
-
const i = new
|
|
1423
|
-
i.translate(0, e + n / 2, 0), i.scale(1, 1,
|
|
1449
|
+
const c = new b(o, o, e, s);
|
|
1450
|
+
c.translate(0, e / 2, 0);
|
|
1451
|
+
const i = new q(r, n, s);
|
|
1452
|
+
i.translate(0, e + n / 2, 0), i.scale(1, 1, a), this.copy(A([c, i], !1));
|
|
1424
1453
|
}
|
|
1425
1454
|
}
|
|
1426
|
-
class
|
|
1455
|
+
class It extends g {
|
|
1427
1456
|
constructor({
|
|
1428
1457
|
count: e = 20,
|
|
1429
1458
|
//
|
|
1430
|
-
spacing:
|
|
1459
|
+
spacing: o = 0.4,
|
|
1431
1460
|
barHeight: n = 2,
|
|
1432
|
-
barRadius:
|
|
1433
|
-
spikeHeight:
|
|
1461
|
+
barRadius: r = 0.05,
|
|
1462
|
+
spikeHeight: a = 0.3,
|
|
1434
1463
|
spikeRadius: s = 0.075,
|
|
1435
|
-
spikeScaleZ:
|
|
1464
|
+
spikeScaleZ: c = 1,
|
|
1436
1465
|
railHeight: i = 0.1,
|
|
1437
1466
|
railDepth: l = 0.05,
|
|
1438
1467
|
railOffset: u = 0,
|
|
1439
1468
|
radialSegments: m = 8
|
|
1440
1469
|
} = {}) {
|
|
1441
1470
|
super();
|
|
1442
|
-
const h = [], d = new
|
|
1443
|
-
for (let
|
|
1471
|
+
const h = [], d = new me({ barHeight: n, barRadius: r, spikeHeight: a, spikeRadius: s, spikeScaleZ: c, radialSegments: m }), p = new I(e * o, i, l);
|
|
1472
|
+
for (let S = 0; S < e; S++) {
|
|
1444
1473
|
const G = d.clone();
|
|
1445
|
-
G.translate(
|
|
1474
|
+
G.translate(S * o, 0, 0), h.push(G);
|
|
1446
1475
|
}
|
|
1447
|
-
const x = p.clone();
|
|
1448
|
-
x.translate(t * (e - 1) / 2, n - u - i / 2, 0), h.push(x);
|
|
1449
1476
|
const y = p.clone();
|
|
1450
|
-
y.translate(
|
|
1477
|
+
y.translate(o * (e - 1) / 2, n - u - i / 2, 0), h.push(y);
|
|
1478
|
+
const x = p.clone();
|
|
1479
|
+
x.translate(o * (e - 1) / 2, i / 2, 0), h.push(x), this.copy(A(h));
|
|
1451
1480
|
}
|
|
1452
1481
|
}
|
|
1453
|
-
class
|
|
1482
|
+
class bt extends g {
|
|
1454
1483
|
constructor({
|
|
1455
1484
|
width: e = 5,
|
|
1456
1485
|
//
|
|
1457
|
-
height:
|
|
1486
|
+
height: o = 8,
|
|
1458
1487
|
depth: n = 1,
|
|
1459
|
-
shelves:
|
|
1460
|
-
frameThickness:
|
|
1488
|
+
shelves: r = 4,
|
|
1489
|
+
frameThickness: a = 0.1,
|
|
1461
1490
|
open: s = !1
|
|
1462
1491
|
} = {}) {
|
|
1463
1492
|
super();
|
|
1464
|
-
const
|
|
1465
|
-
h.translate(-i / 2 +
|
|
1493
|
+
const c = o, i = e, l = n, u = new I(a, c, l), m = new I(i - 2 * a, a, l), h = u.clone();
|
|
1494
|
+
h.translate(-i / 2 + a / 2, c / 2, 0);
|
|
1466
1495
|
const d = u.clone();
|
|
1467
|
-
d.translate(i / 2 -
|
|
1496
|
+
d.translate(i / 2 - a / 2, c / 2, 0);
|
|
1468
1497
|
const p = m.clone();
|
|
1469
|
-
p.translate(0,
|
|
1470
|
-
const
|
|
1471
|
-
|
|
1472
|
-
const
|
|
1473
|
-
|
|
1474
|
-
const
|
|
1475
|
-
for (let
|
|
1476
|
-
const
|
|
1477
|
-
|
|
1498
|
+
p.translate(0, c - a / 2, 0);
|
|
1499
|
+
const y = m.clone();
|
|
1500
|
+
y.translate(0, a / 2, 0);
|
|
1501
|
+
const x = new I(i, c, a);
|
|
1502
|
+
x.translate(0, c / 2, -l / 2 + a / 2);
|
|
1503
|
+
const S = [], G = (c - a) / (r + 1);
|
|
1504
|
+
for (let T = 1; T <= r; T++) {
|
|
1505
|
+
const k = m.clone();
|
|
1506
|
+
k.translate(0, a / 2 + T * G, 0), S.push(k);
|
|
1478
1507
|
}
|
|
1479
1508
|
this.copy(A([
|
|
1480
1509
|
h,
|
|
1481
1510
|
//
|
|
1482
1511
|
d,
|
|
1483
1512
|
p,
|
|
1484
|
-
|
|
1485
|
-
...s ? [] : [
|
|
1486
|
-
...
|
|
1513
|
+
y,
|
|
1514
|
+
...s ? [] : [x],
|
|
1515
|
+
...S
|
|
1487
1516
|
], !1));
|
|
1488
1517
|
}
|
|
1489
1518
|
}
|
|
1490
|
-
class
|
|
1519
|
+
class yo extends g {
|
|
1491
1520
|
constructor(e = 0.1) {
|
|
1492
1521
|
super();
|
|
1493
|
-
const
|
|
1522
|
+
const o = [], n = [], r = [
|
|
1494
1523
|
[0, 1],
|
|
1495
1524
|
// Top point
|
|
1496
1525
|
[0.5, 0.75],
|
|
@@ -1508,198 +1537,198 @@ class oo extends v {
|
|
|
1508
1537
|
[-0.5, 0.75]
|
|
1509
1538
|
// Left upper middle
|
|
1510
1539
|
];
|
|
1511
|
-
for (let s = 0; s <
|
|
1512
|
-
const [
|
|
1513
|
-
|
|
1540
|
+
for (let s = 0; s < r.length; s++) {
|
|
1541
|
+
const [c, i] = r[s];
|
|
1542
|
+
o.push(c * e, i * e, 0);
|
|
1514
1543
|
}
|
|
1515
|
-
for (let s = 1; s <
|
|
1544
|
+
for (let s = 1; s < r.length - 1; s++)
|
|
1516
1545
|
n.push(0, s, s + 1);
|
|
1517
|
-
n.push(0,
|
|
1518
|
-
const
|
|
1519
|
-
this.setAttribute("position",
|
|
1546
|
+
n.push(0, r.length - 1, 1);
|
|
1547
|
+
const a = new F(o, 3);
|
|
1548
|
+
this.setAttribute("position", a), this.setIndex(n), this.computeVertexNormals();
|
|
1520
1549
|
}
|
|
1521
1550
|
}
|
|
1522
|
-
function
|
|
1523
|
-
|
|
1524
|
-
const
|
|
1525
|
-
for (let
|
|
1526
|
-
const s = new M().fromBufferAttribute(
|
|
1527
|
-
s.add(i),
|
|
1551
|
+
function St(t, e = _.XYZ, o = 0.5, n = 2) {
|
|
1552
|
+
t.deleteAttribute("uv"), t.deleteAttribute("normal"), t = Ee(t), t.computeVertexNormals();
|
|
1553
|
+
const r = t.getAttribute("position");
|
|
1554
|
+
for (let a = 0; a < r.count; a++) {
|
|
1555
|
+
const s = new M().fromBufferAttribute(r, a), c = Math.random() * (n - o) + o, i = e.clone().multiplyScalar(c);
|
|
1556
|
+
s.add(i), r.setXYZ(a, s.x, s.y, s.z);
|
|
1528
1557
|
}
|
|
1529
|
-
return
|
|
1558
|
+
return r.needsUpdate = !0, t.computeVertexNormals(), t;
|
|
1530
1559
|
}
|
|
1531
|
-
class
|
|
1532
|
-
constructor(e = 1,
|
|
1560
|
+
class Gt extends g {
|
|
1561
|
+
constructor(e = 1, o = 4, n = 4) {
|
|
1533
1562
|
super();
|
|
1534
|
-
const
|
|
1535
|
-
this.copy(
|
|
1563
|
+
const r = new C(e, o, n);
|
|
1564
|
+
this.copy(St(r, _.XYZ, 0.5, 1)), this.computeVertexNormals(), this.center();
|
|
1536
1565
|
}
|
|
1537
1566
|
}
|
|
1538
|
-
class
|
|
1539
|
-
constructor(e = 0.1,
|
|
1567
|
+
class Pt extends g {
|
|
1568
|
+
constructor(e = 0.1, o = 0.1, n = 0.4, r = 8) {
|
|
1540
1569
|
super();
|
|
1541
|
-
const
|
|
1542
|
-
|
|
1543
|
-
const s = new
|
|
1544
|
-
|
|
1570
|
+
const a = new b(e * 0.6, o * 0.6, n, r);
|
|
1571
|
+
a.translate(0, 0, 0);
|
|
1572
|
+
const s = new C(e, r, r), c = s.clone(), i = s.clone(), l = s.clone(), u = s.clone();
|
|
1573
|
+
c.translate(0, n / 2 + e * 0.6, -e * 0.6), i.translate(0, n / 2 + e * 0.6, e * 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(A([a, c, i, l, u], !1));
|
|
1545
1574
|
}
|
|
1546
1575
|
}
|
|
1547
|
-
class
|
|
1576
|
+
class At extends g {
|
|
1548
1577
|
constructor() {
|
|
1549
1578
|
super();
|
|
1550
|
-
const e = new
|
|
1551
|
-
|
|
1579
|
+
const e = new C(1, 16, 16), o = new b(0.2, 0.2, 2, 16, 1, !0);
|
|
1580
|
+
o.translate(0, 1.5, 0), o.rotateX(Math.PI / 2), this.copy(A([e, o], !1));
|
|
1552
1581
|
}
|
|
1553
1582
|
}
|
|
1554
|
-
class
|
|
1583
|
+
class Et extends g {
|
|
1555
1584
|
constructor({
|
|
1556
1585
|
flaskRadius: e = 1,
|
|
1557
1586
|
//
|
|
1558
|
-
neckRadius:
|
|
1587
|
+
neckRadius: o = 0.3,
|
|
1559
1588
|
height: n = 2.5,
|
|
1560
|
-
neckHeight:
|
|
1561
|
-
radialSegments:
|
|
1589
|
+
neckHeight: r = 1,
|
|
1590
|
+
radialSegments: a = 16
|
|
1562
1591
|
} = {}) {
|
|
1563
1592
|
super();
|
|
1564
1593
|
const s = [
|
|
1565
|
-
new
|
|
1594
|
+
new v(0, 0),
|
|
1566
1595
|
// Bottom of the flask
|
|
1567
|
-
new
|
|
1596
|
+
new v(e * 0.875, 0),
|
|
1568
1597
|
// Flat base with minimum width
|
|
1569
|
-
new
|
|
1598
|
+
new v(e, 0.1),
|
|
1570
1599
|
// End of the rounded base
|
|
1571
|
-
new
|
|
1600
|
+
new v(o, n),
|
|
1572
1601
|
// Start of the straight neck
|
|
1573
|
-
new
|
|
1602
|
+
new v(o, n + r),
|
|
1574
1603
|
// End of the straight neck
|
|
1575
|
-
new
|
|
1604
|
+
new v(o * 1.1, n + r + 0.3)
|
|
1576
1605
|
// Slight outward lip at the top
|
|
1577
|
-
],
|
|
1578
|
-
this.copy(A([
|
|
1606
|
+
], c = new L(s, a);
|
|
1607
|
+
this.copy(A([c], !1));
|
|
1579
1608
|
}
|
|
1580
1609
|
}
|
|
1581
|
-
class
|
|
1610
|
+
class Ct extends g {
|
|
1582
1611
|
constructor() {
|
|
1583
1612
|
super();
|
|
1584
1613
|
const e = [
|
|
1585
|
-
new
|
|
1614
|
+
new v(1, 0),
|
|
1586
1615
|
// Bottom of the bowl
|
|
1587
|
-
new
|
|
1616
|
+
new v(1.2, 0.5),
|
|
1588
1617
|
// Slight flare at the base
|
|
1589
|
-
new
|
|
1618
|
+
new v(1.4, 1.5),
|
|
1590
1619
|
// Outer wall
|
|
1591
|
-
new
|
|
1620
|
+
new v(1.3, 1.8),
|
|
1592
1621
|
// Flared edge
|
|
1593
|
-
new
|
|
1622
|
+
new v(0.8, 1.8)
|
|
1594
1623
|
// Lip of the bowl
|
|
1595
|
-
],
|
|
1596
|
-
n.rotateX(-Math.PI / 2), n.translate(0, 0, 0), this.copy(A([
|
|
1624
|
+
], o = new L(e, 12), n = new xe(1, 12);
|
|
1625
|
+
n.rotateX(-Math.PI / 2), n.translate(0, 0, 0), this.copy(A([o, n], !1));
|
|
1597
1626
|
}
|
|
1598
1627
|
}
|
|
1599
|
-
class
|
|
1628
|
+
class Tt extends g {
|
|
1600
1629
|
constructor({
|
|
1601
1630
|
radius: e = 0.3,
|
|
1602
1631
|
//
|
|
1603
|
-
height:
|
|
1632
|
+
height: o = 0.4,
|
|
1604
1633
|
count: n = 3,
|
|
1605
|
-
thickness:
|
|
1606
|
-
radialSegments:
|
|
1634
|
+
thickness: r = 0.03,
|
|
1635
|
+
radialSegments: a = 16
|
|
1607
1636
|
} = {}) {
|
|
1608
1637
|
super();
|
|
1609
|
-
const s = new
|
|
1610
|
-
s.rotateX(Math.PI / 2), s.translate(0,
|
|
1611
|
-
const
|
|
1638
|
+
const s = new re(e, r, 8, a);
|
|
1639
|
+
s.rotateX(Math.PI / 2), s.translate(0, o, 0);
|
|
1640
|
+
const c = new b(r * 0.6, r * 0.6, o, a), i = [];
|
|
1612
1641
|
for (let l = 0; l < n; l++) {
|
|
1613
|
-
const u = l / n * Math.PI * 2, m =
|
|
1614
|
-
m.translate(Math.cos(u) * e,
|
|
1642
|
+
const u = l / n * Math.PI * 2, m = c.clone();
|
|
1643
|
+
m.translate(Math.cos(u) * e, o / 2, Math.sin(u) * e), i.push(m);
|
|
1615
1644
|
}
|
|
1616
1645
|
this.copy(A([s, ...i], !1));
|
|
1617
1646
|
}
|
|
1618
1647
|
}
|
|
1619
|
-
class
|
|
1620
|
-
constructor(e = 0.2,
|
|
1648
|
+
class j extends g {
|
|
1649
|
+
constructor(e = 0.2, o = 0.2, n = 3, r = 32, a = !0) {
|
|
1621
1650
|
super();
|
|
1622
|
-
const s = new
|
|
1623
|
-
|
|
1651
|
+
const s = new b(e, o, n, r, 1, a), c = new C(o, r, r / 2, 0, Math.PI * 2, Math.PI / 2, Math.PI / 2);
|
|
1652
|
+
c.translate(0, -(n / 2), 0), this.copy(A([s, c], !1));
|
|
1624
1653
|
}
|
|
1625
1654
|
}
|
|
1626
|
-
class
|
|
1627
|
-
constructor({ radius: e = 0.5, neckRadius:
|
|
1655
|
+
class Bt extends g {
|
|
1656
|
+
constructor({ radius: e = 0.5, neckRadius: o = 0.2, height: n = 3, neckHeight: r = 1, segments: a = 16 } = {}) {
|
|
1628
1657
|
super();
|
|
1629
|
-
const s = n -
|
|
1630
|
-
|
|
1631
|
-
const i = 0.3, l = new
|
|
1658
|
+
const s = n - r, c = new b(e, e, s, a);
|
|
1659
|
+
c.translate(0, s / 2, 0);
|
|
1660
|
+
const i = 0.3, l = new b(o, e, i, a);
|
|
1632
1661
|
l.translate(0, s + i / 2, 0);
|
|
1633
|
-
const u = new
|
|
1634
|
-
u.translate(0, s + i +
|
|
1662
|
+
const u = new b(o, o, r, a);
|
|
1663
|
+
u.translate(0, s + i + r / 2, 0), this.copy(A([c, l, u], !1));
|
|
1635
1664
|
}
|
|
1636
1665
|
}
|
|
1637
|
-
class
|
|
1666
|
+
class kt extends g {
|
|
1638
1667
|
constructor({
|
|
1639
1668
|
radius: e = 3,
|
|
1640
1669
|
//
|
|
1641
|
-
height:
|
|
1670
|
+
height: o = 0.6,
|
|
1642
1671
|
widthSegments: n = 64,
|
|
1643
|
-
heightSegments:
|
|
1644
|
-
phiStart:
|
|
1672
|
+
heightSegments: r = 16,
|
|
1673
|
+
phiStart: a = 0,
|
|
1645
1674
|
phiLength: s = Math.PI * 2
|
|
1646
1675
|
} = {}) {
|
|
1647
|
-
super(), this.copy(new
|
|
1676
|
+
super(), this.copy(new C(e, n, r, a, s, 0, Math.PI / 2)), this.scale(1, o / e, 1);
|
|
1648
1677
|
}
|
|
1649
1678
|
}
|
|
1650
|
-
const
|
|
1651
|
-
x:
|
|
1652
|
-
y:
|
|
1653
|
-
z:
|
|
1654
|
-
}),
|
|
1655
|
-
const n = Math.sqrt(
|
|
1656
|
-
return { radius: n, theta:
|
|
1679
|
+
const Mo = (t, e) => t / (1 - Math.cos(e)), he = (t, e) => t / (2 * Math.sin(e)), Nt = (t, e) => t * (1 - Math.cos(e)), vo = (t, e) => 2 * t * Math.sin(e), go = (t, e, o) => ({
|
|
1680
|
+
x: t * Math.sin(o) * Math.cos(e),
|
|
1681
|
+
y: t * Math.sin(o) * Math.sin(e),
|
|
1682
|
+
z: t * Math.cos(o)
|
|
1683
|
+
}), Io = (t, e, o) => {
|
|
1684
|
+
const n = Math.sqrt(t * t + e * e + o * o), r = Math.atan2(e, t), a = Math.acos(o / n);
|
|
1685
|
+
return { radius: n, theta: r, phi: a };
|
|
1657
1686
|
};
|
|
1658
|
-
class
|
|
1687
|
+
class Ut extends g {
|
|
1659
1688
|
constructor({
|
|
1660
|
-
radius: e =
|
|
1689
|
+
radius: e = he(5, Math.PI / 10),
|
|
1661
1690
|
//
|
|
1662
|
-
widthSegments:
|
|
1691
|
+
widthSegments: o = 64,
|
|
1663
1692
|
heightSegments: n = 32,
|
|
1664
|
-
phiStart:
|
|
1665
|
-
phiLength:
|
|
1693
|
+
phiStart: r = 0,
|
|
1694
|
+
phiLength: a = Math.PI * 2,
|
|
1666
1695
|
thetaLength: s = Math.PI / 10
|
|
1667
1696
|
} = {}) {
|
|
1668
|
-
super(), this.copy(new
|
|
1669
|
-
const
|
|
1670
|
-
this.translate(0, -e +
|
|
1697
|
+
super(), this.copy(new C(e, o, n, r, a, 0, s));
|
|
1698
|
+
const c = Nt(e, s);
|
|
1699
|
+
this.translate(0, -e + c, 0);
|
|
1671
1700
|
}
|
|
1672
1701
|
}
|
|
1673
|
-
class
|
|
1702
|
+
class Ot extends g {
|
|
1674
1703
|
constructor({
|
|
1675
1704
|
trunkRadiusTop: e = 0.25,
|
|
1676
|
-
trunkRadiusBottom:
|
|
1705
|
+
trunkRadiusBottom: o = 0.4,
|
|
1677
1706
|
trunkHeight: n = 2.5,
|
|
1678
|
-
trunkSegments:
|
|
1679
|
-
leafSize:
|
|
1707
|
+
trunkSegments: r = 14,
|
|
1708
|
+
leafSize: a = 0.8,
|
|
1680
1709
|
leafCount: s = 6,
|
|
1681
|
-
leafDetail:
|
|
1710
|
+
leafDetail: c = 0,
|
|
1682
1711
|
leafSpreadRadius: i = 1.5
|
|
1683
1712
|
} = {}) {
|
|
1684
1713
|
super();
|
|
1685
|
-
const l = new
|
|
1714
|
+
const l = new b(e, o, n, r);
|
|
1686
1715
|
l.translate(0, n / 2, 0);
|
|
1687
1716
|
const u = [];
|
|
1688
1717
|
for (let m = 0; m < s; m++) {
|
|
1689
|
-
const h = new
|
|
1718
|
+
const h = new K(a, c);
|
|
1690
1719
|
h.translate(
|
|
1691
1720
|
(Math.random() - 0.5) * i,
|
|
1692
|
-
(Math.random() - 0.5) *
|
|
1721
|
+
(Math.random() - 0.5) * a + n,
|
|
1693
1722
|
(Math.random() - 0.5) * i
|
|
1694
1723
|
), u.push(h);
|
|
1695
1724
|
}
|
|
1696
1725
|
this.copy(A([l.toNonIndexed(), A(u, !1)], !0)), this.computeVertexNormals();
|
|
1697
1726
|
}
|
|
1698
1727
|
}
|
|
1699
|
-
class
|
|
1728
|
+
class bo extends P {
|
|
1700
1729
|
constructor() {
|
|
1701
1730
|
super();
|
|
1702
|
-
const e = new
|
|
1731
|
+
const e = new C(5, 32, 32), o = new J({
|
|
1703
1732
|
uniforms: {
|
|
1704
1733
|
time: { value: 0 }
|
|
1705
1734
|
},
|
|
@@ -1742,122 +1771,122 @@ class co extends P {
|
|
|
1742
1771
|
gl_FragColor = vec4(color, 1.0);
|
|
1743
1772
|
}
|
|
1744
1773
|
`
|
|
1745
|
-
}), n = new f(e,
|
|
1774
|
+
}), n = new f(e, o);
|
|
1746
1775
|
this.add(n);
|
|
1747
1776
|
}
|
|
1748
1777
|
}
|
|
1749
|
-
class
|
|
1778
|
+
class So extends f {
|
|
1750
1779
|
constructor({
|
|
1751
1780
|
width: e = 1,
|
|
1752
|
-
height:
|
|
1781
|
+
height: o = 1.5,
|
|
1753
1782
|
depth: n = 0.5,
|
|
1754
|
-
coverThickness:
|
|
1755
|
-
pageIndent:
|
|
1783
|
+
coverThickness: r = 0.05,
|
|
1784
|
+
pageIndent: a = 0.05,
|
|
1756
1785
|
coverColor: s = 9109504,
|
|
1757
|
-
pageColor:
|
|
1786
|
+
pageColor: c = 16777215
|
|
1758
1787
|
} = {}) {
|
|
1759
|
-
super(), this.geometry = new
|
|
1788
|
+
super(), this.geometry = new ie(e, o, n, r, a), this.material = [
|
|
1760
1789
|
new w({ color: s, metalness: 0.1, roughness: 0.7, flatShading: !0 }),
|
|
1761
|
-
new w({ color:
|
|
1790
|
+
new w({ color: c, flatShading: !0 })
|
|
1762
1791
|
];
|
|
1763
1792
|
}
|
|
1764
1793
|
}
|
|
1765
|
-
class
|
|
1766
|
-
constructor(e = 0.4,
|
|
1767
|
-
super(), this.geometry = new
|
|
1794
|
+
class Go extends f {
|
|
1795
|
+
constructor(e = 0.4, o = 1.2, n = 0.2) {
|
|
1796
|
+
super(), this.geometry = new xt(e, o, n), this.material = new w({ color: 7829367, roughness: 0.8 });
|
|
1768
1797
|
}
|
|
1769
1798
|
}
|
|
1770
|
-
class
|
|
1799
|
+
class Po extends P {
|
|
1771
1800
|
constructor() {
|
|
1772
1801
|
super();
|
|
1773
|
-
const e = new
|
|
1802
|
+
const e = new I(5, 1, 5), o = new w({ color: 8421504, flatShading: !0 }), n = new f(e, o);
|
|
1774
1803
|
n.position.set(0, 0.5, 0), this.add(n);
|
|
1775
|
-
const
|
|
1804
|
+
const r = new I(4, 3, 4), a = new w({ color: 6908265, flatShading: !0 }), s = new f(r, a);
|
|
1776
1805
|
s.position.set(0, 2.5, 0), this.add(s);
|
|
1777
|
-
const
|
|
1806
|
+
const c = new q(3.5, 2, 4), i = new w({ color: 5263440, flatShading: !0 }), l = new f(c, i);
|
|
1778
1807
|
l.rotation.y = Math.PI / 4, l.position.set(0, 5, 0), this.add(l);
|
|
1779
|
-
const u = new
|
|
1808
|
+
const u = new b(0.2, 0.2, 3.5, 16), m = new w({ color: 6908265, flatShading: !0 });
|
|
1780
1809
|
[
|
|
1781
1810
|
[-1.8, 2.3, -2.2],
|
|
1782
1811
|
[1.8, 2.3, -2.2],
|
|
1783
1812
|
[-1.8, 2.3, 2.2],
|
|
1784
1813
|
[1.8, 2.3, 2.2]
|
|
1785
1814
|
].forEach((G) => {
|
|
1786
|
-
const
|
|
1787
|
-
|
|
1815
|
+
const T = new f(u, m);
|
|
1816
|
+
T.position.set(...G), this.add(T);
|
|
1788
1817
|
});
|
|
1789
|
-
const d = new
|
|
1818
|
+
const d = new R();
|
|
1790
1819
|
d.moveTo(-1, 0), d.lineTo(-1, 2), d.absarc(0, 2, 1, Math.PI, 0, !0), d.lineTo(1, 0);
|
|
1791
1820
|
const p = {
|
|
1792
1821
|
depth: 0.5,
|
|
1793
1822
|
bevelEnabled: !1
|
|
1794
|
-
},
|
|
1795
|
-
|
|
1823
|
+
}, y = new X(d, p), x = new w({ color: 4210752, flatShading: !0 }), S = new f(y, x);
|
|
1824
|
+
S.position.set(0, 0.5, 1.7), this.add(S);
|
|
1796
1825
|
}
|
|
1797
1826
|
}
|
|
1798
|
-
class
|
|
1799
|
-
constructor(e = 1.75,
|
|
1800
|
-
super(), this.geometry = new
|
|
1827
|
+
class Ao extends f {
|
|
1828
|
+
constructor(e = 1.75, o = 0.75) {
|
|
1829
|
+
super(), this.geometry = new yt(e, o), this.material = new w({ color: 7829367, roughness: 0.8 });
|
|
1801
1830
|
}
|
|
1802
1831
|
}
|
|
1803
|
-
class
|
|
1804
|
-
constructor(e = 0.6,
|
|
1805
|
-
super(), this.geometry = new
|
|
1832
|
+
class Eo extends f {
|
|
1833
|
+
constructor(e = 0.6, o = 1, n = 0.2, r = 0.6) {
|
|
1834
|
+
super(), this.geometry = new Mt(e, o, n, r), this.material = new w({ color: 7829367, roughness: 0.8 });
|
|
1806
1835
|
}
|
|
1807
1836
|
}
|
|
1808
|
-
class
|
|
1809
|
-
constructor(e = 0.5,
|
|
1810
|
-
super(), this.geometry = new
|
|
1837
|
+
class Co extends f {
|
|
1838
|
+
constructor(e = 0.5, o = 0.8, n = 0.15) {
|
|
1839
|
+
super(), this.geometry = new vt(e, o, n), this.material = new w({ color: 7829367, roughness: 0.8 });
|
|
1811
1840
|
}
|
|
1812
1841
|
}
|
|
1813
|
-
class
|
|
1842
|
+
class To extends f {
|
|
1814
1843
|
constructor({ height: e = 2.25 } = {}) {
|
|
1815
|
-
super(), this.geometry = new
|
|
1844
|
+
super(), this.geometry = new gt({ height: e }), this.material = new w({ color: 9141627, flatShading: !0 });
|
|
1816
1845
|
}
|
|
1817
1846
|
}
|
|
1818
|
-
class
|
|
1847
|
+
class Bo extends f {
|
|
1819
1848
|
constructor({
|
|
1820
1849
|
barHeight: e = 2,
|
|
1821
1850
|
//
|
|
1822
|
-
barRadius:
|
|
1851
|
+
barRadius: o = 0.05,
|
|
1823
1852
|
spikeHeight: n = 0.3,
|
|
1824
|
-
spikeRadius:
|
|
1825
|
-
spikeScaleZ:
|
|
1853
|
+
spikeRadius: r = 0.075,
|
|
1854
|
+
spikeScaleZ: a = 1,
|
|
1826
1855
|
radialSegments: s = 8
|
|
1827
1856
|
} = {}) {
|
|
1828
|
-
super(), this.geometry = new
|
|
1857
|
+
super(), this.geometry = new me({
|
|
1829
1858
|
barHeight: e,
|
|
1830
|
-
barRadius:
|
|
1859
|
+
barRadius: o,
|
|
1831
1860
|
spikeHeight: n,
|
|
1832
|
-
spikeRadius:
|
|
1833
|
-
spikeScaleZ:
|
|
1861
|
+
spikeRadius: r,
|
|
1862
|
+
spikeScaleZ: a,
|
|
1834
1863
|
radialSegments: s
|
|
1835
1864
|
}), this.material = new w({ color: 3355443, metalness: 0.8, roughness: 0.4 });
|
|
1836
1865
|
}
|
|
1837
1866
|
}
|
|
1838
|
-
class
|
|
1867
|
+
class ko extends f {
|
|
1839
1868
|
constructor({
|
|
1840
1869
|
count: e = 20,
|
|
1841
1870
|
//
|
|
1842
|
-
spacing:
|
|
1871
|
+
spacing: o = 0.4,
|
|
1843
1872
|
barHeight: n = 2,
|
|
1844
|
-
barRadius:
|
|
1845
|
-
spikeHeight:
|
|
1873
|
+
barRadius: r = 0.05,
|
|
1874
|
+
spikeHeight: a = 0.3,
|
|
1846
1875
|
spikeRadius: s = 0.075,
|
|
1847
|
-
spikeScaleZ:
|
|
1876
|
+
spikeScaleZ: c = 1,
|
|
1848
1877
|
railHeight: i = 0.1,
|
|
1849
1878
|
railDepth: l = 0.05,
|
|
1850
1879
|
railOffset: u = 0,
|
|
1851
1880
|
radialSegments: m = 8
|
|
1852
1881
|
} = {}) {
|
|
1853
|
-
super(), this.geometry = new
|
|
1882
|
+
super(), this.geometry = new It({
|
|
1854
1883
|
count: e,
|
|
1855
|
-
spacing:
|
|
1884
|
+
spacing: o,
|
|
1856
1885
|
barHeight: n,
|
|
1857
|
-
barRadius:
|
|
1858
|
-
spikeHeight:
|
|
1886
|
+
barRadius: r,
|
|
1887
|
+
spikeHeight: a,
|
|
1859
1888
|
spikeRadius: s,
|
|
1860
|
-
spikeScaleZ:
|
|
1889
|
+
spikeScaleZ: c,
|
|
1861
1890
|
railHeight: i,
|
|
1862
1891
|
railDepth: l,
|
|
1863
1892
|
railOffset: u,
|
|
@@ -1865,27 +1894,27 @@ class yo extends f {
|
|
|
1865
1894
|
}), this.material = new w({ color: 3355443, metalness: 0.8, roughness: 0.4 });
|
|
1866
1895
|
}
|
|
1867
1896
|
}
|
|
1868
|
-
class
|
|
1897
|
+
class No extends f {
|
|
1869
1898
|
constructor({
|
|
1870
1899
|
width: e = 5,
|
|
1871
1900
|
//
|
|
1872
|
-
height:
|
|
1901
|
+
height: o = 8,
|
|
1873
1902
|
depth: n = 1,
|
|
1874
|
-
shelves:
|
|
1875
|
-
frameThickness:
|
|
1903
|
+
shelves: r = 4,
|
|
1904
|
+
frameThickness: a = 0.1,
|
|
1876
1905
|
open: s = !1
|
|
1877
1906
|
} = {}) {
|
|
1878
|
-
super(), this.geometry = new
|
|
1907
|
+
super(), this.geometry = new bt({ width: e, height: o, depth: n, shelves: r, frameThickness: a, open: s }), this.material = new w({ color: 9127187 });
|
|
1879
1908
|
}
|
|
1880
1909
|
}
|
|
1881
|
-
class
|
|
1910
|
+
class Uo extends P {
|
|
1882
1911
|
constructor() {
|
|
1883
1912
|
super();
|
|
1884
|
-
const e = new
|
|
1913
|
+
const e = new I(5, 0.3, 3), o = new w({ color: 9132587 }), n = new f(e, o);
|
|
1885
1914
|
n.position.set(0, 3.15, 0);
|
|
1886
|
-
const
|
|
1887
|
-
|
|
1888
|
-
const
|
|
1915
|
+
const r = [];
|
|
1916
|
+
r.push(new v(0.2, 0)), r.push(new v(0.25, 0.5)), r.push(new v(0.15, 1.5)), r.push(new v(0.3, 3));
|
|
1917
|
+
const a = new L(r, 32), s = new w({ color: 4929057 });
|
|
1889
1918
|
[
|
|
1890
1919
|
[2.2, 0, 1.2],
|
|
1891
1920
|
// Adjust Y to 0 so legs start at ground level
|
|
@@ -1893,20 +1922,20 @@ class Mo extends P {
|
|
|
1893
1922
|
[2.2, 0, -1.2],
|
|
1894
1923
|
[-2.2, 0, -1.2]
|
|
1895
1924
|
].forEach((i) => {
|
|
1896
|
-
const l = new f(
|
|
1925
|
+
const l = new f(a, s);
|
|
1897
1926
|
l.position.set(...i), this.add(l);
|
|
1898
1927
|
}), this.add(n);
|
|
1899
1928
|
}
|
|
1900
1929
|
}
|
|
1901
|
-
class
|
|
1902
|
-
constructor(e = 1,
|
|
1903
|
-
super(), this.height = e, this.radius =
|
|
1930
|
+
class Oo extends P {
|
|
1931
|
+
constructor(e = 1, o = 0.2) {
|
|
1932
|
+
super(), this.height = e, this.radius = o, this.createCandle(), this.animateFlicker();
|
|
1904
1933
|
}
|
|
1905
1934
|
createCandle() {
|
|
1906
|
-
const e = new
|
|
1907
|
-
this.candle = new f(e,
|
|
1908
|
-
const n = new
|
|
1909
|
-
this.flame = new f(n,
|
|
1935
|
+
const e = new b(this.radius, this.radius, this.height, 32), o = new w({ color: 16777215 });
|
|
1936
|
+
this.candle = new f(e, o), this.candle.position.set(0, this.height / 2, 0), this.add(this.candle);
|
|
1937
|
+
const n = new C(0.05, 16, 16), r = new ye({ color: 16753920 });
|
|
1938
|
+
this.flame = new f(n, r), this.flame.position.set(0, this.height + 0.05, 0), this.add(this.flame), this.candleLight = new ae(16753920, 1, 5), this.candleLight.position.set(0, this.height + 0.05, 0), this.candleLight.castShadow = !0, this.add(this.candleLight);
|
|
1910
1939
|
}
|
|
1911
1940
|
animateFlicker() {
|
|
1912
1941
|
const e = () => {
|
|
@@ -1915,52 +1944,52 @@ class vo extends P {
|
|
|
1915
1944
|
e();
|
|
1916
1945
|
}
|
|
1917
1946
|
}
|
|
1918
|
-
class
|
|
1919
|
-
constructor(e = 1.3,
|
|
1947
|
+
class _o extends P {
|
|
1948
|
+
constructor(e = 1.3, o = 0.5) {
|
|
1920
1949
|
super();
|
|
1921
|
-
const n = new
|
|
1922
|
-
|
|
1923
|
-
const s = new
|
|
1950
|
+
const n = new b(o, o, 0.2, 16), r = new w({ color: 9127187, flatShading: !0 }), a = new f(n, r);
|
|
1951
|
+
a.position.set(0, 0, 0), this.add(a);
|
|
1952
|
+
const s = new b(o * 0.9, o * 0.9, e), c = new w({ color: 16766720, flatShading: !0, transparent: !0, opacity: 0.6 }), i = new f(s, c);
|
|
1924
1953
|
i.position.set(0, e / 2 + 0.1, 0), this.add(i);
|
|
1925
|
-
const l = new
|
|
1954
|
+
const l = new q(o * 1.1, 0.5, 8), u = new w({ color: 9127187, flatShading: !0 }), m = new f(l, u);
|
|
1926
1955
|
m.position.set(0, e + 0.35, 0), this.add(m);
|
|
1927
|
-
const h = new
|
|
1956
|
+
const h = new re(o * 0.8, 0.05, 8, 16), d = new w({ color: 9127187, flatShading: !0 }), p = new f(h, d);
|
|
1928
1957
|
p.position.set(0, e + 0.85, 0), this.add(p);
|
|
1929
|
-
const
|
|
1930
|
-
|
|
1958
|
+
const y = new ae(16755200, 1.5, 15);
|
|
1959
|
+
y.position.set(0, e / 2 + 0.1, 0), y.castShadow = !0, this.add(y);
|
|
1931
1960
|
}
|
|
1932
1961
|
}
|
|
1933
|
-
class
|
|
1962
|
+
class Fo extends P {
|
|
1934
1963
|
constructor() {
|
|
1935
1964
|
super();
|
|
1936
|
-
const e = new
|
|
1937
|
-
for (let
|
|
1938
|
-
const
|
|
1939
|
-
|
|
1965
|
+
const e = new K(1, 0), o = new w({ color: 8421504, flatShading: !0 }), n = new w({ color: 4950843, flatShading: !0, opacity: 0.8, transparent: !0 });
|
|
1966
|
+
for (let r = 0; r < 5; r++) {
|
|
1967
|
+
const a = new f(e, o);
|
|
1968
|
+
a.scale.set(0.8 + Math.random() * 0.4, 0.8 + Math.random() * 0.4, 0.8 + Math.random() * 0.4), a.rotation.set(Math.random() * Math.PI, Math.random() * Math.PI, Math.random() * Math.PI), a.position.set((Math.random() - 0.5) * 4, 0, (Math.random() - 0.5) * 4), this.add(a);
|
|
1940
1969
|
const s = new f(e, n);
|
|
1941
|
-
s.scale.set(
|
|
1970
|
+
s.scale.set(a.scale.x * 0.9, a.scale.y * 0.5, a.scale.z * 0.9), s.rotation.copy(a.rotation), s.position.copy(a.position), s.position.y += 0.3, this.add(s);
|
|
1942
1971
|
}
|
|
1943
1972
|
}
|
|
1944
1973
|
}
|
|
1945
|
-
class
|
|
1946
|
-
constructor(e = 1,
|
|
1947
|
-
super(), this.geometry = new
|
|
1974
|
+
class zo extends f {
|
|
1975
|
+
constructor(e = 1, o = 4, n = 4) {
|
|
1976
|
+
super(), this.geometry = new Gt(e, o, n), this.material = new w({ color: 8421504, flatShading: !0 });
|
|
1948
1977
|
}
|
|
1949
1978
|
}
|
|
1950
|
-
class
|
|
1979
|
+
class qo extends P {
|
|
1951
1980
|
constructor() {
|
|
1952
1981
|
super();
|
|
1953
|
-
const e = new
|
|
1982
|
+
const e = new K(1, 0), o = new w({ color: 8421504, flatShading: !0 });
|
|
1954
1983
|
for (let n = 0; n < 5; n++) {
|
|
1955
|
-
const
|
|
1956
|
-
|
|
1984
|
+
const r = new f(e, o);
|
|
1985
|
+
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);
|
|
1957
1986
|
}
|
|
1958
1987
|
}
|
|
1959
1988
|
}
|
|
1960
|
-
class
|
|
1989
|
+
class Lo extends P {
|
|
1961
1990
|
constructor() {
|
|
1962
1991
|
super();
|
|
1963
|
-
const e = new
|
|
1992
|
+
const e = new At(), o = new Y({
|
|
1964
1993
|
color: 8965375,
|
|
1965
1994
|
transparent: !0,
|
|
1966
1995
|
opacity: 0.4,
|
|
@@ -1968,32 +1997,32 @@ class Go extends P {
|
|
|
1968
1997
|
metalness: 0.1,
|
|
1969
1998
|
reflectivity: 0.8,
|
|
1970
1999
|
transmission: 0.9,
|
|
1971
|
-
side:
|
|
1972
|
-
}), n = new f(e,
|
|
2000
|
+
side: z
|
|
2001
|
+
}), n = new f(e, o);
|
|
1973
2002
|
n.rotation.x = -Math.PI / 2, this.add(n);
|
|
1974
2003
|
}
|
|
1975
2004
|
}
|
|
1976
|
-
class
|
|
2005
|
+
class Ro extends P {
|
|
1977
2006
|
constructor() {
|
|
1978
2007
|
super();
|
|
1979
2008
|
const e = [
|
|
1980
|
-
new
|
|
2009
|
+
new v(0, 0),
|
|
1981
2010
|
// Bottom
|
|
1982
|
-
new
|
|
2011
|
+
new v(0.8, 0),
|
|
1983
2012
|
// Base
|
|
1984
|
-
new
|
|
2013
|
+
new v(1, 1.5),
|
|
1985
2014
|
// Rounded body
|
|
1986
|
-
new
|
|
2015
|
+
new v(0.5, 2.2),
|
|
1987
2016
|
// Neck
|
|
1988
|
-
new
|
|
2017
|
+
new v(0.6, 2.5)
|
|
1989
2018
|
// Mouth
|
|
1990
|
-
],
|
|
2019
|
+
], o = new L(e, 10), n = new b(0.3, 0.4, 0.2, 8), r = new w({
|
|
1991
2020
|
color: 8965375,
|
|
1992
2021
|
transparent: !0,
|
|
1993
2022
|
opacity: 0.5,
|
|
1994
2023
|
roughness: 0.1,
|
|
1995
2024
|
metalness: 0.3
|
|
1996
|
-
}),
|
|
2025
|
+
}), a = new w({
|
|
1997
2026
|
color: 16724838,
|
|
1998
2027
|
// Vibrant potion color
|
|
1999
2028
|
transparent: !0,
|
|
@@ -2001,84 +2030,84 @@ class Po extends P {
|
|
|
2001
2030
|
}), s = new w({
|
|
2002
2031
|
color: 9127187,
|
|
2003
2032
|
roughness: 1
|
|
2004
|
-
}),
|
|
2033
|
+
}), c = new f(o, r), i = new f(o, a), l = new f(n, s);
|
|
2005
2034
|
i.scale.set(0.8, 0.8, 0.8), i.position.y = 0.1, l.position.y = 2.5;
|
|
2006
2035
|
const u = new P();
|
|
2007
|
-
u.add(
|
|
2036
|
+
u.add(c, i, l), this.add(u);
|
|
2008
2037
|
}
|
|
2009
2038
|
}
|
|
2010
|
-
class
|
|
2039
|
+
class Xo extends P {
|
|
2011
2040
|
constructor() {
|
|
2012
2041
|
super();
|
|
2013
|
-
const e = new
|
|
2042
|
+
const e = new b(0.3, 0.4, 0.1, 16), o = new w({
|
|
2014
2043
|
color: 3355443,
|
|
2015
2044
|
roughness: 0.6,
|
|
2016
2045
|
metalness: 0.3
|
|
2017
|
-
}), n = new f(e,
|
|
2046
|
+
}), n = new f(e, o);
|
|
2018
2047
|
n.position.y = 0.05;
|
|
2019
|
-
const
|
|
2048
|
+
const r = new b(0.1, 0.1, 0.7, 16), a = new w({
|
|
2020
2049
|
color: 5592405,
|
|
2021
2050
|
roughness: 0.5,
|
|
2022
2051
|
metalness: 0.4
|
|
2023
|
-
}), s = new f(
|
|
2052
|
+
}), s = new f(r, a);
|
|
2024
2053
|
s.position.y = 0.4;
|
|
2025
|
-
const
|
|
2054
|
+
const c = new q(0.075, 0.2, 16), i = new w({
|
|
2026
2055
|
color: 16733440,
|
|
2027
2056
|
emissive: 16733440,
|
|
2028
2057
|
emissiveIntensity: 0.6,
|
|
2029
2058
|
transparent: !0,
|
|
2030
2059
|
opacity: 0.8
|
|
2031
|
-
}), l = new f(
|
|
2060
|
+
}), l = new f(c, i);
|
|
2032
2061
|
l.position.y = 0.8, this.add(n, s, l);
|
|
2033
2062
|
}
|
|
2034
2063
|
}
|
|
2035
|
-
class
|
|
2064
|
+
class Vo extends P {
|
|
2036
2065
|
constructor() {
|
|
2037
2066
|
super();
|
|
2038
|
-
const e = new
|
|
2067
|
+
const e = new I(3, 4, 0.1), o = new w({
|
|
2039
2068
|
color: 3026478,
|
|
2040
2069
|
roughness: 0.8,
|
|
2041
2070
|
metalness: 0.6
|
|
2042
|
-
}), n = new
|
|
2071
|
+
}), n = new I(0.2, 0.5, 0.2), r = new w({
|
|
2043
2072
|
color: 11184810,
|
|
2044
2073
|
roughness: 0.5,
|
|
2045
2074
|
metalness: 0.7
|
|
2046
|
-
}),
|
|
2075
|
+
}), a = new b(0.3, 0.3, 0.1, 16), s = new w({
|
|
2047
2076
|
color: 5592405,
|
|
2048
2077
|
roughness: 0.7,
|
|
2049
2078
|
metalness: 0.5
|
|
2050
|
-
}),
|
|
2051
|
-
for (let
|
|
2052
|
-
const
|
|
2053
|
-
|
|
2079
|
+
}), c = new f(e, o);
|
|
2080
|
+
for (let x = -1; x <= 1; x++) {
|
|
2081
|
+
const S = new f(n, r);
|
|
2082
|
+
S.position.set(x, 1.5, 0.1), c.add(S);
|
|
2054
2083
|
}
|
|
2055
|
-
const i = new f(
|
|
2056
|
-
i.rotation.x = Math.PI / 2, i.position.set(0, 0.5, 0.15),
|
|
2057
|
-
const l = new
|
|
2084
|
+
const i = new f(a, s);
|
|
2085
|
+
i.rotation.x = Math.PI / 2, i.position.set(0, 0.5, 0.15), c.add(i);
|
|
2086
|
+
const l = new C(0.15, 8, 8), u = new w({
|
|
2058
2087
|
color: 16711680,
|
|
2059
2088
|
emissive: 16711680,
|
|
2060
2089
|
emissiveIntensity: 0.5
|
|
2061
2090
|
}), m = new f(l, u);
|
|
2062
|
-
m.position.set(0, -1, 0.1),
|
|
2091
|
+
m.position.set(0, -1, 0.1), c.add(m), this.add(c);
|
|
2063
2092
|
let h = 0.015, d = 0.8, p = 0.2;
|
|
2064
|
-
function
|
|
2065
|
-
requestAnimationFrame(
|
|
2066
|
-
const
|
|
2067
|
-
m.material.emissiveIntensity =
|
|
2093
|
+
function y() {
|
|
2094
|
+
requestAnimationFrame(y);
|
|
2095
|
+
const x = p + Math.abs(Math.sin(Date.now() * h)) * (d - p);
|
|
2096
|
+
m.material.emissiveIntensity = x;
|
|
2068
2097
|
}
|
|
2069
|
-
|
|
2098
|
+
y();
|
|
2070
2099
|
}
|
|
2071
2100
|
}
|
|
2072
|
-
class
|
|
2101
|
+
class Do extends f {
|
|
2073
2102
|
constructor({
|
|
2074
2103
|
flaskRadius: e = 1,
|
|
2075
2104
|
//
|
|
2076
|
-
neckRadius:
|
|
2105
|
+
neckRadius: o = 0.3,
|
|
2077
2106
|
height: n = 2.5,
|
|
2078
|
-
neckHeight:
|
|
2079
|
-
radialSegments:
|
|
2107
|
+
neckHeight: r = 1,
|
|
2108
|
+
radialSegments: a = 16
|
|
2080
2109
|
} = {}) {
|
|
2081
|
-
super(), this.geometry = new
|
|
2110
|
+
super(), this.geometry = new Et({ flaskRadius: e, neckRadius: o, height: n, neckHeight: r, radialSegments: a }), this.material = new Y({
|
|
2082
2111
|
color: 8965375,
|
|
2083
2112
|
transparent: !0,
|
|
2084
2113
|
opacity: 0.4,
|
|
@@ -2086,177 +2115,177 @@ class To extends f {
|
|
|
2086
2115
|
metalness: 0.1,
|
|
2087
2116
|
reflectivity: 0.8,
|
|
2088
2117
|
transmission: 0.9,
|
|
2089
|
-
side:
|
|
2118
|
+
side: z,
|
|
2090
2119
|
wireframe: !1
|
|
2091
2120
|
});
|
|
2092
2121
|
}
|
|
2093
2122
|
}
|
|
2094
|
-
class
|
|
2123
|
+
class Zo extends P {
|
|
2095
2124
|
constructor() {
|
|
2096
2125
|
super();
|
|
2097
2126
|
const e = [
|
|
2098
|
-
new
|
|
2127
|
+
new v(0, 0),
|
|
2099
2128
|
// Bottom of the flask
|
|
2100
|
-
new
|
|
2129
|
+
new v(1.2, 0),
|
|
2101
2130
|
// Base
|
|
2102
|
-
new
|
|
2131
|
+
new v(1.5, 1.5),
|
|
2103
2132
|
// Mid-body
|
|
2104
|
-
new
|
|
2133
|
+
new v(1, 3),
|
|
2105
2134
|
// Narrow neck
|
|
2106
|
-
new
|
|
2135
|
+
new v(0.6, 3.5)
|
|
2107
2136
|
// Mouth of the flask
|
|
2108
|
-
],
|
|
2137
|
+
], o = new L(e, 12), n = new b(0.6, 0.7, 0.3, 8), r = new w({
|
|
2109
2138
|
color: 8965290,
|
|
2110
2139
|
transparent: !0,
|
|
2111
2140
|
opacity: 0.4,
|
|
2112
2141
|
roughness: 0.1,
|
|
2113
2142
|
metalness: 0.5
|
|
2114
|
-
}),
|
|
2143
|
+
}), a = new w({
|
|
2115
2144
|
color: 9127187,
|
|
2116
2145
|
roughness: 1
|
|
2117
|
-
}), s = new f(
|
|
2118
|
-
|
|
2146
|
+
}), s = new f(o, r), c = new f(n, a);
|
|
2147
|
+
c.position.y = 3.5, this.add(s, c);
|
|
2119
2148
|
}
|
|
2120
2149
|
}
|
|
2121
|
-
class
|
|
2150
|
+
class Yo extends P {
|
|
2122
2151
|
constructor() {
|
|
2123
2152
|
super();
|
|
2124
|
-
const e = new
|
|
2153
|
+
const e = new I(2, 3, 0.1), o = new w({
|
|
2125
2154
|
color: 3355443,
|
|
2126
2155
|
roughness: 0.8,
|
|
2127
2156
|
metalness: 0.5
|
|
2128
|
-
}), n = new f(e,
|
|
2157
|
+
}), n = new f(e, o), r = new b(0.1, 0.1, 0.2, 8), a = new b(0.05, 0.05, 1, 8), s = new w({
|
|
2129
2158
|
color: 11184810,
|
|
2130
2159
|
roughness: 0.5,
|
|
2131
2160
|
metalness: 0.7
|
|
2132
2161
|
});
|
|
2133
|
-
for (let
|
|
2134
|
-
const i = new f(
|
|
2135
|
-
i.position.set(
|
|
2136
|
-
const l = new f(
|
|
2162
|
+
for (let c = -0.5; c <= 0.5; c += 0.5) {
|
|
2163
|
+
const i = new f(r, s);
|
|
2164
|
+
i.position.set(c, 1, 0.1);
|
|
2165
|
+
const l = new f(a, s);
|
|
2137
2166
|
l.position.y = 0.5, i.add(l), this.add(i);
|
|
2138
2167
|
}
|
|
2139
2168
|
this.add(n);
|
|
2140
2169
|
}
|
|
2141
2170
|
}
|
|
2142
|
-
class
|
|
2171
|
+
class Qo extends P {
|
|
2143
2172
|
constructor() {
|
|
2144
2173
|
super();
|
|
2145
|
-
const e = new
|
|
2174
|
+
const e = new I(1, 0.2, 0.5), o = new w({
|
|
2146
2175
|
color: 4473924,
|
|
2147
2176
|
roughness: 0.6,
|
|
2148
2177
|
metalness: 0.3
|
|
2149
|
-
}), n = new f(e,
|
|
2178
|
+
}), n = new f(e, o);
|
|
2150
2179
|
n.position.y = 0.1;
|
|
2151
|
-
const
|
|
2152
|
-
|
|
2153
|
-
const s = new
|
|
2180
|
+
const r = new I(0.2, 1, 0.2), a = new f(r, o);
|
|
2181
|
+
a.position.set(0, 0.6, -0.2);
|
|
2182
|
+
const s = new b(0.1, 0.1, 0.4, 8), c = new w({
|
|
2154
2183
|
color: 3355443,
|
|
2155
2184
|
roughness: 0.5,
|
|
2156
2185
|
metalness: 0.6
|
|
2157
|
-
}), i = new f(s,
|
|
2186
|
+
}), i = new f(s, c);
|
|
2158
2187
|
i.position.set(0, 1.1, -0.35), i.rotation.x = -Math.PI / 4;
|
|
2159
|
-
const l = new
|
|
2188
|
+
const l = new I(0.6, 0.1, 0.6), u = new w({
|
|
2160
2189
|
color: 5592405,
|
|
2161
2190
|
roughness: 0.8,
|
|
2162
2191
|
metalness: 0.2
|
|
2163
2192
|
}), m = new f(l, u);
|
|
2164
|
-
m.position.set(0, 0.6, 0), this.add(n,
|
|
2193
|
+
m.position.set(0, 0.6, 0), this.add(n, a, i, m);
|
|
2165
2194
|
}
|
|
2166
2195
|
}
|
|
2167
|
-
class
|
|
2196
|
+
class Ho extends P {
|
|
2168
2197
|
constructor() {
|
|
2169
2198
|
super();
|
|
2170
|
-
const e = new
|
|
2171
|
-
|
|
2199
|
+
const e = new Ct(), o = new b(0.2, 0.3, 1.5, 8);
|
|
2200
|
+
o.translate(0, 0.75, 0);
|
|
2172
2201
|
const n = new w({
|
|
2173
2202
|
color: 6045747,
|
|
2174
2203
|
// Dark earthy tone
|
|
2175
2204
|
roughness: 1,
|
|
2176
2205
|
metalness: 0,
|
|
2177
|
-
side:
|
|
2206
|
+
side: z
|
|
2178
2207
|
// Render inside and outside
|
|
2179
|
-
}),
|
|
2208
|
+
}), r = new w({
|
|
2180
2209
|
color: 9132587,
|
|
2181
2210
|
// Slightly lighter earthy color
|
|
2182
2211
|
roughness: 0.8,
|
|
2183
2212
|
metalness: 0.1
|
|
2184
|
-
}),
|
|
2185
|
-
s.position.set(0.3, 1.3, 0), s.rotation.z = Math.PI / 4, this.add(
|
|
2213
|
+
}), a = new f(e, n), s = new f(o, r);
|
|
2214
|
+
s.position.set(0.3, 1.3, 0), s.rotation.z = Math.PI / 4, this.add(a, s);
|
|
2186
2215
|
}
|
|
2187
2216
|
}
|
|
2188
|
-
class
|
|
2217
|
+
class jo extends P {
|
|
2189
2218
|
constructor() {
|
|
2190
2219
|
super();
|
|
2191
|
-
const e = 100,
|
|
2220
|
+
const e = 100, o = 0.05, n = new Me(
|
|
2192
2221
|
Array.from({ length: e }, (l, u) => {
|
|
2193
2222
|
const m = u * 0.2;
|
|
2194
2223
|
return new M(
|
|
2195
2224
|
Math.cos(m) * 0.4,
|
|
2196
|
-
u *
|
|
2225
|
+
u * o,
|
|
2197
2226
|
// Gradual height increase
|
|
2198
2227
|
Math.sin(m) * 0.4
|
|
2199
2228
|
);
|
|
2200
2229
|
})
|
|
2201
|
-
),
|
|
2230
|
+
), r = new ve(n, 200, 0.1, 8, !1), a = new w({
|
|
2202
2231
|
color: 8965375,
|
|
2203
2232
|
transparent: !0,
|
|
2204
2233
|
opacity: 0.3,
|
|
2205
2234
|
roughness: 0.1,
|
|
2206
2235
|
metalness: 0.2,
|
|
2207
2236
|
emissive: 8965375
|
|
2208
|
-
}), s = new f(
|
|
2237
|
+
}), s = new f(r, a);
|
|
2209
2238
|
this.add(s);
|
|
2210
|
-
function
|
|
2211
|
-
|
|
2239
|
+
function c() {
|
|
2240
|
+
a.emissiveIntensity = 0.2 + Math.sin(Date.now() * 5e-3) * 0.1;
|
|
2212
2241
|
}
|
|
2213
2242
|
function i() {
|
|
2214
|
-
requestAnimationFrame(i),
|
|
2243
|
+
requestAnimationFrame(i), c();
|
|
2215
2244
|
}
|
|
2216
2245
|
i();
|
|
2217
2246
|
}
|
|
2218
2247
|
}
|
|
2219
|
-
class
|
|
2248
|
+
class Ko extends f {
|
|
2220
2249
|
constructor({
|
|
2221
2250
|
radius: e = 0.3,
|
|
2222
2251
|
//
|
|
2223
|
-
height:
|
|
2252
|
+
height: o = 0.4,
|
|
2224
2253
|
count: n = 3,
|
|
2225
|
-
thickness:
|
|
2226
|
-
radialSegments:
|
|
2254
|
+
thickness: r = 0.03,
|
|
2255
|
+
radialSegments: a = 16
|
|
2227
2256
|
} = {}) {
|
|
2228
|
-
super(), this.geometry = new
|
|
2257
|
+
super(), this.geometry = new Tt({ radius: e, height: o, count: n, thickness: r, radialSegments: a }), this.material = new w({
|
|
2229
2258
|
color: 8947848,
|
|
2230
2259
|
roughness: 0.7,
|
|
2231
2260
|
metalness: 0.3
|
|
2232
2261
|
});
|
|
2233
2262
|
}
|
|
2234
2263
|
}
|
|
2235
|
-
class
|
|
2264
|
+
class Jo extends P {
|
|
2236
2265
|
constructor() {
|
|
2237
2266
|
super();
|
|
2238
|
-
const e = new
|
|
2267
|
+
const e = new b(0.5, 0.6, 0.3, 16), o = new w({
|
|
2239
2268
|
color: 3355443,
|
|
2240
2269
|
roughness: 0.6,
|
|
2241
2270
|
metalness: 0.5
|
|
2242
|
-
}), n = new f(e,
|
|
2271
|
+
}), n = new f(e, o);
|
|
2243
2272
|
n.position.y = 0.15;
|
|
2244
|
-
const
|
|
2273
|
+
const r = new b(0.15, 0.15, 2, 12, 1, !0), a = new w({
|
|
2245
2274
|
color: 16737792,
|
|
2246
2275
|
roughness: 0.5,
|
|
2247
2276
|
metalness: 0.8,
|
|
2248
|
-
side:
|
|
2249
|
-
}), s = new f(
|
|
2277
|
+
side: z
|
|
2278
|
+
}), s = new f(r, a);
|
|
2250
2279
|
s.position.y = 1.3;
|
|
2251
|
-
const
|
|
2280
|
+
const c = new C(0.3, 16, 16), i = new f(c, a);
|
|
2252
2281
|
i.position.y = 2.4, this.add(n, s, i);
|
|
2253
2282
|
const l = [];
|
|
2254
2283
|
for (let h = 0; h < 5; h++) {
|
|
2255
|
-
const d = new
|
|
2284
|
+
const d = new ge({ color: 10079487 }), p = [
|
|
2256
2285
|
new M(0, 2.4, 0),
|
|
2257
2286
|
new M((Math.random() - 0.5) * 1.5, Math.random() * 2.4, (Math.random() - 0.5) * 1.5)
|
|
2258
|
-
],
|
|
2259
|
-
this.add(
|
|
2287
|
+
], y = new g().setFromPoints(p), x = new Ie(y, d);
|
|
2288
|
+
this.add(x), l.push(x);
|
|
2260
2289
|
}
|
|
2261
2290
|
function u() {
|
|
2262
2291
|
l.forEach((h) => {
|
|
@@ -2273,10 +2302,10 @@ class Fo extends P {
|
|
|
2273
2302
|
m();
|
|
2274
2303
|
}
|
|
2275
2304
|
}
|
|
2276
|
-
class
|
|
2277
|
-
constructor(e = 0.2,
|
|
2305
|
+
class $o extends P {
|
|
2306
|
+
constructor(e = 0.2, o = 0.2, n = 3, r = 32) {
|
|
2278
2307
|
super();
|
|
2279
|
-
const
|
|
2308
|
+
const a = new j(e, o, n, r), s = new Y({
|
|
2280
2309
|
color: 8965375,
|
|
2281
2310
|
transparent: !0,
|
|
2282
2311
|
opacity: 0.4,
|
|
@@ -2285,48 +2314,48 @@ class Oo extends P {
|
|
|
2285
2314
|
reflectivity: 0.8,
|
|
2286
2315
|
transmission: 0.9,
|
|
2287
2316
|
// For glass effect
|
|
2288
|
-
side:
|
|
2289
|
-
}),
|
|
2290
|
-
this.add(
|
|
2317
|
+
side: z
|
|
2318
|
+
}), c = new f(a, s);
|
|
2319
|
+
this.add(c);
|
|
2291
2320
|
}
|
|
2292
2321
|
}
|
|
2293
|
-
class
|
|
2294
|
-
constructor(e = 3,
|
|
2322
|
+
class Wo extends P {
|
|
2323
|
+
constructor(e = 3, o = [65450, 16711850, 11141375]) {
|
|
2295
2324
|
super();
|
|
2296
|
-
const n = new
|
|
2325
|
+
const n = new I(3, 0.2, 1), r = new w({
|
|
2297
2326
|
color: 9127187,
|
|
2298
2327
|
// Wooden color or change to metallic tone
|
|
2299
2328
|
roughness: 0.7,
|
|
2300
2329
|
metalness: 0.3
|
|
2301
|
-
}),
|
|
2302
|
-
|
|
2303
|
-
const s = new
|
|
2330
|
+
}), a = new f(n, r);
|
|
2331
|
+
a.position.y = 0.5;
|
|
2332
|
+
const s = new j(0.1, 0.1, 1, 16), c = new w({
|
|
2304
2333
|
color: 11184810,
|
|
2305
2334
|
transparent: !0,
|
|
2306
2335
|
opacity: 0.4,
|
|
2307
2336
|
roughness: 0.1,
|
|
2308
2337
|
metalness: 0.5,
|
|
2309
|
-
side:
|
|
2338
|
+
side: z
|
|
2310
2339
|
});
|
|
2311
2340
|
for (let i = 0; i < e; i++) {
|
|
2312
|
-
const l = new f(s,
|
|
2341
|
+
const l = new f(s, c), u = (i - (e - 1) / 2) * 0.8;
|
|
2313
2342
|
l.position.set(u, 1, 0);
|
|
2314
|
-
const m = new
|
|
2343
|
+
const m = new j(0.099, 0.099, 0.5, 16, !1), h = o[i % o.length], d = new w({
|
|
2315
2344
|
color: h,
|
|
2316
2345
|
emissive: h,
|
|
2317
2346
|
emissiveIntensity: 0.5,
|
|
2318
2347
|
transparent: !0,
|
|
2319
2348
|
opacity: 0.6
|
|
2320
2349
|
}), p = new f(m, d);
|
|
2321
|
-
p.position.set(0, -0.25, 0), l.add(p),
|
|
2350
|
+
p.position.set(0, -0.25, 0), l.add(p), a.add(l);
|
|
2322
2351
|
}
|
|
2323
|
-
this.add(
|
|
2352
|
+
this.add(a);
|
|
2324
2353
|
}
|
|
2325
2354
|
}
|
|
2326
|
-
class
|
|
2355
|
+
class en extends f {
|
|
2327
2356
|
constructor() {
|
|
2328
2357
|
super();
|
|
2329
|
-
const e = new
|
|
2358
|
+
const e = new Bt(), o = new Y({
|
|
2330
2359
|
color: 5597999,
|
|
2331
2360
|
roughness: 0.1,
|
|
2332
2361
|
transmission: 0.9,
|
|
@@ -2336,30 +2365,30 @@ class qo extends f {
|
|
|
2336
2365
|
clearcoat: 1,
|
|
2337
2366
|
clearcoatRoughness: 0.1
|
|
2338
2367
|
});
|
|
2339
|
-
this.geometry = e, this.material =
|
|
2368
|
+
this.geometry = e, this.material = o;
|
|
2340
2369
|
}
|
|
2341
2370
|
}
|
|
2342
|
-
class
|
|
2343
|
-
constructor(e = 5,
|
|
2371
|
+
class _t extends R {
|
|
2372
|
+
constructor(e = 5, o = 0.5, n = 1) {
|
|
2344
2373
|
super();
|
|
2345
|
-
const
|
|
2374
|
+
const r = Math.PI * 2 / e, a = r / 2, s = r / 4;
|
|
2346
2375
|
this.moveTo(Math.cos(0) * n, -Math.sin(0) * n);
|
|
2347
|
-
for (let
|
|
2348
|
-
let i = Math.cos(
|
|
2349
|
-
this.quadraticCurveTo(i, l, u, m), i = Math.cos(
|
|
2376
|
+
for (let c = 1; c <= e; ++c) {
|
|
2377
|
+
let i = Math.cos(r * c - s * 3) * (o / Math.cos(s)), l = -Math.sin(r * c - s * 3) * (o / Math.cos(s)), u = Math.cos(r * c - a) * o, m = -Math.sin(r * c - a) * o;
|
|
2378
|
+
this.quadraticCurveTo(i, l, u, m), i = Math.cos(r * c - s) * (o / Math.cos(s)), l = -Math.sin(r * c - s) * (o / Math.cos(s)), u = Math.cos(r * c) * n, m = -Math.sin(r * c) * n, this.quadraticCurveTo(i, l, u, m);
|
|
2350
2379
|
}
|
|
2351
2380
|
this.closePath();
|
|
2352
2381
|
}
|
|
2353
2382
|
}
|
|
2354
|
-
class
|
|
2355
|
-
constructor(e = 5,
|
|
2383
|
+
class tn extends f {
|
|
2384
|
+
constructor(e = 5, o = 0.5, n = 1, r = 0.25) {
|
|
2356
2385
|
super();
|
|
2357
|
-
const
|
|
2358
|
-
depth:
|
|
2359
|
-
bevelEnabled:
|
|
2386
|
+
const a = new _t(e, o, n), s = new X(a, {
|
|
2387
|
+
depth: r,
|
|
2388
|
+
bevelEnabled: r > 0,
|
|
2360
2389
|
bevelThickness: 0,
|
|
2361
2390
|
bevelSize: 0
|
|
2362
|
-
}),
|
|
2391
|
+
}), c = new w({
|
|
2363
2392
|
color: 16776960,
|
|
2364
2393
|
emissive: 16766720,
|
|
2365
2394
|
emissiveIntensity: 0.25,
|
|
@@ -2367,29 +2396,29 @@ class Lo extends f {
|
|
|
2367
2396
|
roughness: 0.3,
|
|
2368
2397
|
flatShading: !0
|
|
2369
2398
|
});
|
|
2370
|
-
s.center(), this.geometry = s, this.material =
|
|
2399
|
+
s.center(), this.geometry = s, this.material = c;
|
|
2371
2400
|
}
|
|
2372
2401
|
}
|
|
2373
|
-
class
|
|
2374
|
-
constructor(e = 5,
|
|
2402
|
+
class Ft extends R {
|
|
2403
|
+
constructor(e = 5, o = 0.5, n = 1, r = 5, a = 0.25) {
|
|
2375
2404
|
super();
|
|
2376
|
-
const s = Math.PI * 2 / e,
|
|
2405
|
+
const s = Math.PI * 2 / e, c = s / 4;
|
|
2377
2406
|
this.moveTo(Math.cos(0) * n, -Math.sin(0) * n);
|
|
2378
2407
|
for (let i = 1; i <= e; ++i)
|
|
2379
|
-
this.lineTo(Math.cos(s * i -
|
|
2380
|
-
if (this.closePath(),
|
|
2381
|
-
const i = new be(), l = Math.PI * 2 /
|
|
2382
|
-
i.moveTo(Math.cos(0) *
|
|
2383
|
-
for (let u = 1; u <
|
|
2384
|
-
i.lineTo(Math.cos(l * u) *
|
|
2385
|
-
i.lineTo(Math.cos(0) *
|
|
2408
|
+
this.lineTo(Math.cos(s * i - c * 3) * o, -Math.sin(s * i - c * 3) * o), this.lineTo(Math.cos(s * i - c * 2) * o, -Math.sin(s * i - c * 2) * o), this.lineTo(Math.cos(s * i - c) * n, -Math.sin(s * i - c) * n), this.lineTo(Math.cos(s * i) * n, -Math.sin(s * i) * n);
|
|
2409
|
+
if (this.closePath(), a > 0 && r > 2) {
|
|
2410
|
+
const i = new be(), l = Math.PI * 2 / r;
|
|
2411
|
+
i.moveTo(Math.cos(0) * a, -Math.sin(0) * a);
|
|
2412
|
+
for (let u = 1; u < r; ++u)
|
|
2413
|
+
i.lineTo(Math.cos(l * u) * a, -Math.sin(l * u) * a);
|
|
2414
|
+
i.lineTo(Math.cos(0) * a, -Math.sin(0) * a), this.holes.push(i);
|
|
2386
2415
|
}
|
|
2387
2416
|
}
|
|
2388
2417
|
}
|
|
2389
|
-
class
|
|
2390
|
-
constructor(e = 5,
|
|
2418
|
+
class on extends f {
|
|
2419
|
+
constructor(e = 5, o = 0.5, n = 1, r = 5, a = 0.25, s = 0.25) {
|
|
2391
2420
|
super();
|
|
2392
|
-
const
|
|
2421
|
+
const c = new Ft(e, o, n, r, a), i = new X(c, {
|
|
2393
2422
|
depth: s,
|
|
2394
2423
|
bevelEnabled: s > 0,
|
|
2395
2424
|
bevelThickness: 0,
|
|
@@ -2403,23 +2432,23 @@ class Vo extends f {
|
|
|
2403
2432
|
i.center(), this.geometry = i, this.material = l;
|
|
2404
2433
|
}
|
|
2405
2434
|
}
|
|
2406
|
-
class
|
|
2407
|
-
constructor(e = 1,
|
|
2435
|
+
class zt extends R {
|
|
2436
|
+
constructor(e = 1, o = 2.1, n = 1.4, r = 1.6) {
|
|
2408
2437
|
super(), this.moveTo(0, n * e / 3), this.bezierCurveTo(
|
|
2409
|
-
-
|
|
2438
|
+
-o * 0.375 * e,
|
|
2410
2439
|
n * e,
|
|
2411
2440
|
// Control point 1 for the left lobe
|
|
2412
|
-
-
|
|
2441
|
+
-o * e,
|
|
2413
2442
|
n * e / 3,
|
|
2414
2443
|
// Control point 2 for the left side of the heart
|
|
2415
2444
|
0,
|
|
2416
|
-
-
|
|
2445
|
+
-r * e
|
|
2417
2446
|
// Bottom tip of the heart, controlled by `tipDepth`
|
|
2418
2447
|
), this.bezierCurveTo(
|
|
2419
|
-
|
|
2448
|
+
o * e,
|
|
2420
2449
|
n * e / 3,
|
|
2421
2450
|
// Control point 3 for the right side of the heart
|
|
2422
|
-
|
|
2451
|
+
o * 0.375 * e,
|
|
2423
2452
|
n * e,
|
|
2424
2453
|
// Control point 4 for the right lobe
|
|
2425
2454
|
0,
|
|
@@ -2428,12 +2457,12 @@ class Bt extends L {
|
|
|
2428
2457
|
);
|
|
2429
2458
|
}
|
|
2430
2459
|
}
|
|
2431
|
-
class
|
|
2432
|
-
constructor(e = 1,
|
|
2460
|
+
class nn extends f {
|
|
2461
|
+
constructor(e = 1, o = 1, n = 1, r = 10, a = 0.25) {
|
|
2433
2462
|
super();
|
|
2434
|
-
const s = new
|
|
2435
|
-
depth:
|
|
2436
|
-
bevelEnabled:
|
|
2463
|
+
const s = new zt(e, o, n, r), c = new X(s, {
|
|
2464
|
+
depth: a,
|
|
2465
|
+
bevelEnabled: a > 0,
|
|
2437
2466
|
bevelThickness: 0,
|
|
2438
2467
|
bevelSize: 0
|
|
2439
2468
|
}), i = new w({
|
|
@@ -2444,28 +2473,28 @@ class Xo extends f {
|
|
|
2444
2473
|
roughness: 0.3,
|
|
2445
2474
|
flatShading: !0
|
|
2446
2475
|
});
|
|
2447
|
-
|
|
2476
|
+
c.center(), this.geometry = c, this.material = i;
|
|
2448
2477
|
}
|
|
2449
2478
|
}
|
|
2450
|
-
class
|
|
2451
|
-
constructor(e = 5,
|
|
2479
|
+
class qt extends R {
|
|
2480
|
+
constructor(e = 5, o = 0.5, n = 1) {
|
|
2452
2481
|
super();
|
|
2453
|
-
const
|
|
2482
|
+
const r = Math.PI * 2 / e, a = r / 2;
|
|
2454
2483
|
this.moveTo(Math.cos(0) * n, Math.sin(0) * n);
|
|
2455
2484
|
for (let s = 1; s <= e; ++s)
|
|
2456
|
-
this.lineTo(Math.cos(
|
|
2485
|
+
this.lineTo(Math.cos(r * s - a) * o, Math.sin(r * s - a) * o), this.lineTo(Math.cos(r * s) * n, Math.sin(r * s) * n);
|
|
2457
2486
|
this.closePath();
|
|
2458
2487
|
}
|
|
2459
2488
|
}
|
|
2460
|
-
class
|
|
2461
|
-
constructor(e = 5,
|
|
2489
|
+
class sn extends f {
|
|
2490
|
+
constructor(e = 5, o = 0.5, n = 1, r = 0.25) {
|
|
2462
2491
|
super();
|
|
2463
|
-
const
|
|
2464
|
-
depth:
|
|
2465
|
-
bevelEnabled:
|
|
2492
|
+
const a = new qt(e, o, n), s = new X(a, {
|
|
2493
|
+
depth: r,
|
|
2494
|
+
bevelEnabled: r > 0,
|
|
2466
2495
|
bevelThickness: 0,
|
|
2467
2496
|
bevelSize: 0
|
|
2468
|
-
}),
|
|
2497
|
+
}), c = new w({
|
|
2469
2498
|
color: 16776960,
|
|
2470
2499
|
emissive: 16766720,
|
|
2471
2500
|
emissiveIntensity: 0.25,
|
|
@@ -2473,41 +2502,41 @@ class Ro extends f {
|
|
|
2473
2502
|
roughness: 0.3,
|
|
2474
2503
|
flatShading: !0
|
|
2475
2504
|
});
|
|
2476
|
-
s.center(), this.geometry = s, this.material =
|
|
2505
|
+
s.center(), this.geometry = s, this.material = c;
|
|
2477
2506
|
}
|
|
2478
2507
|
}
|
|
2479
|
-
class
|
|
2508
|
+
class rn extends f {
|
|
2480
2509
|
constructor() {
|
|
2481
|
-
super(), this.geometry = new
|
|
2510
|
+
super(), this.geometry = new Pt(), this.material = new w({ color: 16777215 });
|
|
2482
2511
|
}
|
|
2483
2512
|
}
|
|
2484
|
-
class
|
|
2513
|
+
class an extends f {
|
|
2485
2514
|
constructor({
|
|
2486
2515
|
trunkRadiusTop: e = 0.25,
|
|
2487
|
-
trunkRadiusBottom:
|
|
2516
|
+
trunkRadiusBottom: o = 0.4,
|
|
2488
2517
|
trunkHeight: n = 2.5,
|
|
2489
|
-
trunkSegments:
|
|
2490
|
-
trunkColor:
|
|
2518
|
+
trunkSegments: r = 14,
|
|
2519
|
+
trunkColor: a = 9127187,
|
|
2491
2520
|
leafSize: s = 0.8,
|
|
2492
|
-
leafCount:
|
|
2521
|
+
leafCount: c = 6,
|
|
2493
2522
|
leafDetail: i = 0,
|
|
2494
2523
|
leafSpreadRadius: l = 1.5,
|
|
2495
2524
|
leafColor: u = 2263842
|
|
2496
2525
|
} = {}) {
|
|
2497
2526
|
super();
|
|
2498
|
-
const m = new
|
|
2527
|
+
const m = new Ot({
|
|
2499
2528
|
trunkRadiusTop: e,
|
|
2500
|
-
trunkRadiusBottom:
|
|
2529
|
+
trunkRadiusBottom: o,
|
|
2501
2530
|
trunkHeight: n,
|
|
2502
|
-
trunkSegments:
|
|
2503
|
-
trunkColor:
|
|
2531
|
+
trunkSegments: r,
|
|
2532
|
+
trunkColor: a,
|
|
2504
2533
|
leafSize: s,
|
|
2505
|
-
leafCount:
|
|
2534
|
+
leafCount: c,
|
|
2506
2535
|
leafDetail: i,
|
|
2507
2536
|
leafSpreadRadius: l,
|
|
2508
2537
|
leafColor: u
|
|
2509
2538
|
}), h = new w({
|
|
2510
|
-
color:
|
|
2539
|
+
color: a,
|
|
2511
2540
|
roughness: 0.9,
|
|
2512
2541
|
metalness: 0,
|
|
2513
2542
|
flatShading: !0
|
|
@@ -2520,49 +2549,49 @@ class Yo extends f {
|
|
|
2520
2549
|
this.geometry = m, this.material = [h, d];
|
|
2521
2550
|
}
|
|
2522
2551
|
}
|
|
2523
|
-
class
|
|
2552
|
+
class cn extends f {
|
|
2524
2553
|
constructor({
|
|
2525
2554
|
radius: e = 3,
|
|
2526
2555
|
//
|
|
2527
|
-
height:
|
|
2556
|
+
height: o = 0.6,
|
|
2528
2557
|
widthSegments: n = 64,
|
|
2529
|
-
heightSegments:
|
|
2530
|
-
phiStart:
|
|
2558
|
+
heightSegments: r = 16,
|
|
2559
|
+
phiStart: a = 0,
|
|
2531
2560
|
phiLength: s = Math.PI * 2
|
|
2532
2561
|
} = {}) {
|
|
2533
|
-
super(), this.geometry = new
|
|
2562
|
+
super(), this.geometry = new kt({
|
|
2534
2563
|
radius: e,
|
|
2535
|
-
height:
|
|
2564
|
+
height: o,
|
|
2536
2565
|
widthSegments: n,
|
|
2537
|
-
heightSegments:
|
|
2538
|
-
phiStart:
|
|
2566
|
+
heightSegments: r,
|
|
2567
|
+
phiStart: a,
|
|
2539
2568
|
phiLength: s
|
|
2540
2569
|
}), this.material = new w({ color: 65280, flatShading: !0 });
|
|
2541
2570
|
}
|
|
2542
2571
|
}
|
|
2543
|
-
class
|
|
2572
|
+
class ln extends f {
|
|
2544
2573
|
constructor({
|
|
2545
|
-
radius: e =
|
|
2574
|
+
radius: e = he(5, Math.PI / 10),
|
|
2546
2575
|
//
|
|
2547
|
-
widthSegments:
|
|
2576
|
+
widthSegments: o = 64,
|
|
2548
2577
|
heightSegments: n = 32,
|
|
2549
|
-
phiStart:
|
|
2550
|
-
phiLength:
|
|
2578
|
+
phiStart: r = 0,
|
|
2579
|
+
phiLength: a = Math.PI * 2,
|
|
2551
2580
|
thetaLength: s = Math.PI / 10
|
|
2552
2581
|
} = {}) {
|
|
2553
|
-
super(), this.geometry = new
|
|
2582
|
+
super(), this.geometry = new Ut({
|
|
2554
2583
|
radius: e,
|
|
2555
|
-
widthSegments:
|
|
2584
|
+
widthSegments: o,
|
|
2556
2585
|
heightSegments: n,
|
|
2557
|
-
phiStart:
|
|
2558
|
-
phiLength:
|
|
2586
|
+
phiStart: r,
|
|
2587
|
+
phiLength: a,
|
|
2559
2588
|
thetaLength: s
|
|
2560
2589
|
}), this.material = new w({ color: 65280, flatShading: !0 });
|
|
2561
2590
|
}
|
|
2562
2591
|
}
|
|
2563
|
-
function
|
|
2564
|
-
|
|
2565
|
-
|
|
2592
|
+
function un(t, { time: e = 0, waveFrequency: o = 0.2, waveAmplitude: n = 0.5 } = {}) {
|
|
2593
|
+
t.onBeforeCompile = (r) => {
|
|
2594
|
+
r.uniforms.time = { value: e }, r.uniforms.waveFrequency = { value: o }, r.uniforms.waveAmplitude = { value: n }, r.vertexShader = `
|
|
2566
2595
|
uniform float time;
|
|
2567
2596
|
uniform float waveFrequency;
|
|
2568
2597
|
uniform float waveAmplitude;
|
|
@@ -2576,20 +2605,20 @@ function Ho(o, { time: e = 0, waveFrequency: t = 0.2, waveAmplitude: n = 0.5 } =
|
|
|
2576
2605
|
|
|
2577
2606
|
return displaced;
|
|
2578
2607
|
}
|
|
2579
|
-
` +
|
|
2608
|
+
` + r.vertexShader, r.vertexShader = r.vertexShader.replace(
|
|
2580
2609
|
"#include <begin_vertex>",
|
|
2581
2610
|
`
|
|
2582
2611
|
vec3 transformed = waterDisplacement(position, normal);
|
|
2583
2612
|
`
|
|
2584
|
-
),
|
|
2613
|
+
), t.userData.shader = r;
|
|
2585
2614
|
};
|
|
2586
2615
|
}
|
|
2587
|
-
function
|
|
2588
|
-
|
|
2616
|
+
function mn(t, e) {
|
|
2617
|
+
t.userData.shader && (t.userData.shader.uniforms.time.value += e);
|
|
2589
2618
|
}
|
|
2590
|
-
function
|
|
2591
|
-
|
|
2592
|
-
|
|
2619
|
+
function hn(t, { time: e = 0, intensity: o = 1, direction: n = _.XYZ, scale: r = 10 } = {}) {
|
|
2620
|
+
t.onBeforeCompile = (a) => {
|
|
2621
|
+
a.uniforms.time = { value: e }, a.uniforms.direction = { value: n }, a.uniforms.intensity = { value: o }, a.uniforms.scale = { value: r }, a.vertexShader = `
|
|
2593
2622
|
uniform float time;
|
|
2594
2623
|
uniform vec3 direction;
|
|
2595
2624
|
uniform float intensity;
|
|
@@ -2620,7 +2649,7 @@ function Ko(o, { time: e = 0, intensity: t = 1, direction: n = U.XYZ, scale: a =
|
|
|
2620
2649
|
|
|
2621
2650
|
return o4.y * d.y + o4.x * (1.0 - d.y);
|
|
2622
2651
|
}
|
|
2623
|
-
` +
|
|
2652
|
+
` + a.vertexShader, a.vertexShader = a.vertexShader.replace(
|
|
2624
2653
|
"#include <begin_vertex>",
|
|
2625
2654
|
`
|
|
2626
2655
|
vec3 transformed = vec3(position);
|
|
@@ -2628,13 +2657,13 @@ function Ko(o, { time: e = 0, intensity: t = 1, direction: n = U.XYZ, scale: a =
|
|
|
2628
2657
|
transformed += normalize(direction) * n * intensity;
|
|
2629
2658
|
vec3 transformedNormal = normal;
|
|
2630
2659
|
`
|
|
2631
|
-
),
|
|
2660
|
+
), t.userData.shader = a;
|
|
2632
2661
|
};
|
|
2633
2662
|
}
|
|
2634
|
-
function
|
|
2635
|
-
|
|
2663
|
+
function fn(t, e) {
|
|
2664
|
+
t.userData.shader && (t.userData.shader.uniforms.time.value += e);
|
|
2636
2665
|
}
|
|
2637
|
-
const
|
|
2666
|
+
const se = {
|
|
2638
2667
|
uniforms: {},
|
|
2639
2668
|
vertexShader: `
|
|
2640
2669
|
varying vec3 vPosition;
|
|
@@ -2652,7 +2681,7 @@ const ne = {
|
|
|
2652
2681
|
gl_FragColor = vec4(mix(bottomColor, topColor, y), 1.0);
|
|
2653
2682
|
}
|
|
2654
2683
|
`
|
|
2655
|
-
},
|
|
2684
|
+
}, Lt = {
|
|
2656
2685
|
uniforms: {
|
|
2657
2686
|
tDiffuse: { value: null },
|
|
2658
2687
|
opacity: { value: 1 }
|
|
@@ -2673,10 +2702,10 @@ const ne = {
|
|
|
2673
2702
|
gl_FragColor = opacity * texel;
|
|
2674
2703
|
}
|
|
2675
2704
|
`
|
|
2676
|
-
},
|
|
2705
|
+
}, H = {
|
|
2677
2706
|
uniforms: {
|
|
2678
|
-
topColor: { value: new
|
|
2679
|
-
bottomColor: { value: new
|
|
2707
|
+
topColor: { value: new te(51) },
|
|
2708
|
+
bottomColor: { value: new te(17) },
|
|
2680
2709
|
offset: { value: 33 },
|
|
2681
2710
|
exponent: { value: 0.6 }
|
|
2682
2711
|
},
|
|
@@ -2700,248 +2729,322 @@ const ne = {
|
|
|
2700
2729
|
}
|
|
2701
2730
|
`
|
|
2702
2731
|
};
|
|
2703
|
-
class
|
|
2732
|
+
class pn extends f {
|
|
2704
2733
|
constructor(e = 1e3) {
|
|
2705
|
-
super(), this.geometry = new
|
|
2706
|
-
vertexShader:
|
|
2707
|
-
fragmentShader:
|
|
2708
|
-
side:
|
|
2734
|
+
super(), this.geometry = new I(e, e, e), this.material = new J({
|
|
2735
|
+
vertexShader: se.vertexShader,
|
|
2736
|
+
fragmentShader: se.fragmentShader,
|
|
2737
|
+
side: ce
|
|
2709
2738
|
});
|
|
2710
2739
|
}
|
|
2711
2740
|
}
|
|
2712
|
-
class
|
|
2741
|
+
class dn extends f {
|
|
2713
2742
|
constructor(e = 1e3) {
|
|
2714
|
-
super(), this.geometry = new
|
|
2715
|
-
vertexShader:
|
|
2716
|
-
fragmentShader:
|
|
2717
|
-
uniforms:
|
|
2718
|
-
side:
|
|
2743
|
+
super(), this.geometry = new C(e, 32, 15), this.material = new J({
|
|
2744
|
+
vertexShader: H.vertexShader,
|
|
2745
|
+
fragmentShader: H.fragmentShader,
|
|
2746
|
+
uniforms: H.uniforms,
|
|
2747
|
+
side: ce
|
|
2719
2748
|
});
|
|
2720
2749
|
}
|
|
2721
2750
|
}
|
|
2722
|
-
class
|
|
2723
|
-
constructor(e = Math.PI * 0.49,
|
|
2751
|
+
class wn extends f {
|
|
2752
|
+
constructor(e = Math.PI * 0.49, o = 2 * Math.PI * 0.25, n = 10, r = 2, a = 5e-3, s = 0.8) {
|
|
2724
2753
|
super();
|
|
2725
|
-
const
|
|
2726
|
-
|
|
2727
|
-
const i =
|
|
2728
|
-
i.turbidity.value = n, i.rayleigh.value =
|
|
2754
|
+
const c = new Ce();
|
|
2755
|
+
c.scale.setScalar(45e4), this.add(c);
|
|
2756
|
+
const i = c.material.uniforms;
|
|
2757
|
+
i.turbidity.value = n, i.rayleigh.value = r, i.mieCoefficient.value = a, i.mieDirectionalG.value = s, this.skyUniforms = i, this.sunPosition(e, o);
|
|
2729
2758
|
}
|
|
2730
|
-
sunPosition(e,
|
|
2731
|
-
const n = new M(),
|
|
2732
|
-
n.setFromSphericalCoords(1, e,
|
|
2759
|
+
sunPosition(e, o) {
|
|
2760
|
+
const n = new M(), r = this.skyUniforms;
|
|
2761
|
+
n.setFromSphericalCoords(1, e, o), r.sunPosition.value.copy(n);
|
|
2733
2762
|
}
|
|
2734
2763
|
}
|
|
2735
|
-
const
|
|
2736
|
-
const e = new Uint8Array(4 *
|
|
2737
|
-
for (let n = 0; n <
|
|
2738
|
-
const
|
|
2739
|
-
e[
|
|
2764
|
+
const xn = (t) => {
|
|
2765
|
+
const e = new Uint8Array(4 * t * t);
|
|
2766
|
+
for (let n = 0; n < t * t; n++) {
|
|
2767
|
+
const r = n * 4, a = (n % t ^ Math.floor(n / t)) & 1 ? 255 : 0;
|
|
2768
|
+
e[r] = a, e[r + 1] = a, e[r + 2] = a, e[r + 3] = 255;
|
|
2740
2769
|
}
|
|
2741
|
-
const
|
|
2742
|
-
return
|
|
2770
|
+
const o = new Se(e, t, t, Ge, Pe);
|
|
2771
|
+
return o.wrapS = oe, o.wrapT = oe, o.minFilter = Ae, o.needsUpdate = !0, o;
|
|
2743
2772
|
};
|
|
2744
|
-
function
|
|
2745
|
-
const e = new
|
|
2746
|
-
e.getCenter(
|
|
2773
|
+
function yn(t) {
|
|
2774
|
+
const e = new $().setFromObject(t), o = new M();
|
|
2775
|
+
e.getCenter(o), t.position.sub(o);
|
|
2747
2776
|
}
|
|
2748
|
-
function
|
|
2749
|
-
const
|
|
2750
|
-
|
|
2751
|
-
const
|
|
2752
|
-
|
|
2777
|
+
function Mn(t, e = new M(0, 0, 0)) {
|
|
2778
|
+
const o = new $().setFromObject(t), n = new M();
|
|
2779
|
+
o.getCenter(n);
|
|
2780
|
+
const r = new M().subVectors(e, n);
|
|
2781
|
+
t.position.add(r);
|
|
2753
2782
|
}
|
|
2754
|
-
function
|
|
2755
|
-
|
|
2756
|
-
const
|
|
2757
|
-
|
|
2783
|
+
function vn(t) {
|
|
2784
|
+
t.computeBoundingBox();
|
|
2785
|
+
const o = t.boundingBox.getCenter(new M());
|
|
2786
|
+
t.translateX(-o.x), t.translateY(-o.y), t.translateZ(-o.z);
|
|
2758
2787
|
}
|
|
2759
|
-
function
|
|
2760
|
-
return Math.max(0, Math.min(1, (
|
|
2788
|
+
function Rt(t, e, o) {
|
|
2789
|
+
return Math.max(0, Math.min(1, (t - e) / (o - e)));
|
|
2761
2790
|
}
|
|
2762
|
-
function
|
|
2791
|
+
function gn(t, e, o, n, r, a = 20, s = 0, c = 1) {
|
|
2763
2792
|
const i = [];
|
|
2764
|
-
for (let l = 0; l <=
|
|
2765
|
-
const u = l /
|
|
2766
|
-
i.push(new
|
|
2793
|
+
for (let l = 0; l <= a; l++) {
|
|
2794
|
+
const u = l / a, m = t(Rt(u, s, c)), h = e + m * (o - e), d = n + u * (r - n);
|
|
2795
|
+
i.push(new v(h, d));
|
|
2767
2796
|
}
|
|
2768
2797
|
return i;
|
|
2769
2798
|
}
|
|
2770
|
-
function
|
|
2771
|
-
const
|
|
2772
|
-
|
|
2799
|
+
function In(t) {
|
|
2800
|
+
const o = new $().setFromObject(t).getCenter(new M());
|
|
2801
|
+
t.translateX(-o.x), t.translateY(-o.y), t.translateZ(-o.z), t.updateMatrixWorld(!0);
|
|
2773
2802
|
}
|
|
2774
|
-
function
|
|
2775
|
-
|
|
2776
|
-
const
|
|
2777
|
-
|
|
2803
|
+
function bn(t) {
|
|
2804
|
+
t.geometry.computeBoundingBox();
|
|
2805
|
+
const o = t.geometry.boundingBox.getCenter(new M());
|
|
2806
|
+
t.geometry.translate(-o.x, -o.y, -o.z);
|
|
2778
2807
|
}
|
|
2779
|
-
|
|
2808
|
+
const Xt = (t, e, o, n, r = 24) => {
|
|
2809
|
+
let a = [];
|
|
2810
|
+
for (let s = 0; s <= r; s++) {
|
|
2811
|
+
const c = s / r, i = B.CUBIC(c, t.x, e.x, o.x, n.x), l = B.CUBIC(c, t.y, e.y, o.y, n.y);
|
|
2812
|
+
a.push(new v(i, l));
|
|
2813
|
+
}
|
|
2814
|
+
return a;
|
|
2815
|
+
}, Vt = (t, e, o, n = 24) => {
|
|
2816
|
+
let r = [];
|
|
2817
|
+
for (let a = 0; a <= n; a++) {
|
|
2818
|
+
const s = a / n, c = B.DAMPED(s, o) * (e.x - t.x) + t.x, i = t.y + s * (e.y - t.y);
|
|
2819
|
+
r.push(new v(c, i));
|
|
2820
|
+
}
|
|
2821
|
+
return r;
|
|
2822
|
+
}, Dt = (t, e, o, n, r = 24) => {
|
|
2823
|
+
let a = [];
|
|
2824
|
+
for (let s = 0; s <= r; s++) {
|
|
2825
|
+
const c = s / r, i = B.EXPONENTIAL(c, o, n) * (e.x - t.x) + t.x, l = t.y + c * (e.y - t.y);
|
|
2826
|
+
a.push(new v(i, l));
|
|
2827
|
+
}
|
|
2828
|
+
return a;
|
|
2829
|
+
}, Zt = (t, e, o, n, r = 24) => {
|
|
2830
|
+
let a = [];
|
|
2831
|
+
for (let s = 0; s <= r; s++) {
|
|
2832
|
+
const c = s / r, i = B.LOGARITHMIC(c, o, n) * (e.x - t.x) + t.x, l = t.y + c * (e.y - t.y);
|
|
2833
|
+
a.push(new v(i, l));
|
|
2834
|
+
}
|
|
2835
|
+
return a;
|
|
2836
|
+
}, Yt = (t, e, o, n, r, a = 24) => {
|
|
2837
|
+
let s = [];
|
|
2838
|
+
for (let c = 0; c <= a; c++) {
|
|
2839
|
+
const i = c / a, l = o * i * i + n * i + r + t.x, u = t.y + i * (e.y - t.y);
|
|
2840
|
+
s.push(new v(l, u));
|
|
2841
|
+
}
|
|
2842
|
+
return s;
|
|
2843
|
+
}, Qt = (t, e, o, n = 24) => {
|
|
2844
|
+
let r = [];
|
|
2845
|
+
for (let a = 0; a <= n; a++) {
|
|
2846
|
+
const s = a / n, c = B.QUADRATIC(s, t.x, e.x, o.x), i = B.QUADRATIC(s, t.y, e.y, o.y);
|
|
2847
|
+
r.push(new v(c, i));
|
|
2848
|
+
}
|
|
2849
|
+
return r;
|
|
2850
|
+
}, Ht = (t, e, o, n = 24) => {
|
|
2851
|
+
let r = [];
|
|
2852
|
+
for (let a = 0; a <= n; a++) {
|
|
2853
|
+
const s = a / n, c = B.SIGMOID(s, o) * (e.x - t.x) + t.x, i = t.y + s * (e.y - t.y);
|
|
2854
|
+
r.push(new v(c, i));
|
|
2855
|
+
}
|
|
2856
|
+
return r;
|
|
2857
|
+
}, Sn = {
|
|
2858
|
+
createCubicCurvePoints: Xt,
|
|
2859
|
+
createDampedCurvePoints: Vt,
|
|
2860
|
+
createExponentialCurvePoints: Dt,
|
|
2861
|
+
createLogarithmicCurvePoints: Zt,
|
|
2862
|
+
createParabolicCurvePoints: Yt,
|
|
2863
|
+
createQuadraticCurvePoints: Qt,
|
|
2864
|
+
createSigmoidCurvePoints: Ht
|
|
2865
|
+
};
|
|
2866
|
+
class Gn {
|
|
2780
2867
|
static dispose(e) {
|
|
2781
|
-
e == null || e.traverse((
|
|
2782
|
-
|
|
2868
|
+
e == null || e.traverse((o) => {
|
|
2869
|
+
o.geometry && o.geometry.dispose(), o.material && (Array.isArray(o.material) ? o.material.forEach((n) => n.dispose()) : o.material.dispose());
|
|
2783
2870
|
});
|
|
2784
2871
|
}
|
|
2785
|
-
static fadeBetween(e,
|
|
2786
|
-
const s = new Te(e),
|
|
2787
|
-
s.addPass(
|
|
2788
|
-
const i = new Be(
|
|
2872
|
+
static fadeBetween(e, o, n, r, a = 1) {
|
|
2873
|
+
const s = new Te(e), c = new ne(n, o);
|
|
2874
|
+
s.addPass(c);
|
|
2875
|
+
const i = new Be(Lt);
|
|
2789
2876
|
i.uniforms.opacity.value = 1, s.addPass(i);
|
|
2790
2877
|
let l = null;
|
|
2791
2878
|
function u(h) {
|
|
2792
2879
|
l || (l = h);
|
|
2793
|
-
const p = (h - l) / 1e3 /
|
|
2794
|
-
i.uniforms.opacity.value = Math.max(1 - p, 0), p < 1 ? (s.render(), requestAnimationFrame(u)) : (s.passes[0] = new
|
|
2880
|
+
const p = (h - l) / 1e3 / a;
|
|
2881
|
+
i.uniforms.opacity.value = Math.max(1 - p, 0), p < 1 ? (s.render(), requestAnimationFrame(u)) : (s.passes[0] = new ne(r, o), l = null, requestAnimationFrame(m));
|
|
2795
2882
|
}
|
|
2796
2883
|
function m(h) {
|
|
2797
2884
|
l || (l = h);
|
|
2798
|
-
const p = (h - l) / 1e3 /
|
|
2885
|
+
const p = (h - l) / 1e3 / a;
|
|
2799
2886
|
i.uniforms.opacity.value = Math.min(p, 1), p < 1 && (s.render(), requestAnimationFrame(m));
|
|
2800
2887
|
}
|
|
2801
2888
|
requestAnimationFrame(u);
|
|
2802
2889
|
}
|
|
2803
2890
|
}
|
|
2804
2891
|
export {
|
|
2805
|
-
|
|
2806
|
-
|
|
2807
|
-
|
|
2808
|
-
|
|
2809
|
-
|
|
2810
|
-
|
|
2811
|
-
|
|
2812
|
-
|
|
2813
|
-
|
|
2814
|
-
|
|
2815
|
-
|
|
2816
|
-
|
|
2817
|
-
|
|
2818
|
-
|
|
2819
|
-
|
|
2820
|
-
|
|
2821
|
-
|
|
2822
|
-
|
|
2823
|
-
|
|
2824
|
-
|
|
2825
|
-
|
|
2826
|
-
|
|
2827
|
-
|
|
2828
|
-
|
|
2829
|
-
|
|
2830
|
-
|
|
2831
|
-
|
|
2832
|
-
|
|
2833
|
-
|
|
2834
|
-
|
|
2835
|
-
|
|
2836
|
-
|
|
2837
|
-
|
|
2838
|
-
|
|
2839
|
-
|
|
2840
|
-
|
|
2841
|
-
|
|
2842
|
-
|
|
2843
|
-
|
|
2844
|
-
|
|
2845
|
-
|
|
2846
|
-
|
|
2847
|
-
|
|
2848
|
-
|
|
2849
|
-
|
|
2850
|
-
|
|
2851
|
-
|
|
2852
|
-
|
|
2853
|
-
|
|
2854
|
-
|
|
2855
|
-
|
|
2856
|
-
|
|
2857
|
-
|
|
2858
|
-
|
|
2859
|
-
|
|
2860
|
-
|
|
2861
|
-
|
|
2862
|
-
|
|
2863
|
-
|
|
2864
|
-
|
|
2865
|
-
|
|
2866
|
-
|
|
2867
|
-
|
|
2868
|
-
|
|
2869
|
-
|
|
2870
|
-
|
|
2871
|
-
|
|
2872
|
-
|
|
2873
|
-
|
|
2874
|
-
|
|
2875
|
-
|
|
2876
|
-
|
|
2877
|
-
|
|
2878
|
-
|
|
2879
|
-
|
|
2880
|
-
|
|
2881
|
-
|
|
2882
|
-
|
|
2883
|
-
|
|
2884
|
-
|
|
2885
|
-
|
|
2886
|
-
|
|
2887
|
-
|
|
2888
|
-
|
|
2889
|
-
|
|
2890
|
-
|
|
2891
|
-
|
|
2892
|
-
|
|
2893
|
-
|
|
2894
|
-
|
|
2895
|
-
|
|
2896
|
-
Ke as
|
|
2897
|
-
|
|
2898
|
-
|
|
2899
|
-
|
|
2900
|
-
|
|
2901
|
-
|
|
2902
|
-
|
|
2903
|
-
|
|
2892
|
+
Lo as Beaker,
|
|
2893
|
+
At as BeakerGeometry,
|
|
2894
|
+
ho as BifurcatedStaircaseGeometry,
|
|
2895
|
+
rn as Bone,
|
|
2896
|
+
Pt as BoneGeometry,
|
|
2897
|
+
So as Book,
|
|
2898
|
+
ie as BookGeometry,
|
|
2899
|
+
No as Bookshelf,
|
|
2900
|
+
bt as BookshelfGeometry,
|
|
2901
|
+
Ro as Bottle,
|
|
2902
|
+
io as Bubbling,
|
|
2903
|
+
Xo as BunsenBurner,
|
|
2904
|
+
tn as Burst,
|
|
2905
|
+
_t as BurstShape,
|
|
2906
|
+
Oo as Candle,
|
|
2907
|
+
Go as CrossHeadstone,
|
|
2908
|
+
xt as CrossHeadstoneGeometry,
|
|
2909
|
+
pn as DaySkybox,
|
|
2910
|
+
Uo as Desk,
|
|
2911
|
+
fo as DioramaGeometry,
|
|
2912
|
+
_ as Direction,
|
|
2913
|
+
co as Easing,
|
|
2914
|
+
Vo as ElectricPanel,
|
|
2915
|
+
Do as ErlenmeyerFlask,
|
|
2916
|
+
Et as ErlenmeyerFlaskGeometry,
|
|
2917
|
+
V as Falloff,
|
|
2918
|
+
To as FenceColumn,
|
|
2919
|
+
gt as FenceColumnGeometry,
|
|
2920
|
+
Zo as Flask,
|
|
2921
|
+
on as Gear,
|
|
2922
|
+
Ft as GearShape,
|
|
2923
|
+
nn as Heart,
|
|
2924
|
+
zt as HeartShape,
|
|
2925
|
+
cn as Hill,
|
|
2926
|
+
kt as HillGeometry,
|
|
2927
|
+
po as LShapedStaircaseGeometry,
|
|
2928
|
+
_o as Lantern,
|
|
2929
|
+
Yo as LeverPanel,
|
|
2930
|
+
Po as Mausoleum,
|
|
2931
|
+
Qo as Microscope,
|
|
2932
|
+
bo as Moon,
|
|
2933
|
+
Ho as MortarAndPestle,
|
|
2934
|
+
Ct as MortarGeometry,
|
|
2935
|
+
Fo as MossyRocks,
|
|
2936
|
+
ln as Mound,
|
|
2937
|
+
Ut as MoundGeometry,
|
|
2938
|
+
dn as NightSkybox,
|
|
2939
|
+
Ao as ObeliskHeadstone,
|
|
2940
|
+
yt as ObeliskHeadstoneGeometry,
|
|
2941
|
+
B as ParametricCurve,
|
|
2942
|
+
Sn as ParametricCurveUtils,
|
|
2943
|
+
zo as Rock,
|
|
2944
|
+
Gt as RockGeometry,
|
|
2945
|
+
qo as Rocks,
|
|
2946
|
+
Eo as RoundedHeadstone,
|
|
2947
|
+
Mt as RoundedHeadstoneGeometry,
|
|
2948
|
+
Gn as SceneUtils,
|
|
2949
|
+
yo as SimpleLeafGeometry,
|
|
2950
|
+
wo as SpiralStaircaseGeometry,
|
|
2951
|
+
jo as SpiralTube,
|
|
2952
|
+
Co as SquareHeadstone,
|
|
2953
|
+
vt as SquareHeadstoneGeometry,
|
|
2954
|
+
xo as StaircaseGeometry,
|
|
2955
|
+
Ko as Stand,
|
|
2956
|
+
Tt as StandGeometry,
|
|
2957
|
+
sn as Star,
|
|
2958
|
+
qt as StarShape,
|
|
2959
|
+
Jo as TeslaCoil,
|
|
2960
|
+
$o as TestTube,
|
|
2961
|
+
j as TestTubeGeometry,
|
|
2962
|
+
Wo as TestTubeRack,
|
|
2963
|
+
an as Tree,
|
|
2964
|
+
Ot as TreeGeometry,
|
|
2965
|
+
wn as TwilightSkybox,
|
|
2966
|
+
en as WineBottle,
|
|
2967
|
+
Bt as WineBottleGeometry,
|
|
2968
|
+
Bo as WroughtIronBar,
|
|
2969
|
+
me as WroughtIronBarGeometry,
|
|
2970
|
+
ko as WroughtIronFence,
|
|
2971
|
+
It as WroughtIronFenceGeometry,
|
|
2972
|
+
hn as addNoiseDisplacement,
|
|
2973
|
+
un as addWaterDisplacement,
|
|
2974
|
+
Nt as capHeightFromRadius,
|
|
2975
|
+
vo as capWidthFromRadius,
|
|
2976
|
+
Io as cartesianToSpherical,
|
|
2977
|
+
yn as centerGroup,
|
|
2978
|
+
Mn as centerGroupAtTarget,
|
|
2979
|
+
vn as centerInstancedMesh,
|
|
2980
|
+
In as centerMesh,
|
|
2981
|
+
bn as centerMeshGeometry,
|
|
2982
|
+
xn as checkerboardTexture,
|
|
2983
|
+
Ke as circularEaseIn,
|
|
2984
|
+
$e as circularEaseInOut,
|
|
2985
|
+
Je as circularEaseOut,
|
|
2986
|
+
tt as concave,
|
|
2987
|
+
ot as convex,
|
|
2988
|
+
Xt as createCubicCurvePoints,
|
|
2989
|
+
Vt as createDampedCurvePoints,
|
|
2990
|
+
Dt as createExponentialCurvePoints,
|
|
2991
|
+
Zt as createLogarithmicCurvePoints,
|
|
2992
|
+
Yt as createParabolicCurvePoints,
|
|
2993
|
+
Qt as createQuadraticCurvePoints,
|
|
2994
|
+
Ht as createSigmoidCurvePoints,
|
|
2995
|
+
ut as cubicCurve,
|
|
2996
|
+
ze as cubicEaseIn,
|
|
2997
|
+
Le as cubicEaseInOut,
|
|
2998
|
+
qe as cubicEaseOut,
|
|
2999
|
+
it as dampedCurve,
|
|
3000
|
+
se as daySkyShader,
|
|
3001
|
+
to as displacementBrush,
|
|
3002
|
+
mt as exponentialCurve,
|
|
2904
3003
|
Qe as exponentialEaseIn,
|
|
2905
|
-
|
|
2906
|
-
|
|
2907
|
-
|
|
2908
|
-
|
|
3004
|
+
je as exponentialEaseInOut,
|
|
3005
|
+
He as exponentialEaseOut,
|
|
3006
|
+
Lt as fadeShader,
|
|
3007
|
+
oo as flattenBrush,
|
|
2909
3008
|
at as gaussian,
|
|
2910
|
-
|
|
2911
|
-
|
|
2912
|
-
|
|
2913
|
-
|
|
2914
|
-
|
|
2915
|
-
|
|
2916
|
-
|
|
2917
|
-
|
|
2918
|
-
|
|
3009
|
+
gn as interpolateCurve,
|
|
3010
|
+
rt as inverse,
|
|
3011
|
+
We as linear,
|
|
3012
|
+
nt as logarithmic,
|
|
3013
|
+
ht as logarithmicCurve,
|
|
3014
|
+
dt as logarithmicRandomMax,
|
|
3015
|
+
wt as logarithmicRandomMin,
|
|
3016
|
+
H as nightSkyShader,
|
|
3017
|
+
no as noiseBrush,
|
|
3018
|
+
ct as parabolicCurve,
|
|
3019
|
+
lt as quadraticCurve,
|
|
3020
|
+
Oe as quadraticEaseIn,
|
|
2919
3021
|
Fe as quadraticEaseInOut,
|
|
2920
|
-
|
|
2921
|
-
|
|
2922
|
-
|
|
2923
|
-
|
|
2924
|
-
|
|
3022
|
+
_e as quadraticEaseOut,
|
|
3023
|
+
Re as quarticEaseIn,
|
|
3024
|
+
Ve as quarticEaseInOut,
|
|
3025
|
+
Xe as quarticEaseOut,
|
|
3026
|
+
De as quinticEaseIn,
|
|
2925
3027
|
Ye as quinticEaseInOut,
|
|
2926
3028
|
Ze as quinticEaseOut,
|
|
2927
|
-
|
|
2928
|
-
|
|
2929
|
-
|
|
2930
|
-
|
|
2931
|
-
|
|
2932
|
-
|
|
2933
|
-
|
|
2934
|
-
|
|
2935
|
-
|
|
2936
|
-
|
|
2937
|
-
|
|
2938
|
-
|
|
2939
|
-
|
|
2940
|
-
|
|
2941
|
-
|
|
2942
|
-
|
|
2943
|
-
|
|
2944
|
-
|
|
2945
|
-
|
|
3029
|
+
Mo as radiusFromCapHeight,
|
|
3030
|
+
he as radiusFromCapWidth,
|
|
3031
|
+
pt as randomFloat,
|
|
3032
|
+
lo as randomInteger,
|
|
3033
|
+
St as randomTransformVertices,
|
|
3034
|
+
uo as rowOfBooksByCount,
|
|
3035
|
+
mo as rowOfBooksByLength,
|
|
3036
|
+
ue as rowOfBooksByScales,
|
|
3037
|
+
ft as sigmoidCurve,
|
|
3038
|
+
ke as sineEaseIn,
|
|
3039
|
+
Ue as sineEaseInOut,
|
|
3040
|
+
Ne as sineEaseOut,
|
|
3041
|
+
so as smoothBrush,
|
|
3042
|
+
et as smoothstep,
|
|
3043
|
+
go as sphericalToCartesian,
|
|
3044
|
+
ro as spikeBrush,
|
|
3045
|
+
st as squareRoot,
|
|
3046
|
+
ao as twistBrush,
|
|
3047
|
+
fn as updateNoiseDisplacementTime,
|
|
3048
|
+
mn as updateWaterDisplacementTime
|
|
2946
3049
|
};
|
|
2947
3050
|
//# sourceMappingURL=index.es.js.map
|