@idetik/core 0.45.4 → 0.46.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 +6 -3
- package/dist/index.d.ts +303 -247
- package/dist/index.js +756 -729
- package/dist/index.js.map +1 -1
- package/dist/index.umd.cjs +19 -19
- package/dist/index.umd.cjs.map +1 -1
- package/dist/types/src/core/layer.d.ts +4 -2
- package/dist/types/src/core/layer.d.ts.map +1 -1
- package/dist/types/src/core/stats.d.ts +51 -0
- package/dist/types/src/core/stats.d.ts.map +1 -0
- package/dist/types/src/core/viewport.d.ts +20 -33
- package/dist/types/src/core/viewport.d.ts.map +1 -1
- package/dist/types/src/idetik.d.ts +18 -41
- package/dist/types/src/idetik.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +3 -1
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/objects/cameras/controls.d.ts +3 -2
- package/dist/types/src/objects/cameras/controls.d.ts.map +1 -1
- package/dist/types/src/objects/cameras/orbit_controls.d.ts +3 -2
- package/dist/types/src/objects/cameras/orbit_controls.d.ts.map +1 -1
- package/dist/types/src/objects/cameras/orthographic_camera.d.ts +5 -3
- package/dist/types/src/objects/cameras/orthographic_camera.d.ts.map +1 -1
- package/dist/types/src/objects/cameras/perspective_camera.d.ts +8 -2
- package/dist/types/src/objects/cameras/perspective_camera.d.ts.map +1 -1
- package/dist/types/test/helpers.d.ts +9 -0
- package/dist/types/test/helpers.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { IdetikContext } from "../idetik";
|
|
1
|
+
import type { IdetikContext } from "../idetik";
|
|
2
2
|
import { RenderableObject } from "./renderable_object";
|
|
3
3
|
import { EventContext } from "./event_dispatcher";
|
|
4
|
-
import { Viewport } from "./viewport";
|
|
4
|
+
import type { Viewport } from "./viewport";
|
|
5
5
|
/**
|
|
6
6
|
* The loading lifecycle state of a layer.
|
|
7
7
|
*/
|
|
@@ -115,6 +115,8 @@ export declare abstract class Layer {
|
|
|
115
115
|
* @param _event - The event with clip and world coordinates attached.
|
|
116
116
|
*/
|
|
117
117
|
onEvent(_event: EventContext): void;
|
|
118
|
+
/** Whether the layer is attached to a viewport. */
|
|
119
|
+
get attached(): boolean;
|
|
118
120
|
/**
|
|
119
121
|
* Lifecycle hook that is called automatically when a layer is
|
|
120
122
|
* is attached to a viewport. A layer can only be attached to one viewport
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layer.d.ts","sourceRoot":"","sources":["../../../../src/core/layer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"layer.d.ts","sourceRoot":"","sources":["../../../../src/core/layer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import type { ChunkManager, QueueStats } from "../data/chunk_manager";
|
|
2
|
+
import { type ChunkStats } from "../data/chunk_stats";
|
|
3
|
+
import type { Renderer } from "./renderer";
|
|
4
|
+
import type { Viewport } from "./viewport";
|
|
5
|
+
/** A snapshot of memory used by chunks, renderer textures, and the JS heap. */
|
|
6
|
+
export type MemoryStats = {
|
|
7
|
+
/** Bytes of chunk data in CPU memory, shared across all Idetik instances. */
|
|
8
|
+
cpuChunkBytes: number;
|
|
9
|
+
/** Number of chunks in CPU memory, shared across all Idetik instances. */
|
|
10
|
+
cpuChunkCount: number;
|
|
11
|
+
/** Bytes of texture data resident on this instance's GPU renderer. */
|
|
12
|
+
gpuTextureBytes: number;
|
|
13
|
+
/** Number of textures resident on this instance's GPU renderer. */
|
|
14
|
+
gpuTextureCount: number;
|
|
15
|
+
/** Used JS heap in bytes, when the browser exposes it. Not instance-specific. */
|
|
16
|
+
jsHeapUsedBytes?: number;
|
|
17
|
+
/** JS heap size limit in bytes, when the browser exposes it. */
|
|
18
|
+
jsHeapLimitBytes?: number;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Statistics available through `idetik.stats`.
|
|
22
|
+
*
|
|
23
|
+
* Getters read the current state. Only `chunks` walks chunk states. Reading
|
|
24
|
+
* memory usage, queue counts, or rendered objects does not scan chunks.
|
|
25
|
+
*
|
|
26
|
+
* @group Core
|
|
27
|
+
*/
|
|
28
|
+
export declare class Stats {
|
|
29
|
+
private readonly renderer_;
|
|
30
|
+
private readonly chunkManager_;
|
|
31
|
+
private readonly viewports_;
|
|
32
|
+
/** @hidden */
|
|
33
|
+
constructor(renderer: Renderer, chunkManager: ChunkManager, viewports: readonly Viewport[]);
|
|
34
|
+
/**
|
|
35
|
+
* CPU chunk memory shared across instances, this renderer's GPU texture
|
|
36
|
+
* memory, and optional JS heap figures. Heap figures are not specific to
|
|
37
|
+
* this instance. Sizes are in bytes.
|
|
38
|
+
*/
|
|
39
|
+
get memory(): MemoryStats;
|
|
40
|
+
/** Counts of queued and in-flight chunk requests for this instance. */
|
|
41
|
+
get queue(): QueueStats;
|
|
42
|
+
/**
|
|
43
|
+
* Chunk demand and GPU residency per source, by timepoint, and loading
|
|
44
|
+
* progress per viewport. Each read walks every view's chunk states, so poll
|
|
45
|
+
* it at the rate you need rather than every frame.
|
|
46
|
+
*/
|
|
47
|
+
get chunks(): ChunkStats;
|
|
48
|
+
/** Objects reported by the renderer for the last viewport render. */
|
|
49
|
+
get renderedObjects(): number;
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=stats.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stats.d.ts","sourceRoot":"","sources":["../../../../src/core/stats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAEL,KAAK,UAAU,EAEhB,MAAM,qBAAqB,CAAC;AAI7B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,+EAA+E;AAC/E,MAAM,MAAM,WAAW,GAAG;IACxB,6EAA6E;IAC7E,aAAa,EAAE,MAAM,CAAC;IACtB,0EAA0E;IAC1E,aAAa,EAAE,MAAM,CAAC;IACtB,sEAAsE;IACtE,eAAe,EAAE,MAAM,CAAC;IACxB,mEAAmE;IACnE,eAAe,EAAE,MAAM,CAAC;IACxB,iFAAiF;IACjF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF;;;;;;;GAOG;AACH,qBAAa,KAAK;IAChB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IAEjD,cAAc;gBAEZ,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,SAAS,QAAQ,EAAE;IAOhC;;;;OAIG;IACH,IAAW,MAAM,IAAI,WAAW,CAc/B;IAED,uEAAuE;IACvE,IAAW,KAAK,IAAI,UAAU,CAE7B;IAED;;;;OAIG;IACH,IAAW,MAAM,IAAI,UAAU,CAoB9B;IAED,qEAAqE;IACrE,IAAW,eAAe,IAAI,MAAM,CAEnC;CACF"}
|
|
@@ -4,15 +4,14 @@ import { CameraControls } from "../objects/cameras/controls";
|
|
|
4
4
|
import { Box2 } from "../math/box2";
|
|
5
5
|
import { vec2, vec3 } from "gl-matrix";
|
|
6
6
|
import { EventDispatcher } from "./event_dispatcher";
|
|
7
|
-
import { IdetikContext } from "../idetik";
|
|
8
7
|
/**
|
|
9
8
|
* Initialization properties for constructing a viewport.
|
|
10
9
|
*/
|
|
11
10
|
export type ViewportProps = {
|
|
12
11
|
/** Unique id. Defaults to the element id or a generated id. */
|
|
13
12
|
id?: string;
|
|
14
|
-
/** Host element.
|
|
15
|
-
|
|
13
|
+
/** Host element. */
|
|
14
|
+
domElement: HTMLElement;
|
|
16
15
|
/** The camera the viewport renders with. */
|
|
17
16
|
camera: Camera;
|
|
18
17
|
/** Layers to render in order. */
|
|
@@ -20,17 +19,11 @@ export type ViewportProps = {
|
|
|
20
19
|
/** Input controls driving the camera. */
|
|
21
20
|
cameraControls?: CameraControls;
|
|
22
21
|
};
|
|
23
|
-
interface ResolvedViewportProps extends ViewportProps {
|
|
24
|
-
id: string;
|
|
25
|
-
element: HTMLElement;
|
|
26
|
-
context: IdetikContext;
|
|
27
|
-
}
|
|
28
22
|
/**
|
|
29
23
|
* A region of the canvas that renders a stack of layers through a camera.
|
|
30
24
|
*
|
|
31
25
|
* Every viewport draws into the shared canvas through the area of its host
|
|
32
|
-
* element. The element
|
|
33
|
-
* across viewports.
|
|
26
|
+
* element. The element must be unique across viewports.
|
|
34
27
|
*
|
|
35
28
|
* Viewports also route input. Pointer and wheel events on the host element
|
|
36
29
|
* are enriched with clip and world coordinates and a picking ray, sent to
|
|
@@ -38,12 +31,13 @@ interface ResolvedViewportProps extends ViewportProps {
|
|
|
38
31
|
* propagation.
|
|
39
32
|
*
|
|
40
33
|
* ```ts
|
|
41
|
-
* const
|
|
42
|
-
* canvas,
|
|
43
|
-
*
|
|
34
|
+
* const viewport = new Viewport({
|
|
35
|
+
* domElement: canvas,
|
|
36
|
+
* camera,
|
|
37
|
+
* layers: [imageLayer],
|
|
44
38
|
* });
|
|
39
|
+
* const idetik = new Idetik({ canvas, viewports: [viewport] });
|
|
45
40
|
*
|
|
46
|
-
* const viewport = idetik.getViewport('main')!;
|
|
47
41
|
* viewport.addLayer(labelLayer);
|
|
48
42
|
* ```
|
|
49
43
|
*
|
|
@@ -53,24 +47,23 @@ export declare class Viewport {
|
|
|
53
47
|
/** The viewport's unique identifier. */
|
|
54
48
|
readonly id: string;
|
|
55
49
|
/** The host element defining the viewport's area. */
|
|
56
|
-
readonly
|
|
50
|
+
readonly domElement: HTMLElement;
|
|
57
51
|
/** The camera the viewport renders with. */
|
|
58
52
|
readonly camera: Camera;
|
|
59
53
|
/** The pointer and wheel event dispatcher for the host element. */
|
|
60
54
|
readonly events: EventDispatcher;
|
|
61
55
|
/** Input controls driving the camera. */
|
|
62
56
|
cameraControls?: CameraControls;
|
|
63
|
-
private readonly context_;
|
|
64
57
|
private layers_;
|
|
65
|
-
|
|
66
|
-
constructor(props: ResolvedViewportProps);
|
|
58
|
+
constructor(props: ViewportProps);
|
|
67
59
|
/**
|
|
68
60
|
* The layers rendered by this viewport in order. Layers with `occludes`
|
|
69
61
|
* set draw before non-occluding layers regardless of stack order.
|
|
70
62
|
*/
|
|
71
63
|
get layers(): readonly Layer[];
|
|
72
64
|
/**
|
|
73
|
-
* Adds a layer to the top of the stack.
|
|
65
|
+
* Adds a layer to the top of the stack. Throws if the viewport already
|
|
66
|
+
* contains the layer.
|
|
74
67
|
*
|
|
75
68
|
* @param layer - The layer to add.
|
|
76
69
|
*/
|
|
@@ -89,14 +82,17 @@ export declare class Viewport {
|
|
|
89
82
|
*/
|
|
90
83
|
updateSize(): void;
|
|
91
84
|
/**
|
|
92
|
-
* Computes the viewport's box relative to the given
|
|
85
|
+
* Computes the viewport's box relative to the given element in device
|
|
86
|
+
* pixels, with `y` flipped to match WebGL's bottom-left origin.
|
|
93
87
|
*
|
|
94
|
-
* @param
|
|
95
|
-
*
|
|
88
|
+
* @param element - The element to compute the box against, typically the
|
|
89
|
+
* canvas.
|
|
90
|
+
* @returns The viewport's box in the element's coordinate space.
|
|
96
91
|
*/
|
|
97
|
-
getBoxRelativeTo(
|
|
92
|
+
getBoxRelativeTo(element: HTMLElement): Box2;
|
|
98
93
|
/**
|
|
99
|
-
* The viewport's
|
|
94
|
+
* The viewport's size in device pixels. Measured relative to its own host
|
|
95
|
+
* element, so `x` and `y` are always `0`.
|
|
100
96
|
*/
|
|
101
97
|
getBufferRect(): {
|
|
102
98
|
x: number;
|
|
@@ -123,13 +119,4 @@ export declare class Viewport {
|
|
|
123
119
|
private getBox;
|
|
124
120
|
private updateAspectRatio;
|
|
125
121
|
}
|
|
126
|
-
export declare function validateNewViewport(viewport: {
|
|
127
|
-
id: string;
|
|
128
|
-
element: HTMLElement;
|
|
129
|
-
}, existingViewports: {
|
|
130
|
-
id: string;
|
|
131
|
-
element: HTMLElement;
|
|
132
|
-
}[]): void;
|
|
133
|
-
export declare function parseViewportProps(props: ViewportProps[], canvas: HTMLCanvasElement, context: IdetikContext): Viewport[];
|
|
134
|
-
export {};
|
|
135
122
|
//# sourceMappingURL=viewport.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"viewport.d.ts","sourceRoot":"","sources":["../../../../src/core/viewport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGvC,OAAO,EAAgB,eAAe,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"viewport.d.ts","sourceRoot":"","sources":["../../../../src/core/viewport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGvC,OAAO,EAAgB,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGnE;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,+DAA+D;IAC/D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,oBAAoB;IACpB,UAAU,EAAE,WAAW,CAAC;IACxB,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,iCAAiC;IACjC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IACjB,yCAAyC;IACzC,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,QAAQ;IACnB,wCAAwC;IACxC,SAAgB,EAAE,EAAE,MAAM,CAAC;IAC3B,qDAAqD;IACrD,SAAgB,UAAU,EAAE,WAAW,CAAC;IACxC,4CAA4C;IAC5C,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,mEAAmE;IACnE,SAAgB,MAAM,EAAE,eAAe,CAAC;IACxC,yCAAyC;IAClC,cAAc,CAAC,EAAE,cAAc,CAAC;IAEvC,OAAO,CAAC,OAAO,CAAe;gBAElB,KAAK,EAAE,aAAa;IA+BhC;;;OAGG;IACH,IAAW,MAAM,IAAI,SAAS,KAAK,EAAE,CAEpC;IAED;;;;;OAKG;IACI,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAOnC;;;;OAIG;IACI,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAQtC,4CAA4C;IACrC,eAAe,IAAI,IAAI;IAI9B;;;OAGG;IACI,UAAU,IAAI,IAAI;IAIzB;;;;;;;OAOG;IACI,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IA0BnD;;;OAGG;IACI,aAAa,IAAI;QACtB,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB;IAID;;;;;;OAMG;IACI,YAAY,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,GAAE,MAAU,GAAG,IAAI;IAU5D;;;;;;OAMG;IACI,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,GAAE,MAAU,GAAG,IAAI;IAK7D,OAAO,CAAC,MAAM;IAed,OAAO,CAAC,iBAAiB;CAY1B"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ChunkManager } from "./data/chunk_manager";
|
|
2
|
-
import {
|
|
3
|
-
import { Viewport
|
|
2
|
+
import { Stats } from "./core/stats";
|
|
3
|
+
import { Viewport } from "./core/viewport";
|
|
4
4
|
/**
|
|
5
5
|
* An object updated once per frame after all viewports have rendered.
|
|
6
6
|
*
|
|
@@ -10,7 +10,7 @@ import { Viewport, ViewportProps } from "./core/viewport";
|
|
|
10
10
|
* ```ts
|
|
11
11
|
* const chunkReadout: Overlay = {
|
|
12
12
|
* update(idetik) {
|
|
13
|
-
* div.textContent = `${idetik.
|
|
13
|
+
* div.textContent = `${idetik.stats.memory.cpuChunkCount} chunks`;
|
|
14
14
|
* },
|
|
15
15
|
* };
|
|
16
16
|
*
|
|
@@ -27,8 +27,8 @@ export type Overlay = {
|
|
|
27
27
|
export type IdetikProps = {
|
|
28
28
|
/** The canvas element to render into. */
|
|
29
29
|
canvas: HTMLCanvasElement;
|
|
30
|
-
/**
|
|
31
|
-
viewports?:
|
|
30
|
+
/** Viewports to render at startup. */
|
|
31
|
+
viewports?: Viewport[];
|
|
32
32
|
/** Overlays to run each frame. */
|
|
33
33
|
overlays?: Overlay[];
|
|
34
34
|
/** Shows an FPS meter. Defaults to `false`. */
|
|
@@ -43,23 +43,6 @@ export type IdetikProps = {
|
|
|
43
43
|
export type IdetikContext = {
|
|
44
44
|
chunkManager: ChunkManager;
|
|
45
45
|
};
|
|
46
|
-
/**
|
|
47
|
-
* A snapshot of the runtime's memory usage.
|
|
48
|
-
*/
|
|
49
|
-
export type MemoryStats = {
|
|
50
|
-
/** Bytes of chunk data held in CPU memory. */
|
|
51
|
-
cpuChunkBytes: number;
|
|
52
|
-
/** Number of chunks held in CPU memory. */
|
|
53
|
-
cpuChunkCount: number;
|
|
54
|
-
/** Bytes of texture data resident on the GPU. */
|
|
55
|
-
gpuTextureBytes: number;
|
|
56
|
-
/** Number of textures resident on the GPU. */
|
|
57
|
-
gpuTextureCount: number;
|
|
58
|
-
/** Used JS heap in bytes. */
|
|
59
|
-
jsHeapUsedBytes?: number;
|
|
60
|
-
/** JS heap size limit in bytes. */
|
|
61
|
-
jsHeapLimitBytes?: number;
|
|
62
|
-
};
|
|
63
46
|
/**
|
|
64
47
|
* The entry point of an Idetik application.
|
|
65
48
|
*
|
|
@@ -84,13 +67,15 @@ export type MemoryStats = {
|
|
|
84
67
|
* bottom: 1024,
|
|
85
68
|
* });
|
|
86
69
|
*
|
|
70
|
+
* const canvas = document.querySelector<HTMLCanvasElement>('canvas')!;
|
|
87
71
|
* const idetik = new Idetik({
|
|
88
|
-
* canvas
|
|
89
|
-
* viewports: [{
|
|
72
|
+
* canvas,
|
|
73
|
+
* viewports: [new Viewport({
|
|
74
|
+
* domElement: canvas,
|
|
90
75
|
* camera,
|
|
91
76
|
* layers: [layer],
|
|
92
77
|
* cameraControls: new PanZoomControls(camera),
|
|
93
|
-
* }],
|
|
78
|
+
* })],
|
|
94
79
|
* });
|
|
95
80
|
*
|
|
96
81
|
* idetik.start();
|
|
@@ -105,10 +90,13 @@ export declare class Idetik {
|
|
|
105
90
|
readonly canvas: HTMLCanvasElement;
|
|
106
91
|
/** The registered overlays that update once per frame in order. */
|
|
107
92
|
readonly overlays: Overlay[];
|
|
93
|
+
/** Memory, queue, chunk, and rendered-object statistics. */
|
|
94
|
+
readonly stats: Stats;
|
|
108
95
|
private readonly chunkManager_;
|
|
109
96
|
private readonly context_;
|
|
110
97
|
private readonly renderer_;
|
|
111
98
|
private readonly viewports_;
|
|
99
|
+
private readonly attachments_;
|
|
112
100
|
private readonly stats_?;
|
|
113
101
|
private readonly sizeObserver_;
|
|
114
102
|
private lastAnimationId_?;
|
|
@@ -119,18 +107,6 @@ export declare class Idetik {
|
|
|
119
107
|
* @param params - Initialization properties.
|
|
120
108
|
*/
|
|
121
109
|
constructor(params: IdetikProps);
|
|
122
|
-
/** Counts of queued and in-flight chunk requests. */
|
|
123
|
-
get chunkQueueStats(): import(".").QueueStats;
|
|
124
|
-
/**
|
|
125
|
-
* Chunk demand and GPU residency per source, by timepoint, and loading
|
|
126
|
-
* progress per viewport. Each read walks every view's chunk states and returns a
|
|
127
|
-
* new snapshot, so poll it at the rate you need rather than every frame.
|
|
128
|
-
*/
|
|
129
|
-
get chunkStats(): ChunkStats;
|
|
130
|
-
/** A snapshot of current CPU/GPU/JS heap memory usage. */
|
|
131
|
-
get memoryStats(): MemoryStats;
|
|
132
|
-
/** The number of objects drawn in the last rendered frame. */
|
|
133
|
-
get renderedObjects(): number;
|
|
134
110
|
/** The width of the rendering surface in pixels. */
|
|
135
111
|
get width(): number;
|
|
136
112
|
/** The height of the rendering surface in pixels. */
|
|
@@ -149,11 +125,10 @@ export declare class Idetik {
|
|
|
149
125
|
/**
|
|
150
126
|
* Adds a viewport at runtime.
|
|
151
127
|
*
|
|
152
|
-
* @param
|
|
153
|
-
*
|
|
154
|
-
* @returns The created viewport.
|
|
128
|
+
* @param viewport - The viewport to add.
|
|
129
|
+
* @returns The added viewport.
|
|
155
130
|
*/
|
|
156
|
-
addViewport(
|
|
131
|
+
addViewport(viewport: Viewport): Viewport;
|
|
157
132
|
/**
|
|
158
133
|
* Removes a previously added viewport.
|
|
159
134
|
*
|
|
@@ -186,6 +161,8 @@ export declare class Idetik {
|
|
|
186
161
|
* @returns The instance, for chaining.
|
|
187
162
|
*/
|
|
188
163
|
start(): this;
|
|
164
|
+
private detachRemovedLayers;
|
|
165
|
+
private renderViewport;
|
|
189
166
|
private animate;
|
|
190
167
|
/**
|
|
191
168
|
* Stops the render loop and disconnects input handlers.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"idetik.d.ts","sourceRoot":"","sources":["../../../src/idetik.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"idetik.d.ts","sourceRoot":"","sources":["../../../src/idetik.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAErC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAM3C;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,OAAO,GAAG;IACpB,sCAAsC;IACtC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAClC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,yCAAyC;IACzC,MAAM,EAAE,iBAAiB,CAAC;IAC1B,sCAAsC;IACtC,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,kCAAkC;IAClC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wDAAwD;IACxD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,0DAA0D;IAC1D,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,YAAY,EAAE,YAAY,CAAC;CAC5B,CAAC;AAqCF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,qBAAa,MAAM;IACjB,kDAAkD;IAClD,SAAgB,MAAM,EAAE,iBAAiB,CAAC;IAC1C,mEAAmE;IACnE,SAAgB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpC,4DAA4D;IAC5D,SAAgB,KAAK,EAAE,KAAK,CAAC;IAE7B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;IACzC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA8B;IAC3D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAa;IACrC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoB;IAElD,OAAO,CAAC,gBAAgB,CAAC,CAAS;IAClC,OAAO,CAAC,cAAc,CAA0B;IAEhD;;;;OAIG;gBACS,MAAM,EAAE,WAAW;IA8C/B,oDAAoD;IACpD,IAAW,KAAK,WAEf;IAED,qDAAqD;IACrD,IAAW,MAAM,WAEhB;IAED,qCAAqC;IACrC,IAAW,SAAS,IAAI,SAAS,QAAQ,EAAE,CAE1C;IAED,0CAA0C;IAC1C,IAAW,OAAO,IAAI,OAAO,CAE5B;IAED;;;;;OAKG;IACI,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAIpD;;;;;OAKG;IACI,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,QAAQ;IAgBhD;;;;;OAKG;IACI,cAAc,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO;IA6BlD;;;;OAIG;IACI,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIzC;;;;;OAKG;IACI,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO;IAW/C;;;;OAIG;IACI,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;IAIpD;;;;OAIG;IACI,KAAK;IAkBZ,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,cAAc;IAmBtB,OAAO,CAAC,OAAO;IA2Bf;;OAEG;IACI,IAAI;CAcZ"}
|
|
@@ -43,11 +43,13 @@ export { createExplorationPolicy, createImageSourcePolicy, createNoPrefetchPolic
|
|
|
43
43
|
export type { ImageSourcePolicy, ImageSourcePolicyProps, PriorityCategory, } from "./core/image_source_policy";
|
|
44
44
|
export type { ChannelProps } from "./core/channel";
|
|
45
45
|
export type { LayerState } from "./core/layer";
|
|
46
|
-
export type { IdetikProps,
|
|
46
|
+
export type { IdetikProps, Overlay } from "./idetik";
|
|
47
|
+
export type { MemoryStats } from "./core/stats";
|
|
47
48
|
export type { QueueStats } from "./data/chunk_manager";
|
|
48
49
|
export type { ChunkStats, SourceChunkStats, ViewportChunkStats, } from "./data/chunk_stats";
|
|
49
50
|
export type { SliceCoordinates } from "./data/chunk";
|
|
50
51
|
export type { SliceOrientation } from "./math/axes";
|
|
52
|
+
export { Stats } from "./core/stats";
|
|
51
53
|
export { Color } from "./math/color";
|
|
52
54
|
export type { ColorLike } from "./math/color";
|
|
53
55
|
export { Box2 } from "./math/box2";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,YAAY,EACV,iCAAiC,EACjC,2BAA2B,GAC5B,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,GAChB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAC/E,YAAY,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,YAAY,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,YAAY,EACV,aAAa,EACb,kBAAkB,GACnB,MAAM,6CAA6C,CAAC;AAErD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,YAAY,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AACnF,YAAY,EAAE,yBAAyB,EAAE,MAAM,6CAA6C,CAAC;AAC7F,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,YAAY,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AACzF,YAAY,EAAE,4BAA4B,EAAE,MAAM,gDAAgD,CAAC;AACnG,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,YAAY,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -74,11 +74,12 @@ export type PanZoomControlsProps = {
|
|
|
74
74
|
*
|
|
75
75
|
* const idetik = new Idetik({
|
|
76
76
|
* canvas,
|
|
77
|
-
* viewports: [{
|
|
77
|
+
* viewports: [new Viewport({
|
|
78
|
+
* domElement: canvas,
|
|
78
79
|
* camera,
|
|
79
80
|
* layers: [imageLayer],
|
|
80
81
|
* cameraControls: new PanZoomControls(camera),
|
|
81
|
-
* }],
|
|
82
|
+
* })],
|
|
82
83
|
* });
|
|
83
84
|
* ```
|
|
84
85
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controls.d.ts","sourceRoot":"","sources":["../../../../../src/objects/cameras/controls.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAI3D;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAE3B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B;;;;;OAKG;IACH,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAAC;CACpC;AAED,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;AAE7D;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,2DAA2D;IAC3D,UAAU,CAAC,EAAE,cAAc,CAAC;CAC7B,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"controls.d.ts","sourceRoot":"","sources":["../../../../../src/objects/cameras/controls.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAI3D;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAE3B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B;;;;;OAKG;IACH,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAAC;CACpC;AAED,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;AAE7D;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,2DAA2D;IAC3D,UAAU,CAAC,EAAE,cAAc,CAAC;CAC7B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,qBAAa,eAAgB,YAAW,cAAc;IACpD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAiB;IAC7C,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,UAAU,CAAuB;IAEzC;;;;;OAKG;gBACS,MAAM,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,oBAAoB;IAKrE,yCAAyC;IACzC,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED;;;;;OAKG;IACI,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAkBzC;;;;OAIG;IACI,QAAQ,CAAC,MAAM,EAAE,MAAM;IAE9B,OAAO,CAAC,OAAO;IAoBf,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,YAAY;CAQrB"}
|
|
@@ -31,14 +31,15 @@ export type OrbitControlsProps = {
|
|
|
31
31
|
*
|
|
32
32
|
* const idetik = new Idetik({
|
|
33
33
|
* canvas,
|
|
34
|
-
* viewports: [{
|
|
34
|
+
* viewports: [new Viewport({
|
|
35
|
+
* domElement: canvas,
|
|
35
36
|
* camera,
|
|
36
37
|
* layers: [volumeLayer],
|
|
37
38
|
* cameraControls: new OrbitControls(camera, {
|
|
38
39
|
* radius: 100,
|
|
39
40
|
* target: [40, 40, 10],
|
|
40
41
|
* }),
|
|
41
|
-
* }],
|
|
42
|
+
* })],
|
|
42
43
|
* });
|
|
43
44
|
* ```
|
|
44
45
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orbit_controls.d.ts","sourceRoot":"","sources":["../../../../../src/objects/cameras/orbit_controls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAGzD,OAAO,EAAY,IAAI,EAAE,MAAM,WAAW,CAAC;AAa3C;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,gEAAgE;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yDAAyD;IACzD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2DAA2D;IAC3D,MAAM,CAAC,EAAE,IAAI,CAAC;IACd,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2DAA2D;IAC3D,UAAU,CAAC,EAAE,cAAc,CAAC;CAC7B,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"orbit_controls.d.ts","sourceRoot":"","sources":["../../../../../src/objects/cameras/orbit_controls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAGzD,OAAO,EAAY,IAAI,EAAE,MAAM,WAAW,CAAC;AAa3C;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,gEAAgE;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yDAAyD;IACzD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2DAA2D;IAC3D,MAAM,CAAC,EAAE,IAAI,CAAC;IACd,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2DAA2D;IAC3D,UAAU,CAAC,EAAE,cAAc,CAAC;CAC7B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,aAAc,YAAW,cAAc;IAClD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;IAE5C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA0B;IACzD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAiB;IAE9C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAY;IACrC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAiB;IAE7C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAiB;IAE7C,OAAO,CAAC,gBAAgB,CAAqB;IAE7C;;;;;OAKG;gBACS,MAAM,EAAE,iBAAiB,EAAE,MAAM,CAAC,EAAE,kBAAkB;IAwBlE,2DAA2D;IAC3D,IAAW,MAAM,IAAI,MAAM,CAE1B;IAED,4CAA4C;IAC5C,IAAW,GAAG,IAAI,MAAM,CAEvB;IAED,8CAA8C;IAC9C,IAAW,KAAK,IAAI,MAAM,CAEzB;IAED,6CAA6C;IAC7C,IAAW,MAAM,IAAI,IAAI,CAExB;IAED,wDAAwD;IACxD,IAAW,QAAQ,IAAI,OAAO,CAS7B;IAED;;;;;OAKG;IACI,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAkBzC;;;;;OAKG;IACI,QAAQ,CAAC,EAAE,EAAE,MAAM;IAmC1B,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,aAAa;IAgBrB,OAAO,CAAC,OAAO;IAYf,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,KAAK;IAKb,OAAO,CAAC,GAAG;IAWX,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,iBAAiB;CAU1B"}
|
|
@@ -55,13 +55,15 @@ export type OrthographicCameraProps = {
|
|
|
55
55
|
* bottom: 1024
|
|
56
56
|
* });
|
|
57
57
|
*
|
|
58
|
+
* const canvas = document.querySelector<HTMLCanvasElement>('canvas')!;
|
|
58
59
|
* const idetik = new Idetik({
|
|
59
|
-
* canvas
|
|
60
|
-
* viewports: [{
|
|
60
|
+
* canvas,
|
|
61
|
+
* viewports: [new Viewport({
|
|
62
|
+
* domElement: canvas,
|
|
61
63
|
* camera,
|
|
62
64
|
* layers: [imageLayer],
|
|
63
65
|
* cameraControls: new PanZoomControls(camera),
|
|
64
|
-
* }],
|
|
66
|
+
* })],
|
|
65
67
|
* });
|
|
66
68
|
* ```
|
|
67
69
|
* @group Cameras
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orthographic_camera.d.ts","sourceRoot":"","sources":["../../../../../src/objects/cameras/orthographic_camera.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE9C,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAGL,gBAAgB,EAGjB,MAAM,iBAAiB,CAAC;AAQzB;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,GAAG,EAAE,MAAM,CAAC;IACZ,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,GAAG,EAAE,MAAM,CAAC;IACZ,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sDAAsD;IACtD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,6CAA6C;IAC7C,WAAW,CAAC,EAAE,gBAAgB,CAAC;CAChC,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"orthographic_camera.d.ts","sourceRoot":"","sources":["../../../../../src/objects/cameras/orthographic_camera.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE9C,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAGL,gBAAgB,EAGjB,MAAM,iBAAiB,CAAC;AAQzB;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,GAAG,EAAE,MAAM,CAAC;IACZ,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,GAAG,EAAE,MAAM,CAAC;IACZ,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sDAAsD;IACtD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,6CAA6C;IAC7C,WAAW,CAAC,EAAE,gBAAgB,CAAC;CAChC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,qBAAa,kBAAmB,SAAQ,MAAM;IAE5C,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,oBAAoB,CAAgC;IAC5D,OAAO,CAAC,aAAa,CAAqD;IAC1E,OAAO,CAAC,KAAK,CAAY;IACzB,OAAO,CAAC,SAAS,CAAO;IACxB,OAAO,CAAC,YAAY,CAAmB;IAEvC;;;;OAIG;gBACS,KAAK,EAAE,uBAAuB;IAW1C;;;;;OAKG;IACH,IAAW,YAAY,qBAEtB;IAED;;;;;OAKG;IACI,cAAc,CAAC,WAAW,EAAE,MAAM;IAKzC;;;;;;;;OAQG;IACI,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,uBAAuB;IAYrE,0DAA0D;IAC1D,IAAW,IAAI,IAAI,UAAU,CAE5B;IAED,8CAA8C;IAC9C,IAAW,WAAW,IAAI,gBAAgB,CAEzC;IAED;;;;;;OAMG;IACI,cAAc,CAAC,WAAW,EAAE,gBAAgB;IAoBnD;;;;;;OAMG;IACI,IAAI,CAAC,MAAM,EAAE,MAAM;IAQ1B;;;;;OAKG;IACI,gBAAgB,IAAI,IAAI;IAgB/B,cAAc;IACd,SAAS,CAAC,sBAAsB;CA8BjC"}
|
|
@@ -35,9 +35,15 @@ export type PerspectiveCameraProps = {
|
|
|
35
35
|
* target: [0, 0, 0],
|
|
36
36
|
* });
|
|
37
37
|
*
|
|
38
|
+
* const canvas = document.querySelector<HTMLCanvasElement>('canvas')!;
|
|
38
39
|
* const idetik = new Idetik({
|
|
39
|
-
* canvas
|
|
40
|
-
* viewports: [{
|
|
40
|
+
* canvas,
|
|
41
|
+
* viewports: [new Viewport({
|
|
42
|
+
* domElement: canvas,
|
|
43
|
+
* camera,
|
|
44
|
+
* layers: [volumeLayer],
|
|
45
|
+
* cameraControls: controls
|
|
46
|
+
* })],
|
|
41
47
|
* });
|
|
42
48
|
* ```
|
|
43
49
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"perspective_camera.d.ts","sourceRoot":"","sources":["../../../../../src/objects/cameras/perspective_camera.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAkB,IAAI,EAAE,MAAM,WAAW,CAAC;AAOjD;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,2DAA2D;IAC3D,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wDAAwD;IACxD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,IAAI,CAAC;CACjB,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"perspective_camera.d.ts","sourceRoot":"","sources":["../../../../../src/objects/cameras/perspective_camera.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAkB,IAAI,EAAE,MAAM,WAAW,CAAC;AAOjD;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,2DAA2D;IAC3D,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wDAAwD;IACxD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,IAAI,CAAC;CACjB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,qBAAa,iBAAkB,SAAQ,MAAM;IAC3C,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,YAAY,CAAS;IAE7B;;;;OAIG;gBACS,KAAK,GAAE,sBAA2B;IAyB9C;;;;;;OAMG;IACI,cAAc,CAAC,WAAW,EAAE,MAAM;IAKzC,yDAAyD;IACzD,IAAW,IAAI,IAAI,UAAU,CAE5B;IAED,6CAA6C;IAC7C,IAAW,GAAG,WAEb;IAED;;;;;;;;;OASG;IACI,IAAI,CAAC,MAAM,EAAE,MAAM;IAS1B,cAAc;IACd,SAAS,CAAC,sBAAsB;CASjC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Chunk } from "../src/data/chunk";
|
|
2
2
|
import { Viewport } from "@/core/viewport";
|
|
3
|
+
import { Layer } from "@/core/layer";
|
|
3
4
|
import { OrthographicCamera } from "@/objects/cameras/orthographic_camera";
|
|
4
5
|
import type { IdetikContext } from "@/idetik";
|
|
5
6
|
type ChunkOverrides = Partial<Omit<Chunk, "shape" | "chunkIndex" | "scale" | "offset">> & {
|
|
@@ -21,6 +22,14 @@ export declare function waitFor(check: () => boolean, { timeout, interval }?: {
|
|
|
21
22
|
export declare function createTestElement(id?: string): HTMLElement;
|
|
22
23
|
export declare function createTestCamera(): OrthographicCamera;
|
|
23
24
|
export declare function createTestContext(): IdetikContext;
|
|
25
|
+
export declare class TrackingLayer extends Layer {
|
|
26
|
+
readonly type = "TrackingLayer";
|
|
27
|
+
attachCount: number;
|
|
28
|
+
detachCount: number;
|
|
29
|
+
update(): void;
|
|
30
|
+
protected attach(): void;
|
|
31
|
+
protected detach(): void;
|
|
32
|
+
}
|
|
24
33
|
export declare function createTestViewport(id?: string): Viewport;
|
|
25
34
|
export {};
|
|
26
35
|
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../test/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAE3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,KAAK,cAAc,GAAG,OAAO,CAC3B,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,YAAY,GAAG,OAAO,GAAG,QAAQ,CAAC,CACzD,GAAG;IACF,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAChC,UAAU,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;IAC1C,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;CACnC,CAAC;AAEF,wBAAgB,SAAS,CAAC,SAAS,GAAE,cAAmB,GAAG,KAAK,CA2B/D;AAED,wBAAgB,sBAAsB,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI;qBAUjC,WAAW;;iBAkBpB,OAAO;EAEvB;AAED,wBAAsB,OAAO,CAC3B,KAAK,EAAE,MAAM,OAAO,EACpB,EAAE,OAAa,EAAE,QAAY,EAAE;;;CAAK,iBAQrC;AAED,wBAAgB,iBAAiB,CAAC,EAAE,GAAE,MAAuB,GAAG,WAAW,CAI1E;AAED,wBAAgB,gBAAgB,IAAI,kBAAkB,CAErD;AAED,wBAAgB,iBAAiB,IAAI,aAAa,CAEjD;AAED,wBAAgB,kBAAkB,CAAC,EAAE,GAAE,MAAwB,GAAG,QAAQ,
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../test/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAE3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,KAAK,cAAc,GAAG,OAAO,CAC3B,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,YAAY,GAAG,OAAO,GAAG,QAAQ,CAAC,CACzD,GAAG;IACF,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAChC,UAAU,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;IAC1C,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;CACnC,CAAC;AAEF,wBAAgB,SAAS,CAAC,SAAS,GAAE,cAAmB,GAAG,KAAK,CA2B/D;AAED,wBAAgB,sBAAsB,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI;qBAUjC,WAAW;;iBAkBpB,OAAO;EAEvB;AAED,wBAAsB,OAAO,CAC3B,KAAK,EAAE,MAAM,OAAO,EACpB,EAAE,OAAa,EAAE,QAAY,EAAE;;;CAAK,iBAQrC;AAED,wBAAgB,iBAAiB,CAAC,EAAE,GAAE,MAAuB,GAAG,WAAW,CAI1E;AAED,wBAAgB,gBAAgB,IAAI,kBAAkB,CAErD;AAED,wBAAgB,iBAAiB,IAAI,aAAa,CAEjD;AAED,qBAAa,aAAc,SAAQ,KAAK;IACtC,SAAgB,IAAI,mBAAmB;IAChC,WAAW,SAAK;IAChB,WAAW,SAAK;IAEhB,MAAM;IAEb,SAAS,CAAC,MAAM;IAIhB,SAAS,CAAC,MAAM;CAGjB;AAED,wBAAgB,kBAAkB,CAAC,EAAE,GAAE,MAAwB,GAAG,QAAQ,CAMzE"}
|