three-stdlib 2.9.1 → 2.10.2
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/controls/DragControls.cjs.js +1 -1
- package/controls/DragControls.d.ts +2 -1
- package/controls/DragControls.js +2 -0
- package/controls/TransformControls.cjs.js +1 -1
- package/controls/TransformControls.d.ts +1 -0
- package/controls/TransformControls.js +17 -0
- package/index.cjs.js +1 -1
- package/index.js +1 -1
- package/objects/MarchingCubes.cjs.js +1 -1
- package/objects/MarchingCubes.js +49 -109
- package/package.json +1 -1
- package/postprocessing/BloomPass.cjs.js +1 -1
- package/postprocessing/BloomPass.d.ts +12 -10
- package/postprocessing/BloomPass.js +93 -58
- package/postprocessing/BokehPass.cjs.js +1 -1
- package/postprocessing/BokehPass.d.ts +12 -14
- package/postprocessing/BokehPass.js +70 -55
- package/postprocessing/ClearPass.cjs.js +1 -1
- package/postprocessing/ClearPass.d.ts +6 -5
- package/postprocessing/ClearPass.js +21 -12
- package/postprocessing/DotScreenPass.cjs.js +1 -1
- package/postprocessing/DotScreenPass.d.ts +8 -8
- package/postprocessing/DotScreenPass.js +29 -20
- package/postprocessing/FilmPass.cjs.js +1 -1
- package/postprocessing/FilmPass.d.ts +8 -8
- package/postprocessing/FilmPass.js +30 -23
- package/postprocessing/GlitchPass.cjs.js +1 -1
- package/postprocessing/GlitchPass.d.ts +8 -9
- package/postprocessing/GlitchPass.js +15 -1
- package/postprocessing/HalftonePass.cjs.js +1 -1
- package/postprocessing/HalftonePass.d.ts +13 -13
- package/postprocessing/HalftonePass.js +35 -26
- package/postprocessing/OutlinePass.cjs.js +1 -1
- package/postprocessing/OutlinePass.d.ts +15 -26
- package/postprocessing/OutlinePass.js +317 -220
- package/utils/GeometryUtils.cjs.js +1 -1
- package/utils/GeometryUtils.d.ts +5 -26
- package/utils/GeometryUtils.js +29 -43
- package/utils/SceneUtils.cjs.js +1 -1
- package/utils/SceneUtils.d.ts +9 -12
- package/utils/SceneUtils.js +7 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three");const r=(t=new e.Vector3(0,0,0),p=10,o=1,y=0,n=1,s=2,a=3)=>{const l=p/2,c=[new e.Vector3(t.x-l,t.y,t.z-l),new e.Vector3(t.x-l,t.y,t.z+l),new e.Vector3(t.x+l,t.y,t.z+l),new e.Vector3(t.x+l,t.y,t.z-l)],u=[c[y],c[n],c[s],c[a]];if(0<=--o){const e=[];return Array.prototype.push.apply(e,r(u[0],l,o,y,a,s,n)),Array.prototype.push.apply(e,r(u[1],l,o,y,n,s,a)),Array.prototype.push.apply(e,r(u[2],l,o,y,n,s,a)),Array.prototype.push.apply(e,r(u[3],l,o,s,n,y,a)),e}return u},t=(r=new e.Vector3(0,0,0),p=10,o=1,y=0,n=1,s=2,a=3,l=4,c=5,u=6,h=7)=>{const A=p/2,i=[new e.Vector3(r.x-A,r.y+A,r.z-A),new e.Vector3(r.x-A,r.y+A,r.z+A),new e.Vector3(r.x-A,r.y-A,r.z+A),new e.Vector3(r.x-A,r.y-A,r.z-A),new e.Vector3(r.x+A,r.y-A,r.z-A),new e.Vector3(r.x+A,r.y-A,r.z+A),new e.Vector3(r.x+A,r.y+A,r.z+A),new e.Vector3(r.x+A,r.y+A,r.z-A)],x=[i[y],i[n],i[s],i[a],i[l],i[c],i[u],i[h]];if(--o>=0){const e=[];return Array.prototype.push.apply(e,t(x[0],A,o,y,a,l,h,u,c,s,n)),Array.prototype.push.apply(e,t(x[1],A,o,y,h,u,n,s,c,l,a)),Array.prototype.push.apply(e,t(x[2],A,o,y,h,u,n,s,c,l,a)),Array.prototype.push.apply(e,t(x[3],A,o,s,a,y,n,u,h,l,c)),Array.prototype.push.apply(e,t(x[4],A,o,s,a,y,n,u,h,l,c)),Array.prototype.push.apply(e,t(x[5],A,o,l,a,s,c,u,n,y,h)),Array.prototype.push.apply(e,t(x[6],A,o,l,a,s,c,u,n,y,h)),Array.prototype.push.apply(e,t(x[7],A,o,u,c,s,n,y,a,l,h)),e}return x},p={hilbert3D:t,gosper:(e=1)=>function(e){let r=0,t=0,p=0;const o=[0,0,0],y=e.fractal;for(let n=0,s=y.length;n<s;n++){const s=y[n];"+"===s?p+=e.angle:"-"===s?p-=e.angle:"F"===s&&(r+=e.size*Math.cos(p),t+=-e.size*Math.sin(p),o.push(r,t,0))}return o}({fractal:function(e){let r="",t=e.axiom;for(let p=0,o=e.steps;0<=o?p<o:p>o;0<=o?p++:p--){r="";for(let p=0,o=t.length;p<o;p++){const o=t[p];o in e.rules?r+=e.rules[o]:r+=o}t=r}return r}({axiom:"A",steps:4,rules:{A:"A+BF++BF-FA--FAFA-BF+",B:"-FA+BFBF++BF+FA--FA-B"}}),size:e,angle:Math.PI/3}),hilbert2D:r};exports.GeometryUtils=p;
|
package/utils/GeometryUtils.d.ts
CHANGED
|
@@ -1,27 +1,6 @@
|
|
|
1
1
|
import { Vector3 } from 'three';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
iterations?: number,
|
|
8
|
-
v0?: number,
|
|
9
|
-
v1?: number,
|
|
10
|
-
v2?: number,
|
|
11
|
-
v3?: number,
|
|
12
|
-
): Vector3[];
|
|
13
|
-
function hilbert3D(
|
|
14
|
-
center?: Vector3,
|
|
15
|
-
size?: number,
|
|
16
|
-
iterations?: number,
|
|
17
|
-
v0?: number,
|
|
18
|
-
v1?: number,
|
|
19
|
-
v2?: number,
|
|
20
|
-
v3?: number,
|
|
21
|
-
v4?: number,
|
|
22
|
-
v5?: number,
|
|
23
|
-
v6?: number,
|
|
24
|
-
v7?: number,
|
|
25
|
-
): Vector3[];
|
|
26
|
-
function gosper(size?: number): number[];
|
|
27
|
-
}
|
|
2
|
+
export declare const GeometryUtils: {
|
|
3
|
+
hilbert3D: (center?: Vector3, size?: number, iterations?: number, v0?: number, v1?: number, v2?: number, v3?: number, v4?: number, v5?: number, v6?: number, v7?: number) => Vector3[];
|
|
4
|
+
gosper: (size?: number) => number[];
|
|
5
|
+
hilbert2D: (center?: Vector3, size?: number, iterations?: number, v0?: number, v1?: number, v2?: number, v3?: number) => Vector3[];
|
|
6
|
+
};
|
package/utils/GeometryUtils.js
CHANGED
|
@@ -15,21 +15,14 @@ import { Vector3 } from 'three';
|
|
|
15
15
|
* @param v3 Corner index +X, -Z.
|
|
16
16
|
*/
|
|
17
17
|
|
|
18
|
-
const hilbert2D = (center, size, iterations, v0, v1, v2, v3) => {
|
|
18
|
+
const hilbert2D = (center = new Vector3(0, 0, 0), size = 10, iterations = 1, v0 = 0, v1 = 1, v2 = 2, v3 = 3) => {
|
|
19
19
|
// Default Vars
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
iterations = iterations !== undefined ? iterations : 1,
|
|
24
|
-
v0 = v0 !== undefined ? v0 : 0,
|
|
25
|
-
v1 = v1 !== undefined ? v1 : 1,
|
|
26
|
-
v2 = v2 !== undefined ? v2 : 2,
|
|
27
|
-
v3 = v3 !== undefined ? v3 : 3;
|
|
28
|
-
var vec_s = [new Vector3(center.x - half, center.y, center.z - half), new Vector3(center.x - half, center.y, center.z + half), new Vector3(center.x + half, center.y, center.z + half), new Vector3(center.x + half, center.y, center.z - half)];
|
|
29
|
-
var vec = [vec_s[v0], vec_s[v1], vec_s[v2], vec_s[v3]]; // Recurse iterations
|
|
20
|
+
const half = size / 2;
|
|
21
|
+
const vec_s = [new Vector3(center.x - half, center.y, center.z - half), new Vector3(center.x - half, center.y, center.z + half), new Vector3(center.x + half, center.y, center.z + half), new Vector3(center.x + half, center.y, center.z - half)];
|
|
22
|
+
const vec = [vec_s[v0], vec_s[v1], vec_s[v2], vec_s[v3]]; // Recurse iterations
|
|
30
23
|
|
|
31
24
|
if (0 <= --iterations) {
|
|
32
|
-
|
|
25
|
+
const tmp = [];
|
|
33
26
|
Array.prototype.push.apply(tmp, hilbert2D(vec[0], half, iterations, v0, v3, v2, v1));
|
|
34
27
|
Array.prototype.push.apply(tmp, hilbert2D(vec[1], half, iterations, v0, v1, v2, v3));
|
|
35
28
|
Array.prototype.push.apply(tmp, hilbert2D(vec[2], half, iterations, v0, v1, v2, v3));
|
|
@@ -61,25 +54,14 @@ const hilbert2D = (center, size, iterations, v0, v1, v2, v3) => {
|
|
|
61
54
|
*/
|
|
62
55
|
|
|
63
56
|
|
|
64
|
-
const hilbert3D = (center, size, iterations, v0, v1, v2, v3, v4, v5, v6, v7) => {
|
|
57
|
+
const hilbert3D = (center = new Vector3(0, 0, 0), size = 10, iterations = 1, v0 = 0, v1 = 1, v2 = 2, v3 = 3, v4 = 4, v5 = 5, v6 = 6, v7 = 7) => {
|
|
65
58
|
// Default Vars
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
iterations = iterations !== undefined ? iterations : 1,
|
|
70
|
-
v0 = v0 !== undefined ? v0 : 0,
|
|
71
|
-
v1 = v1 !== undefined ? v1 : 1,
|
|
72
|
-
v2 = v2 !== undefined ? v2 : 2,
|
|
73
|
-
v3 = v3 !== undefined ? v3 : 3,
|
|
74
|
-
v4 = v4 !== undefined ? v4 : 4,
|
|
75
|
-
v5 = v5 !== undefined ? v5 : 5,
|
|
76
|
-
v6 = v6 !== undefined ? v6 : 6,
|
|
77
|
-
v7 = v7 !== undefined ? v7 : 7;
|
|
78
|
-
var vec_s = [new Vector3(center.x - half, center.y + half, center.z - half), new Vector3(center.x - half, center.y + half, center.z + half), new Vector3(center.x - half, center.y - half, center.z + half), new Vector3(center.x - half, center.y - half, center.z - half), new Vector3(center.x + half, center.y - half, center.z - half), new Vector3(center.x + half, center.y - half, center.z + half), new Vector3(center.x + half, center.y + half, center.z + half), new Vector3(center.x + half, center.y + half, center.z - half)];
|
|
79
|
-
var vec = [vec_s[v0], vec_s[v1], vec_s[v2], vec_s[v3], vec_s[v4], vec_s[v5], vec_s[v6], vec_s[v7]]; // Recurse iterations
|
|
59
|
+
const half = size / 2;
|
|
60
|
+
const vec_s = [new Vector3(center.x - half, center.y + half, center.z - half), new Vector3(center.x - half, center.y + half, center.z + half), new Vector3(center.x - half, center.y - half, center.z + half), new Vector3(center.x - half, center.y - half, center.z - half), new Vector3(center.x + half, center.y - half, center.z - half), new Vector3(center.x + half, center.y - half, center.z + half), new Vector3(center.x + half, center.y + half, center.z + half), new Vector3(center.x + half, center.y + half, center.z - half)];
|
|
61
|
+
const vec = [vec_s[v0], vec_s[v1], vec_s[v2], vec_s[v3], vec_s[v4], vec_s[v5], vec_s[v6], vec_s[v7]]; // Recurse iterations
|
|
80
62
|
|
|
81
63
|
if (--iterations >= 0) {
|
|
82
|
-
|
|
64
|
+
const tmp = [];
|
|
83
65
|
Array.prototype.push.apply(tmp, hilbert3D(vec[0], half, iterations, v0, v3, v4, v7, v6, v5, v2, v1));
|
|
84
66
|
Array.prototype.push.apply(tmp, hilbert3D(vec[1], half, iterations, v0, v7, v6, v1, v2, v5, v4, v3));
|
|
85
67
|
Array.prototype.push.apply(tmp, hilbert3D(vec[2], half, iterations, v0, v7, v6, v1, v2, v5, v4, v3));
|
|
@@ -104,18 +86,16 @@ const hilbert3D = (center, size, iterations, v0, v1, v2, v3, v4, v5, v6, v7) =>
|
|
|
104
86
|
*/
|
|
105
87
|
|
|
106
88
|
|
|
107
|
-
const gosper = size => {
|
|
108
|
-
size = size !== undefined ? size : 1;
|
|
109
|
-
|
|
89
|
+
const gosper = (size = 1) => {
|
|
110
90
|
function fractalize(config) {
|
|
111
|
-
|
|
112
|
-
|
|
91
|
+
let output = '';
|
|
92
|
+
let input = config.axiom;
|
|
113
93
|
|
|
114
94
|
for (let i = 0, il = config.steps; 0 <= il ? i < il : i > il; 0 <= il ? i++ : i--) {
|
|
115
95
|
output = '';
|
|
116
96
|
|
|
117
97
|
for (let j = 0, jl = input.length; j < jl; j++) {
|
|
118
|
-
|
|
98
|
+
const char = input[j];
|
|
119
99
|
|
|
120
100
|
if (char in config.rules) {
|
|
121
101
|
output += config.rules[char];
|
|
@@ -131,14 +111,14 @@ const gosper = size => {
|
|
|
131
111
|
}
|
|
132
112
|
|
|
133
113
|
function toPoints(config) {
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
114
|
+
let currX = 0;
|
|
115
|
+
let currY = 0;
|
|
116
|
+
let angle = 0;
|
|
117
|
+
const path = [0, 0, 0];
|
|
118
|
+
const fractal = config.fractal;
|
|
139
119
|
|
|
140
120
|
for (let i = 0, l = fractal.length; i < l; i++) {
|
|
141
|
-
|
|
121
|
+
const char = fractal[i];
|
|
142
122
|
|
|
143
123
|
if (char === '+') {
|
|
144
124
|
angle += config.angle;
|
|
@@ -155,7 +135,7 @@ const gosper = size => {
|
|
|
155
135
|
} //
|
|
156
136
|
|
|
157
137
|
|
|
158
|
-
|
|
138
|
+
const gosper = fractalize({
|
|
159
139
|
axiom: 'A',
|
|
160
140
|
steps: 4,
|
|
161
141
|
rules: {
|
|
@@ -163,7 +143,7 @@ const gosper = size => {
|
|
|
163
143
|
B: '-FA+BFBF++BF+FA--FA-B'
|
|
164
144
|
}
|
|
165
145
|
});
|
|
166
|
-
|
|
146
|
+
const points = toPoints({
|
|
167
147
|
fractal: gosper,
|
|
168
148
|
size: size,
|
|
169
149
|
angle: Math.PI / 3 // 60 degrees
|
|
@@ -172,4 +152,10 @@ const gosper = size => {
|
|
|
172
152
|
return points;
|
|
173
153
|
};
|
|
174
154
|
|
|
175
|
-
|
|
155
|
+
const GeometryUtils = {
|
|
156
|
+
hilbert3D,
|
|
157
|
+
gosper,
|
|
158
|
+
hilbert2D
|
|
159
|
+
};
|
|
160
|
+
|
|
161
|
+
export { GeometryUtils };
|
package/utils/SceneUtils.cjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three")
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three");const t={createMeshesFromInstancedMesh:function(t){const a=new e.Group,n=t.count,c=t.geometry,r=t.material;for(let o=0;o<n;o++){const n=new e.Mesh(c,r);t.getMatrixAt(o,n.matrix),n.matrix.decompose(n.position,n.quaternion,n.scale),a.add(n)}return a.copy(t),a.updateMatrixWorld(),a},createMultiMaterialObject:function(t,a){const n=new e.Group;for(let c=0,r=a.length;c<r;c++)n.add(new e.Mesh(t,a[c]));return n},detach:function(e,t,a){console.warn("THREE.SceneUtils: detach() has been deprecated. Use scene.attach( child ) instead."),a.attach(e)},attach:function(e,t,a){console.warn("THREE.SceneUtils: attach() has been deprecated. Use parent.attach( child ) instead."),a.attach(e)}};exports.SceneUtils=t;
|
package/utils/SceneUtils.d.ts
CHANGED
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
* @deprecated Use parent.attach( child ) instead.
|
|
11
|
-
*/
|
|
12
|
-
export function attach(child: Object3D, scene: Scene, parent: Object3D): void;
|
|
1
|
+
import { Group } from 'three';
|
|
2
|
+
import type { BufferGeometry, InstancedMesh, Material, Object3D, Scene } from 'three';
|
|
3
|
+
declare const SceneUtils: {
|
|
4
|
+
createMeshesFromInstancedMesh: (instancedMesh: InstancedMesh) => Group;
|
|
5
|
+
createMultiMaterialObject: (geometry: BufferGeometry, materials: Material[]) => Group;
|
|
6
|
+
detach: (child: Object3D, parent: Object3D, scene: Scene) => void;
|
|
7
|
+
attach: (child: Object3D, scene: Scene, parent: Object3D) => void;
|
|
8
|
+
};
|
|
9
|
+
export { SceneUtils };
|
package/utils/SceneUtils.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { Group, Mesh } from 'three';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
const SceneUtils = {
|
|
4
4
|
createMeshesFromInstancedMesh: function (instancedMesh) {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
const group = new Group();
|
|
6
|
+
const count = instancedMesh.count;
|
|
7
|
+
const geometry = instancedMesh.geometry;
|
|
8
|
+
const material = instancedMesh.material;
|
|
9
9
|
|
|
10
10
|
for (let i = 0; i < count; i++) {
|
|
11
|
-
|
|
11
|
+
const mesh = new Mesh(geometry, material);
|
|
12
12
|
instancedMesh.getMatrixAt(i, mesh.matrix);
|
|
13
13
|
mesh.matrix.decompose(mesh.position, mesh.quaternion, mesh.scale);
|
|
14
14
|
group.add(mesh);
|
|
@@ -20,7 +20,7 @@ var SceneUtils = {
|
|
|
20
20
|
return group;
|
|
21
21
|
},
|
|
22
22
|
createMultiMaterialObject: function (geometry, materials) {
|
|
23
|
-
|
|
23
|
+
const group = new Group();
|
|
24
24
|
|
|
25
25
|
for (let i = 0, l = materials.length; i < l; i++) {
|
|
26
26
|
group.add(new Mesh(geometry, materials[i]));
|