@hatiolab/things-scene 10.1.68 → 10.1.70
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist-types/figure/figure-geometry.d.ts +2 -0
- package/dist-types/figure/figure-geometry.d.ts.map +1 -1
- package/dist-types/figure/figure-merged-geometry.d.ts +38 -0
- package/dist-types/figure/figure-merged-geometry.d.ts.map +1 -0
- package/dist-types/figure/figure-real-object.d.ts.map +1 -1
- package/dist-types/figure/figure-rig.d.ts +45 -5
- package/dist-types/figure/figure-rig.d.ts.map +1 -1
- package/package.json +2 -2
- package/things-scene-min.js +6 -6
- package/things-scene-min.js.map +1 -1
- package/things-scene.mjs +1 -1
- package/things-scene.mjs.map +1 -1
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import * as THREE from 'three';
|
|
2
2
|
import type { FigureShape } from '@hatiolab/figure-model';
|
|
3
|
+
/** What makes two bodies one geometry: the shape's numbers and meaning, and its segments. */
|
|
4
|
+
export declare function figureGeometryKeyOf(shape: FigureShape, segments?: number): string;
|
|
3
5
|
/** The shared geometry for a body. Call `releaseFigureGeometry` with the same shape when the mesh goes away. */
|
|
4
6
|
export declare function acquireFigureGeometry(shape: FigureShape, segments?: number): THREE.BufferGeometry;
|
|
5
7
|
export declare function releaseFigureGeometry(geometry: THREE.BufferGeometry): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"figure-geometry.d.ts","sourceRoot":"","sources":["../../src/figure/figure-geometry.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"figure-geometry.d.ts","sourceRoot":"","sources":["../../src/figure/figure-geometry.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAQzD,6FAA6F;AAC7F,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,GAAE,MAAyB,GAAG,MAAM,CAkBnG;AAED,gHAAgH;AAChH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,GAAE,MAAyB,GAAG,KAAK,CAAC,cAAc,CAWnH;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,KAAK,CAAC,cAAc,GAAG,IAAI,CAS1E;AAED,iFAAiF;AACjF,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED,wBAAgB,mBAAmB,IAAI,IAAI,CAG1C;AAED,2GAA2G;AAC3G,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,GAAE,MAAyB,GAAG,KAAK,CAAC,cAAc,CAOjH"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import * as THREE from 'three';
|
|
2
|
+
import type { FigureShape } from '@hatiolab/figure-model';
|
|
3
|
+
export interface FigureMergedPart {
|
|
4
|
+
shape: FigureShape;
|
|
5
|
+
segments?: number;
|
|
6
|
+
pose: {
|
|
7
|
+
r: number[][];
|
|
8
|
+
t: number[];
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
export interface FigureMergedGeometry {
|
|
12
|
+
geometry: THREE.BufferGeometry;
|
|
13
|
+
/** The first triangle of each part, in the order given, and the triangle count last. */
|
|
14
|
+
starts: Int32Array;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* What the bank may hold, in bytes of vertex data (positions and normals). Past it a group is not merged.
|
|
18
|
+
* Measured (ADR-0109 step 4, the conveyor 8ca9b97b, every instance at a size of its own): three groups a size, about
|
|
19
|
+
* 19.5 KiB a group, 58 KiB a size -- the ceiling is reached past about 1,100 distinct sizes of it on one board.
|
|
20
|
+
*/
|
|
21
|
+
export declare const FIGURE_MERGED_BANK_LIMIT_BYTES: number;
|
|
22
|
+
/**
|
|
23
|
+
* The merged geometry for these parts, held once more; null when making it would pass the bank's ceiling. Give it back
|
|
24
|
+
* with `releaseMergedFigureGeometry`.
|
|
25
|
+
*/
|
|
26
|
+
export declare function acquireMergedFigureGeometry(parts: readonly FigureMergedPart[]): FigureMergedGeometry | null;
|
|
27
|
+
export declare function releaseMergedFigureGeometry(geometry: THREE.BufferGeometry): void;
|
|
28
|
+
/** What the bank holds now: entries, holds on them and bytes of vertex data. */
|
|
29
|
+
export declare function figureMergedGeometryStats(): {
|
|
30
|
+
entries: number;
|
|
31
|
+
users: number;
|
|
32
|
+
bytes: number;
|
|
33
|
+
limit: number;
|
|
34
|
+
};
|
|
35
|
+
/** The ceiling, for checks that reach it with a few parts; `undefined` puts it back. */
|
|
36
|
+
export declare function setMergedFigureGeometryLimit(bytes?: number): void;
|
|
37
|
+
export declare function resetMergedFigureGeometry(): void;
|
|
38
|
+
//# sourceMappingURL=figure-merged-geometry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"figure-merged-geometry.d.ts","sourceRoot":"","sources":["../../src/figure/figure-merged-geometry.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAGzD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,WAAW,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE;QAAE,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;QAAC,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAA;CACrC;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,KAAK,CAAC,cAAc,CAAA;IAC9B,wFAAwF;IACxF,MAAM,EAAE,UAAU,CAAA;CACnB;AAED;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,QAAmB,CAAA;AA2B9D;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,SAAS,gBAAgB,EAAE,GAAG,oBAAoB,GAAG,IAAI,CAmE3G;AAED,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,KAAK,CAAC,cAAc,GAAG,IAAI,CAUhF;AAED,gFAAgF;AAChF,wBAAgB,yBAAyB,IAAI;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAI5G;AAED,wFAAwF;AACxF,wBAAgB,4BAA4B,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAEjE;AAED,wBAAgB,yBAAyB,IAAI,IAAI,CAMhD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"figure-real-object.d.ts","sourceRoot":"","sources":["../../src/figure/figure-real-object.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAGxD,OAAO,EAAa,KAAK,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAG7E,qBAAa,gBAAiB,SAAQ,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAyB;IACpC,OAAO,CAAC,WAAW,CAAC,CAAa;IAEjC,IAAI,MAAM,IAAI,sBAAsB,GAAG,IAAI,CAE1C;cAEkB,mBAAmB,IAAI,KAAK,CAAC,KAAK;IAI5C,KAAK,IAAI,IAAI;IActB,2HAA2H;IAC3H,IAAI,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAG1C;IAED,kGAAkG;IAClG,IAAI,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAGvC;IAED,oGAAoG;IACpG,IAAI,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAGvC;IAED,qEAAqE;IACrE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAIrB,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI;IAO9D,oHAAoH;IACpH,YAAY,IAAI;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAO1D,IAAa,cAAc,IAAI,MAAM,CASpC;IAED;;;OAGG;IACH,IAAa,aAAa,IAAI,MAAM,CAKnC;IAEQ,eAAe,IAAI,IAAI;IAOhC;;;;;OAKG;IACH,OAAO,CAAC,IAAI;IAuBZ;;;OAGG;IACH,IAAI,UAAU,gDAEb;IAED,yFAAyF;IACzF,kBAAkB,IAAI,IAAI;IAM1B,0HAA0H;IAC1H,gBAAgB,IAAI,IAAI;IAMxB,oHAAoH;IACpH,WAAW,IAAI,IAAI;
|
|
1
|
+
{"version":3,"file":"figure-real-object.d.ts","sourceRoot":"","sources":["../../src/figure/figure-real-object.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAGxD,OAAO,EAAa,KAAK,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAG7E,qBAAa,gBAAiB,SAAQ,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAyB;IACpC,OAAO,CAAC,WAAW,CAAC,CAAa;IAEjC,IAAI,MAAM,IAAI,sBAAsB,GAAG,IAAI,CAE1C;cAEkB,mBAAmB,IAAI,KAAK,CAAC,KAAK;IAI5C,KAAK,IAAI,IAAI;IActB,2HAA2H;IAC3H,IAAI,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAG1C;IAED,kGAAkG;IAClG,IAAI,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAGvC;IAED,oGAAoG;IACpG,IAAI,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAGvC;IAED,qEAAqE;IACrE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAIrB,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI;IAO9D,oHAAoH;IACpH,YAAY,IAAI;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAO1D,IAAa,cAAc,IAAI,MAAM,CASpC;IAED;;;OAGG;IACH,IAAa,aAAa,IAAI,MAAM,CAKnC;IAEQ,eAAe,IAAI,IAAI;IAOhC;;;;;OAKG;IACH,OAAO,CAAC,IAAI;IAuBZ;;;OAGG;IACH,IAAI,UAAU,gDAEb;IAED,yFAAyF;IACzF,kBAAkB,IAAI,IAAI;IAM1B,0HAA0H;IAC1H,gBAAgB,IAAI,IAAI;IAMxB,oHAAoH;IACpH,WAAW,IAAI,IAAI;IAUnB,OAAO,CAAC,OAAO;IAMf,OAAO,CAAC,YAAY;IAUpB;;;;OAIG;IACH,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAgBtB,OAAO,CAAC,OAAO;IAIf;;;;;OAKG;IACH,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAAG;QAAE,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC;QAAC,aAAa,EAAE;YAAE,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,GAAG,SAAS;IAa7J,KAAK,IAAI,KAAK,CAAC,KAAK;CAO9B;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAUxG"}
|
|
@@ -7,6 +7,11 @@ export interface FigureRigOptions {
|
|
|
7
7
|
* ruling 5). Tokens the mapping does not name keep the asset's default.
|
|
8
8
|
*/
|
|
9
9
|
theme?: Record<string, string>;
|
|
10
|
+
/**
|
|
11
|
+
* Whether still parts of one render state are drawn as one mesh (ADR-0109). On unless set false: a rig drawn part by
|
|
12
|
+
* part is the reference a merged one is held to.
|
|
13
|
+
*/
|
|
14
|
+
merge?: boolean;
|
|
10
15
|
}
|
|
11
16
|
export interface Vec3Like {
|
|
12
17
|
x: number;
|
|
@@ -20,12 +25,30 @@ export interface FigureSizeClamp {
|
|
|
20
25
|
used: number;
|
|
21
26
|
bound: 'min' | 'max';
|
|
22
27
|
}
|
|
28
|
+
/** Where one body is drawn: a mesh of its own, a copy in an instanced mesh, or triangles of a merged mesh. */
|
|
29
|
+
export type FigureDraw = {
|
|
30
|
+
kind: 'alone';
|
|
31
|
+
object: THREE.Mesh;
|
|
32
|
+
} | {
|
|
33
|
+
kind: 'copy';
|
|
34
|
+
object: THREE.InstancedMesh;
|
|
35
|
+
index: number;
|
|
36
|
+
} | {
|
|
37
|
+
kind: 'merged';
|
|
38
|
+
object: THREE.Mesh;
|
|
39
|
+
triangles: {
|
|
40
|
+
start: number;
|
|
41
|
+
count: number;
|
|
42
|
+
};
|
|
43
|
+
};
|
|
23
44
|
export declare class FigureRig {
|
|
24
45
|
readonly group: THREE.Group<THREE.Object3DEventMap>;
|
|
25
46
|
readonly compiled: CompiledFigure;
|
|
26
47
|
private readonly meshes;
|
|
27
48
|
/** One instanced mesh per batch of a row's copies, by the batch's key; \`ids\` is the copy drawn at each index. */
|
|
28
49
|
private readonly batches;
|
|
50
|
+
/** One merged mesh per group of still parts of one render state, by the group's key (ADR-0109). */
|
|
51
|
+
private readonly merged;
|
|
29
52
|
private static readonly matrix;
|
|
30
53
|
/** One node per place a thing is held (a seat or a grip), made when something first hangs from it. */
|
|
31
54
|
private readonly places;
|
|
@@ -43,6 +66,7 @@ export declare class FigureRig {
|
|
|
43
66
|
/** Playback seconds per clip. A driver belongs to the clip its id starts with (`<clip>/<part>/<path>`). */
|
|
44
67
|
private clipTimes;
|
|
45
68
|
private theme;
|
|
69
|
+
private readonly merge;
|
|
46
70
|
/**
|
|
47
71
|
* This rig's evaluator: it runs again only what changed since its last evaluation -- a turning roller row re-evaluates
|
|
48
72
|
* its rollers, not its bed (figure-model's evaluator(), 2026-09-26).
|
|
@@ -64,6 +88,11 @@ export declare class FigureRig {
|
|
|
64
88
|
* evaluator keeps when the shape did not change) and whether it is shown, only poses moved and the plan stands.
|
|
65
89
|
*/
|
|
66
90
|
private planned?;
|
|
91
|
+
/** The still bodies of the last plan, kept while the bodies keep their ids. */
|
|
92
|
+
private stillOf?;
|
|
93
|
+
/** figure-model's still judgement, made once per compiled figure and shared by its rigs: it reads the asset only. */
|
|
94
|
+
private static readonly stillJudges;
|
|
95
|
+
private static stillJudgeOf;
|
|
67
96
|
/**
|
|
68
97
|
* The last evaluation the meshes were made from (ADR-0108 C3: renamed from \`last\` when pose steps came, so a reader
|
|
69
98
|
* of the old name would not go on reading it unawares). Pose steps move the meshes past it: for the values as they
|
|
@@ -128,10 +157,17 @@ export declare class FigureRig {
|
|
|
128
157
|
update(): void;
|
|
129
158
|
/** The values as they stand now -- an evaluation, made if pose steps moved past the last one (fresh on read). */
|
|
130
159
|
evaluation(): FigureAssetEvaluation;
|
|
160
|
+
private movesMerged;
|
|
131
161
|
/** A pose step: each written body slot's matrix, the rows that moved, the places that moved. */
|
|
132
162
|
private movePoses;
|
|
133
163
|
/** The meshes made from an evaluation, and where each of its body slots is drawn for the pose steps that follow. */
|
|
134
164
|
private draw;
|
|
165
|
+
/**
|
|
166
|
+
* The merged meshes for these groups of still parts: kept while every part keeps its shape, segments and pose objects,
|
|
167
|
+
* made again (from the bank) when one changed, taken away when the group is gone. Returns the bodies to draw one by one:
|
|
168
|
+
* the plan's, and any group the bank had no room for.
|
|
169
|
+
*/
|
|
170
|
+
private drawMerged;
|
|
135
171
|
/**
|
|
136
172
|
* The node a held thing hangs from at one place (`capabilities.bindings`). It is a child of the group that every
|
|
137
173
|
* update moves to the place's pose, so what hangs from it follows the part it sits on -- through the joints too --
|
|
@@ -144,13 +180,17 @@ export declare class FigureRig {
|
|
|
144
180
|
/** A pose as a matrix, written into the one scratch matrix (not kept: the next call overwrites it). */
|
|
145
181
|
private static matrixOf;
|
|
146
182
|
/**
|
|
147
|
-
* The body a pick landed on: a mesh drawn alone is its body; an instance of a batch is the copy drawn at that index
|
|
148
|
-
*
|
|
183
|
+
* The body a pick landed on: a mesh drawn alone is its body; an instance of a batch is the copy drawn at that index; a
|
|
184
|
+
* face of a merged mesh is the part whose triangles hold it (a raycast's \`faceIndex\`). Undefined for anything that is
|
|
185
|
+
* not this rig's, or a merged mesh asked without a face.
|
|
149
186
|
*/
|
|
150
|
-
bodyAt(object: THREE.Object3D, instanceId?: number): string | undefined;
|
|
151
|
-
/**
|
|
187
|
+
bodyAt(object: THREE.Object3D, instanceId?: number, faceIndex?: number): string | undefined;
|
|
188
|
+
/** Where a body is drawn now, or undefined when it is not (hidden, or no such body). */
|
|
189
|
+
drawOf(id: string): FigureDraw | undefined;
|
|
190
|
+
/** How the bodies are drawn now: a draw per batch, per merged group and per body drawn alone (what the grade counts). */
|
|
152
191
|
get draws(): {
|
|
153
192
|
batches: number;
|
|
193
|
+
merged: number;
|
|
154
194
|
alone: number;
|
|
155
195
|
instances: number;
|
|
156
196
|
};
|
|
@@ -165,7 +205,7 @@ export declare class FigureRig {
|
|
|
165
205
|
private dress;
|
|
166
206
|
private colourOf;
|
|
167
207
|
private materialFor;
|
|
168
|
-
/**
|
|
208
|
+
/** The mesh a body drawn alone has, by its id. A merged part or a copy has none of its own: read \`drawOf\`. */
|
|
169
209
|
meshOf(id: string): THREE.Mesh | undefined;
|
|
170
210
|
/** The bodies that are currently drawn, by id: alone or as an instance of a batch. A hidden body is not in the group. */
|
|
171
211
|
drawnIds(): string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"figure-rig.d.ts","sourceRoot":"","sources":["../../src/figure/figure-rig.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"figure-rig.d.ts","sourceRoot":"","sources":["../../src/figure/figure-rig.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hatiolab/things-scene",
|
|
3
|
-
"version": "10.1.
|
|
3
|
+
"version": "10.1.70",
|
|
4
4
|
"description": "A high-performance 2D/3D scene graph library for building interactive visual editors, combining HTML5 Canvas and Three.js to enable facility visualization, data-driven animations, and real-time monitoring dashboards",
|
|
5
5
|
"main": "things-scene-min.js",
|
|
6
6
|
"module": "things-scene.mjs",
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
},
|
|
92
92
|
"homepage": "https://github.com/hatiolab/things-scene#readme",
|
|
93
93
|
"dependencies": {
|
|
94
|
-
"@hatiolab/figure-model": "^0.
|
|
94
|
+
"@hatiolab/figure-model": "^0.3.0",
|
|
95
95
|
"@wizpanda/super-gif": "^0.0.6",
|
|
96
96
|
"dompurify": "^3.3.1",
|
|
97
97
|
"jsonata": "^1.8.6",
|