@dtour/scatter 0.4.3 → 0.5.0
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 +127 -0
- package/dist/data/analyze.d.ts.map +1 -1
- package/dist/data/arrow.d.ts.map +1 -1
- package/dist/data/colormaps2d.d.ts +1 -1
- package/dist/data/colormaps2d.d.ts.map +1 -1
- package/dist/data/detect.d.ts.map +1 -1
- package/dist/data/messages.d.ts +5 -0
- package/dist/data/messages.d.ts.map +1 -1
- package/dist/data/parquet.d.ts.map +1 -1
- package/dist/data/parse.d.ts.map +1 -1
- package/dist/data/types.d.ts +11 -0
- package/dist/data/types.d.ts.map +1 -1
- package/dist/gpu/client.d.ts +42 -7
- package/dist/gpu/client.d.ts.map +1 -1
- package/dist/gpu/color-pipeline.d.ts.map +1 -1
- package/dist/gpu/messages.d.ts +18 -0
- package/dist/gpu/messages.d.ts.map +1 -1
- package/dist/gpu/pipeline.d.ts.map +1 -1
- package/dist/gpu/projection.d.ts +2 -2
- package/dist/gpu/projection.d.ts.map +1 -1
- package/dist/gpu/residual-pc-pipeline.d.ts.map +1 -1
- package/dist/pca/jacobi.d.ts.map +1 -1
- package/dist/pca/pipeline.d.ts.map +1 -1
- package/dist/renderer.d.ts.map +1 -1
- package/dist/scatter.js +276 -257
- package/dist/selection-requests.d.ts +22 -0
- package/dist/selection-requests.d.ts.map +1 -0
- package/dist/selection.d.ts.map +1 -1
- package/dist/tour/arc-length.d.ts.map +1 -1
- package/dist/tour/geodesic.d.ts.map +1 -1
- package/dist/tour/svd2x2.d.ts.map +1 -1
- package/dist/webgl/client.d.ts.map +1 -1
- package/package.json +6 -6
package/README.md
ADDED
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
# dtour: Scatter
|
|
2
|
+
|
|
3
|
+
This is the dtour rendering engine: a framework-agnostic, high-performance scatter renderer that projects high-dimensional data to 2D and interpolates between tour keyframes on the GPU. It has no UI and no framework dependency — it's the core that [`@dtour/viewer`](../viewer) (React) and, transitively, the [Python widget](../python) are built on.
|
|
4
|
+
|
|
5
|
+
It uses a **three-thread architecture**: GPU work (rendering) runs in one Web Worker, data work (Arrow/Parquet parsing, normalization, selection) in another, and the main thread stays free for UI. Rendering targets **WebGPU** and falls back to **WebGL2**.
|
|
6
|
+
|
|
7
|
+
## Install
|
|
8
|
+
|
|
9
|
+
```sh
|
|
10
|
+
npm install @dtour/scatter
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Quick start
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
import { createScatter } from "@dtour/scatter";
|
|
17
|
+
|
|
18
|
+
const canvas = document.querySelector("canvas")!;
|
|
19
|
+
const scatter = createScatter({ canvas });
|
|
20
|
+
|
|
21
|
+
scatter.loadData(arrowBuffer); // Arrow IPC or Parquet ArrayBuffer (ownership transferred)
|
|
22
|
+
scatter.render();
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
For automatic backend selection with a WebGL2 fallback:
|
|
26
|
+
|
|
27
|
+
```ts
|
|
28
|
+
import { createScatter, createScatterWebGL, detectBackend } from "@dtour/scatter";
|
|
29
|
+
|
|
30
|
+
const backend = await detectBackend(); // "webgpu" | "webgl"
|
|
31
|
+
const scatter =
|
|
32
|
+
backend === "webgpu" ? createScatter({ canvas }) : createScatterWebGL({ canvas });
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## API
|
|
36
|
+
|
|
37
|
+
### `createScatter(options) → ScatterInstance`
|
|
38
|
+
|
|
39
|
+
Also `createScatterWebGL(options)` (same signature and return type, WebGL2 backend).
|
|
40
|
+
|
|
41
|
+
```ts
|
|
42
|
+
type ScatterOptions = {
|
|
43
|
+
canvas: HTMLCanvasElement; // the canvas to render into
|
|
44
|
+
zoom?: number; // initial camera zoom (default 1)
|
|
45
|
+
dpr?: number; // device pixel ratio (default window.devicePixelRatio ?? 1)
|
|
46
|
+
};
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### `ScatterInstance`
|
|
50
|
+
|
|
51
|
+
**Data & tour**
|
|
52
|
+
|
|
53
|
+
```ts
|
|
54
|
+
scatter.loadData(buffer); // Arrow IPC or Parquet ArrayBuffer (ownership transferred)
|
|
55
|
+
scatter.setBases(bases, tourFamily?); // Float32Array[] of p×2 column-major keyframe bases;
|
|
56
|
+
// tourFamily: "hyperdimensional" (default) | "sequential"
|
|
57
|
+
scatter.setTourPosition(position); // scrub along the arc-length path, [0, 1]
|
|
58
|
+
scatter.setDirectBasis(basis); // set a single basis directly (manual/zen modes)
|
|
59
|
+
scatter.startPlayback(speed, direction); // worker-driven rAF playback; direction: 1 | -1
|
|
60
|
+
scatter.stopPlayback();
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
**Camera & style**
|
|
64
|
+
|
|
65
|
+
```ts
|
|
66
|
+
scatter.setCamera({ pan, zoom, insetOffsetY, insetZoom });
|
|
67
|
+
scatter.setCentering("midrange" | "mean");
|
|
68
|
+
scatter.setStyle({ pointSize, opacity, color, minPointSize, fillTarget }); // sizes accept "auto"
|
|
69
|
+
scatter.setBackgroundColor([r, g, b]); // RGB 0–1
|
|
70
|
+
scatter.resize(viewIndex, width, height, dpr?);
|
|
71
|
+
scatter.setMaxPoints(n); // decimate for huge datasets; 0 = render all
|
|
72
|
+
scatter.render();
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
**Color encoding**
|
|
76
|
+
|
|
77
|
+
```ts
|
|
78
|
+
scatter.encodeColor(column, palette?, theme?, colorMap?); // categorical or numeric column
|
|
79
|
+
scatter.encodeColor2D(columnX, columnY, colormap?); // two numeric columns → 2D colormap
|
|
80
|
+
scatter.clearColor();
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
**Selection**
|
|
84
|
+
|
|
85
|
+
```ts
|
|
86
|
+
scatter.selectByColumn(column, { labelIndices, valueRanges });
|
|
87
|
+
scatter.setSelectionMask(mask); // bit-packed, 1 bit/point (ceil(numPoints / 32) u32s)
|
|
88
|
+
scatter.lassoSelect(polygon); // NDC polygon; GPU point-in-polygon test
|
|
89
|
+
scatter.clearSelection();
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
**Previews, 3D, introspection & lifecycle**
|
|
93
|
+
|
|
94
|
+
```ts
|
|
95
|
+
scatter.addPreviewCanvas(id, canvas); // keyframe preview thumbnails
|
|
96
|
+
scatter.resizePreview(id, width, height);
|
|
97
|
+
scatter.removePreviewCanvas(id);
|
|
98
|
+
|
|
99
|
+
scatter.enable3d(); // 3D camera rotation (adds a residual PC as 3rd axis)
|
|
100
|
+
scatter.set3dRotation(matrix); // 3×3 column-major (9 floats)
|
|
101
|
+
scatter.disable3d();
|
|
102
|
+
|
|
103
|
+
scatter.computePCA(); // GPU PCA; result arrives via subscribe("pcaResult")
|
|
104
|
+
await scatter.getProjectedPositions(); // N×2 interleaved Float32Array (spatial indexing)
|
|
105
|
+
await scatter.getPointData(pointIndex);
|
|
106
|
+
await scatter.getMetrics(); // GPU memory, dims, JS heap usage
|
|
107
|
+
await scatter.benchmark(numFrames?); // sweep the tour, time each frame
|
|
108
|
+
|
|
109
|
+
const unsub = scatter.subscribe((status) => { /* ScatterStatus events from both workers */ });
|
|
110
|
+
scatter.destroy(); // terminate workers, release resources
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### Other exports
|
|
114
|
+
|
|
115
|
+
- `detectBackend()` → `Promise<"webgpu" | "webgl">`, and the `ScatterBackend` type.
|
|
116
|
+
- Palettes: `OKABE_ITO`, `GLASBEY_LIGHT`, `GLASBEY_DARK`, `VIRIDIS_25`, `MAGMA_25`.
|
|
117
|
+
- 2D colormaps: `COLORMAP_2D_NAMES`, `COLORMAP_2D_INDEX`, `packColormap2DLut`, and the `Colormap2DName` type.
|
|
118
|
+
- Tour math: `computeArcLengths`, `interpolateAtPosition`.
|
|
119
|
+
- Selection helper: `bitPackIndices`.
|
|
120
|
+
- Types: `ScatterOptions`, `ScatterInstance`, `ScatterStatus`, `Metadata`.
|
|
121
|
+
|
|
122
|
+
## Development
|
|
123
|
+
|
|
124
|
+
```sh
|
|
125
|
+
pnpm --filter @dtour/scatter build # bundle to dist/ (workers inlined)
|
|
126
|
+
pnpm --filter @dtour/scatter dev # watch mode
|
|
127
|
+
```
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/data/analyze.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,eAAO,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/data/analyze.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,eAAO,MAAM,aAAa,WAAY,YAAY,KAAG,cAgBpD,CAAC"}
|
package/dist/data/arrow.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arrow.d.ts","sourceRoot":"","sources":["../../src/data/arrow.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACtC,WAAW,EAAE,iBAAiB,EAAE,CAAC;CAClC,CAAC;AAaF;;;GAGG;AACH,eAAO,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"arrow.d.ts","sourceRoot":"","sources":["../../src/data/arrow.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACtC,WAAW,EAAE,iBAAiB,EAAE,CAAC;CAClC,CAAC;AAaF;;;GAGG;AACH,eAAO,MAAM,SAAS,WAAY,WAAW,KAAG,WAiD/C,CAAC"}
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
* For rank-1 colormaps, B_X2 and B_Y2 are all zeros.
|
|
13
13
|
*/
|
|
14
14
|
/** Colormap name → index mapping, matching the shader's color2d_map_index. */
|
|
15
|
-
export declare const COLORMAP_2D_NAMES: readonly [
|
|
15
|
+
export declare const COLORMAP_2D_NAMES: readonly ['schumann', 'bremm', 'steiger', 'ziegler', 'teulingfig2', 'cubediagonal', 'oklab_polar'];
|
|
16
16
|
export type Colormap2DName = (typeof COLORMAP_2D_NAMES)[number];
|
|
17
17
|
export declare const COLORMAP_2D_INDEX: Record<Colormap2DName, number>;
|
|
18
18
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"colormaps2d.d.ts","sourceRoot":"","sources":["../../src/data/colormaps2d.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,8EAA8E;AAC9E,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"colormaps2d.d.ts","sourceRoot":"","sources":["../../src/data/colormaps2d.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,8EAA8E;AAC9E,eAAO,MAAM,iBAAiB,YAC5B,UAAU,EACV,OAAO,EACP,SAAS,EACT,SAAS,EACT,aAAa,EACb,cAAc,EACd,aAAa,CACL,CAAC;AAEX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEhE,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,cAAc,EAAE,MAAM,CAQ5D,CAAC;AA2LF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,aAAc,MAAM,KAAG,YAAY,GAAG,IAanE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../../src/data/detect.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC;AAU7C,eAAO,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../../src/data/detect.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC;AAU7C,eAAO,MAAM,YAAY,WAAY,WAAW,KAAG,UAYlD,CAAC"}
|
package/dist/data/messages.d.ts
CHANGED
|
@@ -18,6 +18,7 @@ export type MainToData = {
|
|
|
18
18
|
colormap: string;
|
|
19
19
|
} | {
|
|
20
20
|
type: 'selectByColumn';
|
|
21
|
+
id: number;
|
|
21
22
|
column: string;
|
|
22
23
|
labelIndices?: number[];
|
|
23
24
|
valueRanges?: Float32Array;
|
|
@@ -73,13 +74,17 @@ export type DataToGpu = {
|
|
|
73
74
|
} | {
|
|
74
75
|
type: 'selectContinuous';
|
|
75
76
|
dataVersion: number;
|
|
77
|
+
id: number;
|
|
78
|
+
column: string;
|
|
76
79
|
columnIndex: number;
|
|
77
80
|
/** Flat [lo0, hi0, lo1, hi1, ...] pairs. */
|
|
78
81
|
ranges: Float32Array;
|
|
79
82
|
} | {
|
|
80
83
|
type: 'selectCategorical';
|
|
81
84
|
dataVersion: number;
|
|
85
|
+
id: number;
|
|
82
86
|
catColumnName: string;
|
|
87
|
+
labelIndices: number[];
|
|
83
88
|
/** Per-label mask: selectedLabels[labelIdx] = 1 or 0. */
|
|
84
89
|
selectedLabels: Uint32Array;
|
|
85
90
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/data/messages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAG3C,MAAM,MAAM,UAAU,GAClB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,WAAW,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,WAAW,CAAA;CAAE,GACrC;IACE,IAAI,EAAE,aAAa,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACrD,GACD;IACE,IAAI,EAAE,eAAe,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB,GACD;
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/data/messages.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parquet.d.ts","sourceRoot":"","sources":["../../src/data/parquet.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACtC,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,yEAAyE;IACzE,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AA2GF;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"parquet.d.ts","sourceRoot":"","sources":["../../src/data/parquet.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACtC,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,yEAAyE;IACzE,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AA2GF;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,WAAkB,WAAW,KAAG,OAAO,CAAC,aAAa,CAsI5E,CAAC"}
|
package/dist/data/parse.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../src/data/parse.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,MAAM,WAAW,GAAG,YAAY,GAAG;IACvC,6EAA6E;IAC7E,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../src/data/parse.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,MAAM,WAAW,GAAG,YAAY,GAAG;IACvC,6EAA6E;IAC7E,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,WAAkB,WAAW,KAAG,OAAO,CAAC,WAAW,CAuC1E,CAAC"}
|
package/dist/data/types.d.ts
CHANGED
|
@@ -16,16 +16,27 @@ export type AnalyzedData = {
|
|
|
16
16
|
categoricalColumns: CategoricalColumn[];
|
|
17
17
|
rowCount: number;
|
|
18
18
|
};
|
|
19
|
+
/** The most rows {@link Metadata.sample} holds. */
|
|
20
|
+
export declare const SAMPLE_ROWS = 1024;
|
|
19
21
|
export type Metadata = {
|
|
20
22
|
columnNames: string[];
|
|
21
23
|
categoricalColumnNames: string[];
|
|
24
|
+
/** Labels of the categorical and image columns. */
|
|
22
25
|
categoricalLabels: Record<string, string[]>;
|
|
26
|
+
/** String columns whose values are image URLs or data URIs. They aren't categorical. */
|
|
27
|
+
imageColumnNames: string[];
|
|
23
28
|
rowCount: number;
|
|
24
29
|
dimCount: number;
|
|
25
30
|
mins: number[];
|
|
26
31
|
maxes: number[];
|
|
27
32
|
ranges: number[];
|
|
28
33
|
means: number[];
|
|
34
|
+
/**
|
|
35
|
+
* Evenly spaced rows of the numeric columns, at most {@link SAMPLE_ROWS},
|
|
36
|
+
* row-major (`sample[row * dimCount + dim]`), e.g., to estimate how far
|
|
37
|
+
* projections spread.
|
|
38
|
+
*/
|
|
39
|
+
sample: Float32Array;
|
|
29
40
|
/** Raw JSON string from the Parquet "dtour" key_value_metadata entry. Undefined for Arrow files. */
|
|
30
41
|
embeddedConfig?: string;
|
|
31
42
|
};
|
package/dist/data/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/data/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,YAAY,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,WAAW,CAAC;IACrB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,kBAAkB,EAAE,iBAAiB,EAAE,CAAC;IACxC,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,oGAAoG;IACpG,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/data/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,YAAY,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,WAAW,CAAC;IACrB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,kBAAkB,EAAE,iBAAiB,EAAE,CAAC;IACxC,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,mDAAmD;AACnD,eAAO,MAAM,WAAW,OAAO,CAAC;AAEhC,MAAM,MAAM,QAAQ,GAAG;IACrB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,mDAAmD;IACnD,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5C,wFAAwF;IACxF,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB;;;;OAIG;IACH,MAAM,EAAE,YAAY,CAAC;IACrB,oGAAoG;IACpG,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC"}
|
package/dist/gpu/client.d.ts
CHANGED
|
@@ -18,6 +18,11 @@ export type ScatterStatus = {
|
|
|
18
18
|
} | {
|
|
19
19
|
type: 'error';
|
|
20
20
|
message: string;
|
|
21
|
+
}
|
|
22
|
+
/** The GPU device or WebGL context is gone; the renderer can't draw anymore. */
|
|
23
|
+
| {
|
|
24
|
+
type: 'lost';
|
|
25
|
+
message: string;
|
|
21
26
|
} | {
|
|
22
27
|
type: 'pcaResult';
|
|
23
28
|
eigenvectors: Float32Array[];
|
|
@@ -52,9 +57,20 @@ export type ScatterStatus = {
|
|
|
52
57
|
} | {
|
|
53
58
|
type: 'residualPC';
|
|
54
59
|
residualPC: Float32Array;
|
|
55
|
-
}
|
|
60
|
+
}
|
|
61
|
+
/** Selected rows (1 bit per point) and the id of the selection request. */
|
|
62
|
+
| {
|
|
56
63
|
type: 'selectionResult';
|
|
57
64
|
mask: Uint32Array;
|
|
65
|
+
id: number;
|
|
66
|
+
}
|
|
67
|
+
/** Rows that `selectByColumn` selects, with the id, column, and labels of its request. */
|
|
68
|
+
| {
|
|
69
|
+
type: 'columnSelectionResult';
|
|
70
|
+
mask: Uint32Array;
|
|
71
|
+
id: number;
|
|
72
|
+
column: string;
|
|
73
|
+
labelIndices?: number[];
|
|
58
74
|
} | {
|
|
59
75
|
type: 'projectedPositions';
|
|
60
76
|
positions: Float32Array;
|
|
@@ -99,6 +115,12 @@ export type ScatterInstance = {
|
|
|
99
115
|
}) => void;
|
|
100
116
|
/** Set projection centering mode: 'midrange' (default) or 'mean' (center of mass). */
|
|
101
117
|
setCentering: (centering: 'midrange' | 'mean') => void;
|
|
118
|
+
/**
|
|
119
|
+
* Scale the projected coordinates (default 1), in which each column spans
|
|
120
|
+
* [-1, 1] before projection. A scale below 1 fits projections that spread
|
|
121
|
+
* wider, e.g., of many columns, without zooming the camera out.
|
|
122
|
+
*/
|
|
123
|
+
setProjectionScale: (scale: number) => void;
|
|
102
124
|
/** Resize a canvas to the given pixel dimensions (use for DPI-aware sizing). */
|
|
103
125
|
resize: (viewIndex: number, width: number, height: number, dpr?: number) => void;
|
|
104
126
|
/** Request a render of all views. */
|
|
@@ -113,17 +135,30 @@ export type ScatterInstance = {
|
|
|
113
135
|
setBackgroundColor: (color: [number, number, number]) => void;
|
|
114
136
|
/** Clear per-point colors and revert to uniform color. */
|
|
115
137
|
clearColor: () => void;
|
|
116
|
-
/**
|
|
138
|
+
/**
|
|
139
|
+
* Select points by column value. Returns the request id, which
|
|
140
|
+
* `columnSelectionResult` repeats. Selecting the same
|
|
141
|
+
* values again without another selection request in between changes nothing
|
|
142
|
+
* and returns the earlier id.
|
|
143
|
+
*/
|
|
117
144
|
selectByColumn: (column: string, opts: {
|
|
118
145
|
labelIndices?: number[];
|
|
119
146
|
valueRanges?: Float32Array;
|
|
120
|
-
}) =>
|
|
121
|
-
/**
|
|
122
|
-
|
|
147
|
+
}) => number;
|
|
148
|
+
/**
|
|
149
|
+
* Set a bit-packed selection mask (1 bit per point, 32 per u32). Length: ceil(numPoints / 32).
|
|
150
|
+
* Returns the request id, which `selectionResult` repeats, as for lasso and clear.
|
|
151
|
+
*/
|
|
152
|
+
setSelectionMask: (mask: Uint32Array) => number;
|
|
123
153
|
/** Lasso select: send NDC polygon, GPU does point-in-polygon test. */
|
|
124
|
-
lassoSelect: (polygon: Float32Array) =>
|
|
154
|
+
lassoSelect: (polygon: Float32Array) => number;
|
|
125
155
|
/** Clear selection mask — all points visible. */
|
|
126
|
-
clearSelection: () =>
|
|
156
|
+
clearSelection: () => number;
|
|
157
|
+
/**
|
|
158
|
+
* Id of the latest selection request. A result with a lower id belongs to a
|
|
159
|
+
* replaced selection. Loading data replaces any selection.
|
|
160
|
+
*/
|
|
161
|
+
latestSelectionId: () => number;
|
|
127
162
|
/** Request GPU-accelerated PCA computation. Results arrive via subscribe as 'pcaResult'. */
|
|
128
163
|
computePCA: () => void;
|
|
129
164
|
/** Start worker-driven playback. Worker runs its own rAF loop and posts position updates. */
|
package/dist/gpu/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/gpu/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/gpu/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"color-pipeline.d.ts","sourceRoot":"","sources":["../../src/gpu/color-pipeline.ts"],"names":[],"mappings":"AAYA,MAAM,MAAM,cAAc,GAAG;IAC3B,gBAAgB,EAAE,kBAAkB,CAAC;IACrC,iBAAiB,EAAE,kBAAkB,CAAC;IACtC,eAAe,EAAE,kBAAkB,CAAC;IACpC,YAAY,EAAE,SAAS,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,oBAAoB,
|
|
1
|
+
{"version":3,"file":"color-pipeline.d.ts","sourceRoot":"","sources":["../../src/gpu/color-pipeline.ts"],"names":[],"mappings":"AAYA,MAAM,MAAM,cAAc,GAAG;IAC3B,gBAAgB,EAAE,kBAAkB,CAAC;IACrC,iBAAiB,EAAE,kBAAkB,CAAC;IACtC,eAAe,EAAE,kBAAkB,CAAC;IACpC,YAAY,EAAE,SAAS,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,oBAAoB,WAAY,SAAS,KAAG,cAgCxD,CAAC;AAEF,6DAA6D;AAC7D,eAAO,MAAM,oBAAoB,WACvB,SAAS,UACT,kBAAkB,UAClB,SAAS,UACT,SAAS,UACT,SAAS,UACT,SAAS,KAChB,YAUC,CAAC;AAIL,eAAO,MAAM,2BAA2B,WAC9B,SAAS,OACZ,SAAS,aACH,MAAM,gBACH,MAAM,aACT,MAAM,KAChB,IAOF,CAAC;AAEF,eAAO,MAAM,4BAA4B,WAC/B,SAAS,OACZ,SAAS,aACH,MAAM,aACN,MAAM,KAChB,IAMF,CAAC"}
|
package/dist/gpu/messages.d.ts
CHANGED
|
@@ -35,6 +35,11 @@ export type MainToGpu = {
|
|
|
35
35
|
zoom: number;
|
|
36
36
|
insetOffsetY: number;
|
|
37
37
|
insetZoom: number;
|
|
38
|
+
}
|
|
39
|
+
/** Scale of the projected coordinates, in the main view and the previews */
|
|
40
|
+
| {
|
|
41
|
+
type: 'setProjectionScale';
|
|
42
|
+
scale: number;
|
|
38
43
|
} | {
|
|
39
44
|
type: 'resize';
|
|
40
45
|
viewIndex: number;
|
|
@@ -59,11 +64,14 @@ export type MainToGpu = {
|
|
|
59
64
|
} | {
|
|
60
65
|
type: 'setSelectionMask';
|
|
61
66
|
mask: Uint32Array;
|
|
67
|
+
id: number;
|
|
62
68
|
} | {
|
|
63
69
|
type: 'clearSelectionMask';
|
|
70
|
+
id: number;
|
|
64
71
|
} | {
|
|
65
72
|
type: 'lassoSelect';
|
|
66
73
|
polygon: Float32Array;
|
|
74
|
+
id: number;
|
|
67
75
|
} | {
|
|
68
76
|
type: 'computePCA';
|
|
69
77
|
} | {
|
|
@@ -101,6 +109,9 @@ export type GpuToMain = {
|
|
|
101
109
|
} | {
|
|
102
110
|
type: 'error';
|
|
103
111
|
message: string;
|
|
112
|
+
} | {
|
|
113
|
+
type: 'lost';
|
|
114
|
+
message: string;
|
|
104
115
|
} | {
|
|
105
116
|
type: 'pcaResult';
|
|
106
117
|
eigenvectors: Float32Array[];
|
|
@@ -132,6 +143,13 @@ export type GpuToMain = {
|
|
|
132
143
|
} | {
|
|
133
144
|
type: 'selectionResult';
|
|
134
145
|
mask: Uint32Array;
|
|
146
|
+
id: number;
|
|
147
|
+
} | {
|
|
148
|
+
type: 'columnSelectionResult';
|
|
149
|
+
mask: Uint32Array;
|
|
150
|
+
id: number;
|
|
151
|
+
column: string;
|
|
152
|
+
labelIndices?: number[];
|
|
135
153
|
} | {
|
|
136
154
|
type: 'projectedPositions';
|
|
137
155
|
positions: Float32Array;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/gpu/messages.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,SAAS,GACjB;IACE,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,eAAe,CAAC;IACxB,QAAQ,EAAE,WAAW,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb,GACD;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,eAAe,CAAA;CAAE,GACjE;IAAE,IAAI,EAAE,qBAAqB,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC3C;IAIE,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,YAAY,EAAE,CAAC;IAGtB,UAAU,CAAC,EAAE,kBAAkB,GAAG,YAAY,CAAC;CAChD,GACD;IAGE,IAAI,EAAE,iBAAiB,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;CAClB,GACD;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GACD;IACE,sFAAsF;IACtF,IAAI,EAAE,cAAc,CAAC;IACrB,SAAS,EAAE,UAAU,GAAG,MAAM,CAAC;CAChC,GACD;IACE,IAAI,EAAE,WAAW,CAAC;IAClB,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB,
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/gpu/messages.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../src/gpu/pipeline.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,aAAa,GAAG;IAC1B,sEAAsE;IACtE,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,8FAA8F;IAC9F,cAAc,EAAE,iBAAiB,CAAC;IAClC,uFAAuF;IACvF,mBAAmB,EAAE,iBAAiB,CAAC;IACvC,eAAe,EAAE,kBAAkB,CAAC;IACpC,aAAa,EAAE,SAAS,CAAC;IACzB,YAAY,EAAE,SAAS,CAAC;IACxB,uEAAuE;IACvE,qBAAqB,EAAE,SAAS,CAAC;IACjC,sEAAsE;IACtE,sBAAsB,EAAE,SAAS,CAAC;IAClC,8EAA8E;IAC9E,uBAAuB,EAAE,SAAS,CAAC;CACpC,CAAC;AAuCF,yEAAyE;AACzE,MAAM,MAAM,UAAU,GAAG;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,kBAAkB,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF,oFAAoF;AACpF,MAAM,MAAM,aAAa,GAAG;IAC1B,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,uFAAuF;AACvF,MAAM,MAAM,SAAS,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAEtC,uDAAuD;AACvD,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IAEjB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,gBAAgB,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,mEAAmE;IACnE,YAAY,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,SAAS,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,KAAK,EAAE,OAAO,CAAC;IACf,qEAAqE;IACrE,QAAQ,EAAE,YAAY,GAAG,IAAI,CAAC;CAC/B,CAAC;AA8CF,eAAO,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../src/gpu/pipeline.ts"],"names":[],"mappings":"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"}
|
package/dist/gpu/projection.d.ts
CHANGED
|
@@ -12,9 +12,9 @@ export type ProjectionResources = {
|
|
|
12
12
|
projectedBuffer: GPUBuffer;
|
|
13
13
|
bindGroup: GPUBindGroup;
|
|
14
14
|
};
|
|
15
|
-
export declare const createProjectionResources: (device: GPUDevice, numPoints: number, numDims: number) => Omit<ProjectionResources,
|
|
15
|
+
export declare const createProjectionResources: (device: GPUDevice, numPoints: number, numDims: number) => Omit<ProjectionResources, 'bindGroup'> & {
|
|
16
16
|
bindGroup: null;
|
|
17
17
|
};
|
|
18
|
-
export declare const createProjectionBindGroup: (device: GPUDevice, layout: GPUBindGroupLayout, paramsBuffer: GPUBuffer, res: Omit<ProjectionResources,
|
|
18
|
+
export declare const createProjectionBindGroup: (device: GPUDevice, layout: GPUBindGroupLayout, paramsBuffer: GPUBuffer, res: Omit<ProjectionResources, 'bindGroup'>) => GPUBindGroup;
|
|
19
19
|
export declare const dispatchProjection: (device: GPUDevice, pipeline: ProjectionPipeline, bindGroup: GPUBindGroup, numPoints: number) => GPUCommandBuffer;
|
|
20
20
|
//# sourceMappingURL=projection.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projection.d.ts","sourceRoot":"","sources":["../../src/gpu/projection.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,eAAe,EAAE,kBAAkB,CAAC;IACpC,YAAY,EAAE,SAAS,CAAC;CACzB,CAAC;AAWF,eAAO,MAAM,wBAAwB,
|
|
1
|
+
{"version":3,"file":"projection.d.ts","sourceRoot":"","sources":["../../src/gpu/projection.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,eAAe,EAAE,kBAAkB,CAAC;IACpC,YAAY,EAAE,SAAS,CAAC;CACzB,CAAC;AAWF,eAAO,MAAM,wBAAwB,WAAY,SAAS,KAAG,kBA8B5D,CAAC;AAEF,eAAO,MAAM,qBAAqB,WACxB,SAAS,gBACH,SAAS,aACZ,MAAM,WACR,MAAM,iBACA,MAAM,KACpB,IASF,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,UAAU,EAAE,SAAS,CAAC;IACtB,gBAAgB,EAAE,SAAS,CAAC;IAC5B,WAAW,EAAE,SAAS,CAAC;IACvB,eAAe,EAAE,SAAS,CAAC;IAC3B,SAAS,EAAE,YAAY,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,yBAAyB,WAC5B,SAAS,aACN,MAAM,WACR,MAAM,KACd,IAAI,CAAC,mBAAmB,EAAE,WAAW,CAAC,GAAG;IAAE,SAAS,EAAE,IAAI,CAAA;CA0B5D,CAAC;AAEF,eAAO,MAAM,yBAAyB,WAC5B,SAAS,UACT,kBAAkB,gBACZ,SAAS,OAClB,IAAI,CAAC,mBAAmB,EAAE,WAAW,CAAC,KAC1C,YAWC,CAAC;AAEL,eAAO,MAAM,kBAAkB,WACrB,SAAS,YACP,kBAAkB,aACjB,YAAY,aACZ,MAAM,KAChB,gBAQF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"residual-pc-pipeline.d.ts","sourceRoot":"","sources":["../../src/gpu/residual-pc-pipeline.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAKvC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,eAAe,EAAE,kBAAkB,CAAC;IACpC,aAAa,EAAE,kBAAkB,CAAC;IAClC,eAAe,EAAE,kBAAkB,CAAC;IACpC,YAAY,EAAE,SAAS,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,wBAAwB,
|
|
1
|
+
{"version":3,"file":"residual-pc-pipeline.d.ts","sourceRoot":"","sources":["../../src/gpu/residual-pc-pipeline.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAKvC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,eAAe,EAAE,kBAAkB,CAAC;IACpC,aAAa,EAAE,kBAAkB,CAAC;IAClC,eAAe,EAAE,kBAAkB,CAAC;IACpC,YAAY,EAAE,SAAS,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,wBAAwB,WAAY,SAAS,KAAG,kBAoC5D,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,WACvB,SAAS,YACP,kBAAkB,cAChB,SAAS,oBACH,SAAS,eACd,SAAS,SACf,YAAY,aACR,MAAM,WACR,MAAM,KACd,OAAO,CAAC,YAAY,CAsEtB,CAAC"}
|
package/dist/pca/jacobi.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jacobi.d.ts","sourceRoot":"","sources":["../../src/pca/jacobi.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"jacobi.d.ts","sourceRoot":"","sources":["../../src/pca/jacobi.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,eAAO,MAAM,WAAW,WACd,YAAY,KACjB,MAAM,KACR;IAAE,WAAW,EAAE,YAAY,CAAC;IAAC,YAAY,EAAE,YAAY,EAAE,CAAA;CA8E3D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../src/pca/pipeline.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,WAAW,GAAG;IACxB,eAAe,EAAE,kBAAkB,CAAC;IACpC,aAAa,EAAE,kBAAkB,CAAC;IAClC,eAAe,EAAE,kBAAkB,CAAC;IACpC,YAAY,EAAE,SAAS,CAAC;CACzB,CAAC;AAOF,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../src/pca/pipeline.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,WAAW,GAAG;IACxB,eAAe,EAAE,kBAAkB,CAAC;IACpC,aAAa,EAAE,kBAAkB,CAAC;IAClC,eAAe,EAAE,kBAAkB,CAAC;IACpC,YAAY,EAAE,SAAS,CAAC;CACzB,CAAC;AAOF,eAAO,MAAM,iBAAiB,WAAY,SAAS,KAAG,WAwCrD,CAAC;AAEF,oGAAoG;AACpG,eAAO,MAAM,MAAM,WACT,SAAS,YACP,WAAW,cACT,SAAS,oBACH,SAAS,aAChB,MAAM,WACR,MAAM,KACd,OAAO,CAAC;IAAE,WAAW,EAAE,YAAY,CAAC;IAAC,YAAY,EAAE,YAAY,EAAE,CAAA;CAAE,CAsFrE,CAAC"}
|
package/dist/renderer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE,eAAe,CAAC;IACxB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,MAAM,EAAE,gBAAgB,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE,eAAe,CAAC;IACxB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,MAAM,EAAE,gBAAgB,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,WAAY,eAAe,UAAU,SAAS,KAAG,UAU5E,CAAC;AAQF;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,YACd,iBAAiB,UAClB,cAAc,YACZ,iBAAiB,aAChB,YAAY,aACZ,MAAM,eACL,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,KACnC,IAqBF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,YACjB,iBAAiB,QACpB,UAAU,mBACC,iBAAiB,oBAChB,YAAY,KAC7B,IAeF,CAAC"}
|