@idetik/core 0.1.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/LICENSE.md +21 -0
- package/README.md +23 -0
- package/dist/assets/worker_kernel-BYKAkuPZ.js.map +1 -0
- package/dist/blosc-BOWv2fO7.js +720 -0
- package/dist/blosc-BOWv2fO7.js.map +1 -0
- package/dist/browser-D0q2hNGi.js +525 -0
- package/dist/browser-D0q2hNGi.js.map +1 -0
- package/dist/chunk-INHXZS53-DiyuLb3Z.js +15 -0
- package/dist/chunk-INHXZS53-DiyuLb3Z.js.map +1 -0
- package/dist/gzip-DchmmbTG.js +23 -0
- package/dist/gzip-DchmmbTG.js.map +1 -0
- package/dist/index.d.ts +1865 -0
- package/dist/index.js +13598 -0
- package/dist/index.js.map +1 -0
- package/dist/index.umd.cjs +3938 -0
- package/dist/index.umd.cjs.map +1 -0
- package/dist/lz4-DUlZKApi.js +641 -0
- package/dist/lz4-DUlZKApi.js.map +1 -0
- package/dist/types/examples/ca_wave_dynamics/main.d.ts +2 -0
- package/dist/types/examples/ca_wave_dynamics/main.d.ts.map +1 -0
- package/dist/types/examples/chunk_streaming/chunk_info_overlay.d.ts +13 -0
- package/dist/types/examples/chunk_streaming/chunk_info_overlay.d.ts.map +1 -0
- package/dist/types/examples/chunk_streaming/main.d.ts +2 -0
- package/dist/types/examples/chunk_streaming/main.d.ts.map +1 -0
- package/dist/types/examples/image2d_from_omezarr4d_hcs/main.d.ts +2 -0
- package/dist/types/examples/image2d_from_omezarr4d_hcs/main.d.ts.map +1 -0
- package/dist/types/examples/image2d_from_omezarr5d_u16/main.d.ts +2 -0
- package/dist/types/examples/image2d_from_omezarr5d_u16/main.d.ts.map +1 -0
- package/dist/types/examples/image2d_from_omezarr5d_u16/scale_bar.d.ts +15 -0
- package/dist/types/examples/image2d_from_omezarr5d_u16/scale_bar.d.ts.map +1 -0
- package/dist/types/examples/image_labels_overlay_with_value_picking/main.d.ts +2 -0
- package/dist/types/examples/image_labels_overlay_with_value_picking/main.d.ts.map +1 -0
- package/dist/types/examples/image_mask_overlay/main.d.ts +2 -0
- package/dist/types/examples/image_mask_overlay/main.d.ts.map +1 -0
- package/dist/types/examples/image_series_from_omezarr5d_u8/main.d.ts +2 -0
- package/dist/types/examples/image_series_from_omezarr5d_u8/main.d.ts.map +1 -0
- package/dist/types/examples/image_series_labels_overlay/main.d.ts +2 -0
- package/dist/types/examples/image_series_labels_overlay/main.d.ts.map +1 -0
- package/dist/types/examples/layer_blending/main.d.ts +2 -0
- package/dist/types/examples/layer_blending/main.d.ts.map +1 -0
- package/dist/types/examples/lil_gui_utils.d.ts +18 -0
- package/dist/types/examples/lil_gui_utils.d.ts.map +1 -0
- package/dist/types/examples/multi_viewport/main.d.ts +2 -0
- package/dist/types/examples/multi_viewport/main.d.ts.map +1 -0
- package/dist/types/examples/navigation.d.ts +2 -0
- package/dist/types/examples/navigation.d.ts.map +1 -0
- package/dist/types/examples/ome_zarr_v05/main.d.ts +2 -0
- package/dist/types/examples/ome_zarr_v05/main.d.ts.map +1 -0
- package/dist/types/examples/points/main.d.ts +2 -0
- package/dist/types/examples/points/main.d.ts.map +1 -0
- package/dist/types/examples/projected_lines/main.d.ts +2 -0
- package/dist/types/examples/projected_lines/main.d.ts.map +1 -0
- package/dist/types/examples/s3_private_data/aws_auth.d.ts +17 -0
- package/dist/types/examples/s3_private_data/aws_auth.d.ts.map +1 -0
- package/dist/types/examples/s3_private_data/main.d.ts +2 -0
- package/dist/types/examples/s3_private_data/main.d.ts.map +1 -0
- package/dist/types/examples/tracks/main.d.ts +2 -0
- package/dist/types/examples/tracks/main.d.ts.map +1 -0
- package/dist/types/examples/volume_rendering/main.d.ts +2 -0
- package/dist/types/examples/volume_rendering/main.d.ts.map +1 -0
- package/dist/types/src/core/chunk_manager.d.ts +12 -0
- package/dist/types/src/core/chunk_manager.d.ts.map +1 -0
- package/dist/types/src/core/chunk_manager_source.d.ts +49 -0
- package/dist/types/src/core/chunk_manager_source.d.ts.map +1 -0
- package/dist/types/src/core/color.d.ts +27 -0
- package/dist/types/src/core/color.d.ts.map +1 -0
- package/dist/types/src/core/constants.d.ts +2 -0
- package/dist/types/src/core/constants.d.ts.map +1 -0
- package/dist/types/src/core/event_dispatcher.d.ts +26 -0
- package/dist/types/src/core/event_dispatcher.d.ts.map +1 -0
- package/dist/types/src/core/geometry.d.ts +31 -0
- package/dist/types/src/core/geometry.d.ts.map +1 -0
- package/dist/types/src/core/image_source_policy.d.ts +39 -0
- package/dist/types/src/core/image_source_policy.d.ts.map +1 -0
- package/dist/types/src/core/layer.d.ts +37 -0
- package/dist/types/src/core/layer.d.ts.map +1 -0
- package/dist/types/src/core/layer_manager.d.ts +21 -0
- package/dist/types/src/core/layer_manager.d.ts.map +1 -0
- package/dist/types/src/core/node.d.ts +5 -0
- package/dist/types/src/core/node.d.ts.map +1 -0
- package/dist/types/src/core/renderable_object.d.ts +33 -0
- package/dist/types/src/core/renderable_object.d.ts.map +1 -0
- package/dist/types/src/core/renderer.d.ts +25 -0
- package/dist/types/src/core/renderer.d.ts.map +1 -0
- package/dist/types/src/core/transforms.d.ts +22 -0
- package/dist/types/src/core/transforms.d.ts.map +1 -0
- package/dist/types/src/core/viewport.d.ts +38 -0
- package/dist/types/src/core/viewport.d.ts.map +1 -0
- package/dist/types/src/core/wireframe_geometry.d.ts +5 -0
- package/dist/types/src/core/wireframe_geometry.d.ts.map +1 -0
- package/dist/types/src/data/chunk.d.ts +86 -0
- package/dist/types/src/data/chunk.d.ts.map +1 -0
- package/dist/types/src/data/chunk_queue.d.ts +17 -0
- package/dist/types/src/data/chunk_queue.d.ts.map +1 -0
- package/dist/types/src/data/ome_zarr/0.4/image.d.ts +203 -0
- package/dist/types/src/data/ome_zarr/0.4/image.d.ts.map +1 -0
- package/dist/types/src/data/ome_zarr/0.4/plate.d.ts +174 -0
- package/dist/types/src/data/ome_zarr/0.4/plate.d.ts.map +1 -0
- package/dist/types/src/data/ome_zarr/0.4/well.d.ts +51 -0
- package/dist/types/src/data/ome_zarr/0.4/well.d.ts.map +1 -0
- package/dist/types/src/data/ome_zarr/0.5/image.d.ts +271 -0
- package/dist/types/src/data/ome_zarr/0.5/image.d.ts.map +1 -0
- package/dist/types/src/data/ome_zarr/0.5/plate.d.ts +229 -0
- package/dist/types/src/data/ome_zarr/0.5/plate.d.ts.map +1 -0
- package/dist/types/src/data/ome_zarr/0.5/well.d.ts +72 -0
- package/dist/types/src/data/ome_zarr/0.5/well.d.ts.map +1 -0
- package/dist/types/src/data/ome_zarr/image_loader.d.ts +35 -0
- package/dist/types/src/data/ome_zarr/image_loader.d.ts.map +1 -0
- package/dist/types/src/data/ome_zarr/image_source.d.ts +33 -0
- package/dist/types/src/data/ome_zarr/image_source.d.ts.map +1 -0
- package/dist/types/src/data/ome_zarr/metadata_loaders.d.ts +20 -0
- package/dist/types/src/data/ome_zarr/metadata_loaders.d.ts.map +1 -0
- package/dist/types/src/data/ome_zarr/worker_kernel.d.ts +25 -0
- package/dist/types/src/data/ome_zarr/worker_kernel.d.ts.map +1 -0
- package/dist/types/src/data/ome_zarr/worker_pool.d.ts +8 -0
- package/dist/types/src/data/ome_zarr/worker_pool.d.ts.map +1 -0
- package/dist/types/src/data/promise_scheduler.d.ts +17 -0
- package/dist/types/src/data/promise_scheduler.d.ts.map +1 -0
- package/dist/types/src/data/region.d.ts +19 -0
- package/dist/types/src/data/region.d.ts.map +1 -0
- package/dist/types/src/data/zarr/open.d.ts +27 -0
- package/dist/types/src/data/zarr/open.d.ts.map +1 -0
- package/dist/types/src/data/zarr/web_file_system_store.d.ts +28 -0
- package/dist/types/src/data/zarr/web_file_system_store.d.ts.map +1 -0
- package/dist/types/src/idetik.d.ts +89 -0
- package/dist/types/src/idetik.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +42 -0
- package/dist/types/src/index.d.ts.map +1 -0
- package/dist/types/src/layers/axes_layer.d.ts +10 -0
- package/dist/types/src/layers/axes_layer.d.ts.map +1 -0
- package/dist/types/src/layers/chunked_image_layer.d.ts +66 -0
- package/dist/types/src/layers/chunked_image_layer.d.ts.map +1 -0
- package/dist/types/src/layers/image_layer.d.ts +44 -0
- package/dist/types/src/layers/image_layer.d.ts.map +1 -0
- package/dist/types/src/layers/image_series_layer.d.ts +41 -0
- package/dist/types/src/layers/image_series_layer.d.ts.map +1 -0
- package/dist/types/src/layers/image_series_loader.d.ts +45 -0
- package/dist/types/src/layers/image_series_loader.d.ts.map +1 -0
- package/dist/types/src/layers/label_image_layer.d.ts +38 -0
- package/dist/types/src/layers/label_image_layer.d.ts.map +1 -0
- package/dist/types/src/layers/label_image_series_layer.d.ts +36 -0
- package/dist/types/src/layers/label_image_series_layer.d.ts.map +1 -0
- package/dist/types/src/layers/point_picking.d.ts +11 -0
- package/dist/types/src/layers/point_picking.d.ts.map +1 -0
- package/dist/types/src/layers/projected_line_layer.d.ts +25 -0
- package/dist/types/src/layers/projected_line_layer.d.ts.map +1 -0
- package/dist/types/src/layers/tracks_layer.d.ts +31 -0
- package/dist/types/src/layers/tracks_layer.d.ts.map +1 -0
- package/dist/types/src/layers/volume_layer.d.ts +7 -0
- package/dist/types/src/layers/volume_layer.d.ts.map +1 -0
- package/dist/types/src/math/box2.d.ts +24 -0
- package/dist/types/src/math/box2.d.ts.map +1 -0
- package/dist/types/src/math/box3.d.ts +18 -0
- package/dist/types/src/math/box3.d.ts.map +1 -0
- package/dist/types/src/math/frustum.d.ts +9 -0
- package/dist/types/src/math/frustum.d.ts.map +1 -0
- package/dist/types/src/math/plane.d.ts +10 -0
- package/dist/types/src/math/plane.d.ts.map +1 -0
- package/dist/types/src/math/spherical.d.ts +9 -0
- package/dist/types/src/math/spherical.d.ts.map +1 -0
- package/dist/types/src/objects/cameras/camera.d.ts +23 -0
- package/dist/types/src/objects/cameras/camera.d.ts.map +1 -0
- package/dist/types/src/objects/cameras/controls.d.ts +17 -0
- package/dist/types/src/objects/cameras/controls.d.ts.map +1 -0
- package/dist/types/src/objects/cameras/orbit_controls.d.ts +26 -0
- package/dist/types/src/objects/cameras/orbit_controls.d.ts.map +1 -0
- package/dist/types/src/objects/cameras/orthographic_camera.d.ts +17 -0
- package/dist/types/src/objects/cameras/orthographic_camera.d.ts.map +1 -0
- package/dist/types/src/objects/cameras/perspective_camera.d.ts +21 -0
- package/dist/types/src/objects/cameras/perspective_camera.d.ts.map +1 -0
- package/dist/types/src/objects/geometry/box_geometry.d.ts +6 -0
- package/dist/types/src/objects/geometry/box_geometry.d.ts.map +1 -0
- package/dist/types/src/objects/geometry/plane_geometry.d.ts +5 -0
- package/dist/types/src/objects/geometry/plane_geometry.d.ts.map +1 -0
- package/dist/types/src/objects/geometry/projected_line_geometry.d.ts +8 -0
- package/dist/types/src/objects/geometry/projected_line_geometry.d.ts.map +1 -0
- package/dist/types/src/objects/renderable/image_renderable.d.ts +27 -0
- package/dist/types/src/objects/renderable/image_renderable.d.ts.map +1 -0
- package/dist/types/src/objects/renderable/label_color_map.d.ts +11 -0
- package/dist/types/src/objects/renderable/label_color_map.d.ts.map +1 -0
- package/dist/types/src/objects/renderable/label_image_renderable.d.ts +30 -0
- package/dist/types/src/objects/renderable/label_image_renderable.d.ts.map +1 -0
- package/dist/types/src/objects/renderable/points.d.ts +17 -0
- package/dist/types/src/objects/renderable/points.d.ts.map +1 -0
- package/dist/types/src/objects/renderable/projected_line.d.ts +34 -0
- package/dist/types/src/objects/renderable/projected_line.d.ts.map +1 -0
- package/dist/types/src/objects/renderable/volume_renderable.d.ts +7 -0
- package/dist/types/src/objects/renderable/volume_renderable.d.ts.map +1 -0
- package/dist/types/src/objects/textures/channel.d.ts +23 -0
- package/dist/types/src/objects/textures/channel.d.ts.map +1 -0
- package/dist/types/src/objects/textures/texture.d.ts +28 -0
- package/dist/types/src/objects/textures/texture.d.ts.map +1 -0
- package/dist/types/src/objects/textures/texture_2d.d.ts +16 -0
- package/dist/types/src/objects/textures/texture_2d.d.ts.map +1 -0
- package/dist/types/src/objects/textures/texture_2d_array.d.ts +18 -0
- package/dist/types/src/objects/textures/texture_2d_array.d.ts.map +1 -0
- package/dist/types/src/objects/textures/texture_3d.d.ts +18 -0
- package/dist/types/src/objects/textures/texture_3d.d.ts.map +1 -0
- package/dist/types/src/renderers/WebGLState.d.ts +24 -0
- package/dist/types/src/renderers/WebGLState.d.ts.map +1 -0
- package/dist/types/src/renderers/shaders/index.d.ts +10 -0
- package/dist/types/src/renderers/shaders/index.d.ts.map +1 -0
- package/dist/types/src/renderers/webgl_buffers.d.ts +13 -0
- package/dist/types/src/renderers/webgl_buffers.d.ts.map +1 -0
- package/dist/types/src/renderers/webgl_renderer.d.ts +26 -0
- package/dist/types/src/renderers/webgl_renderer.d.ts.map +1 -0
- package/dist/types/src/renderers/webgl_shader_program.d.ts +14 -0
- package/dist/types/src/renderers/webgl_shader_program.d.ts.map +1 -0
- package/dist/types/src/renderers/webgl_shader_programs.d.ts +9 -0
- package/dist/types/src/renderers/webgl_shader_programs.d.ts.map +1 -0
- package/dist/types/src/renderers/webgl_textures.d.ts +32 -0
- package/dist/types/src/renderers/webgl_textures.d.ts.map +1 -0
- package/dist/types/src/utilities/almost_equal.d.ts +2 -0
- package/dist/types/src/utilities/almost_equal.d.ts.map +1 -0
- package/dist/types/src/utilities/clamp.d.ts +2 -0
- package/dist/types/src/utilities/clamp.d.ts.map +1 -0
- package/dist/types/src/utilities/logger.d.ts +14 -0
- package/dist/types/src/utilities/logger.d.ts.map +1 -0
- package/dist/types/src/utilities/pixel_size_observer.d.ts +13 -0
- package/dist/types/src/utilities/pixel_size_observer.d.ts.map +1 -0
- package/dist/types/src/utilities/renderable_pool.d.ts +8 -0
- package/dist/types/src/utilities/renderable_pool.d.ts.map +1 -0
- package/dist/types/src/utilities/stats.d.ts +6 -0
- package/dist/types/src/utilities/stats.d.ts.map +1 -0
- package/dist/types/src/utilities/uuid_generator.d.ts +2 -0
- package/dist/types/src/utilities/uuid_generator.d.ts.map +1 -0
- package/dist/types/test/box2.test.d.ts +2 -0
- package/dist/types/test/box2.test.d.ts.map +1 -0
- package/dist/types/test/box3.test.d.ts +2 -0
- package/dist/types/test/box3.test.d.ts.map +1 -0
- package/dist/types/test/chunk_queue.test.d.ts +2 -0
- package/dist/types/test/chunk_queue.test.d.ts.map +1 -0
- package/dist/types/test/frustum.test.d.ts +2 -0
- package/dist/types/test/frustum.test.d.ts.map +1 -0
- package/dist/types/test/helpers.d.ts +19 -0
- package/dist/types/test/helpers.d.ts.map +1 -0
- package/dist/types/test/idetik.test.d.ts +2 -0
- package/dist/types/test/idetik.test.d.ts.map +1 -0
- package/dist/types/test/image_source_policy.test.d.ts +2 -0
- package/dist/types/test/image_source_policy.test.d.ts.map +1 -0
- package/dist/types/test/layer.test.d.ts +2 -0
- package/dist/types/test/layer.test.d.ts.map +1 -0
- package/dist/types/test/plane.test.d.ts +2 -0
- package/dist/types/test/plane.test.d.ts.map +1 -0
- package/dist/types/test/projected_line_layer.test.d.ts +2 -0
- package/dist/types/test/projected_line_layer.test.d.ts.map +1 -0
- package/dist/types/test/promise_scheduler.test.d.ts +2 -0
- package/dist/types/test/promise_scheduler.test.d.ts.map +1 -0
- package/dist/types/test/renderable_pool.test.d.ts +2 -0
- package/dist/types/test/renderable_pool.test.d.ts.map +1 -0
- package/dist/types/test/spherical.test.d.ts +2 -0
- package/dist/types/test/spherical.test.d.ts.map +1 -0
- package/dist/types/test/transform.test.d.ts +2 -0
- package/dist/types/test/transform.test.d.ts.map +1 -0
- package/dist/types/test/viewport.test.d.ts +2 -0
- package/dist/types/test/viewport.test.d.ts.map +1 -0
- package/dist/types/test/webgl_renderer.test.d.ts +2 -0
- package/dist/types/test/webgl_renderer.test.d.ts.map +1 -0
- package/dist/types/test/webgl_state.test.d.ts +2 -0
- package/dist/types/test/webgl_state.test.d.ts.map +1 -0
- package/dist/zlib-Din1wO0I.js +23 -0
- package/dist/zlib-Din1wO0I.js.map +1 -0
- package/dist/zstd-DnzmycJs.js +604 -0
- package/dist/zstd-DnzmycJs.js.map +1 -0
- package/package.json +51 -0
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
declare const ALL_CATEGORIES: readonly ["fallbackVisible", "prefetchTime", "visibleCurrent", "fallbackBackground", "prefetchSpace"];
|
|
2
|
+
export type PriorityCategory = (typeof ALL_CATEGORIES)[number];
|
|
3
|
+
export type ImageSourcePolicyConfig = {
|
|
4
|
+
profile?: string;
|
|
5
|
+
prefetch: {
|
|
6
|
+
x: number;
|
|
7
|
+
y: number;
|
|
8
|
+
z?: number;
|
|
9
|
+
t?: number;
|
|
10
|
+
};
|
|
11
|
+
priorityOrder: PriorityCategory[];
|
|
12
|
+
lod?: {
|
|
13
|
+
min?: number;
|
|
14
|
+
max?: number;
|
|
15
|
+
bias?: number;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
export type ImageSourcePolicy = Readonly<{
|
|
19
|
+
profile: string;
|
|
20
|
+
prefetch: {
|
|
21
|
+
x: number;
|
|
22
|
+
y: number;
|
|
23
|
+
z: number;
|
|
24
|
+
t: number;
|
|
25
|
+
};
|
|
26
|
+
priorityOrder: readonly PriorityCategory[];
|
|
27
|
+
priorityMap: Readonly<Record<PriorityCategory, number>>;
|
|
28
|
+
lod: {
|
|
29
|
+
min: number;
|
|
30
|
+
max: number;
|
|
31
|
+
bias: number;
|
|
32
|
+
};
|
|
33
|
+
}>;
|
|
34
|
+
export declare function createImageSourcePolicy(config: ImageSourcePolicyConfig): ImageSourcePolicy;
|
|
35
|
+
export declare function createExplorationPolicy(overrides?: Partial<ImageSourcePolicyConfig>): ImageSourcePolicy;
|
|
36
|
+
export declare function createPlaybackPolicy(overrides?: Partial<ImageSourcePolicyConfig>): ImageSourcePolicy;
|
|
37
|
+
export declare function createNoPrefetchPolicy(overrides?: Partial<ImageSourcePolicyConfig>): ImageSourcePolicy;
|
|
38
|
+
export {};
|
|
39
|
+
//# sourceMappingURL=image_source_policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image_source_policy.d.ts","sourceRoot":"","sources":["../../../../src/core/image_source_policy.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,cAAc,uGAMV,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/D,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE;QACR,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,CAAC,EAAE,MAAM,CAAC;QACX,CAAC,CAAC,EAAE,MAAM,CAAC;KACZ,CAAC;IACF,aAAa,EAAE,gBAAgB,EAAE,CAAC;IAClC,GAAG,CAAC,EAAE;QACJ,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE;QACR,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACX,CAAC;IACF,aAAa,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAC3C,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;IACxD,GAAG,EAAE;QACH,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH,CAAC,CAAC;AAEH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,uBAAuB,GAC9B,iBAAiB,CAoCnB;AAED,wBAAgB,uBAAuB,CACrC,SAAS,GAAE,OAAO,CAAC,uBAAuB,CAAM,GAC/C,iBAAiB,CAanB;AAED,wBAAgB,oBAAoB,CAClC,SAAS,GAAE,OAAO,CAAC,uBAAuB,CAAM,GAC/C,iBAAiB,CAanB;AAED,wBAAgB,sBAAsB,CACpC,SAAS,GAAE,OAAO,CAAC,uBAAuB,CAAM,GAC/C,iBAAiB,CAanB"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { IdetikContext } from "../idetik";
|
|
2
|
+
import { RenderableObject } from "./renderable_object";
|
|
3
|
+
import { EventContext } from "./event_dispatcher";
|
|
4
|
+
export type LayerState = "initialized" | "loading" | "ready";
|
|
5
|
+
export type blendMode = "normal" | "additive" | "subtractive" | "multiply";
|
|
6
|
+
type StateChangeCallback = (newState: LayerState, prevState?: LayerState) => void;
|
|
7
|
+
export interface LayerOptions {
|
|
8
|
+
transparent?: boolean;
|
|
9
|
+
opacity?: number;
|
|
10
|
+
blendMode?: blendMode;
|
|
11
|
+
}
|
|
12
|
+
export declare abstract class Layer {
|
|
13
|
+
abstract readonly type: string;
|
|
14
|
+
private objects_;
|
|
15
|
+
private state_;
|
|
16
|
+
private readonly callbacks_;
|
|
17
|
+
transparent: boolean;
|
|
18
|
+
private opacity_;
|
|
19
|
+
blendMode: blendMode;
|
|
20
|
+
constructor({ transparent, opacity, blendMode, }?: LayerOptions);
|
|
21
|
+
get opacity(): number;
|
|
22
|
+
set opacity(value: number);
|
|
23
|
+
abstract update(): void;
|
|
24
|
+
onEvent(_: EventContext): void;
|
|
25
|
+
onAttached(_context: IdetikContext): Promise<void>;
|
|
26
|
+
onDetached(): void;
|
|
27
|
+
get objects(): RenderableObject[];
|
|
28
|
+
get state(): LayerState;
|
|
29
|
+
addStateChangeCallback(callback: StateChangeCallback): void;
|
|
30
|
+
removeStateChangeCallback(callback: StateChangeCallback): void;
|
|
31
|
+
protected setState(newState: LayerState): void;
|
|
32
|
+
protected addObject(object: RenderableObject): void;
|
|
33
|
+
protected removeObject(object: RenderableObject): void;
|
|
34
|
+
protected clearObjects(): void;
|
|
35
|
+
}
|
|
36
|
+
export {};
|
|
37
|
+
//# sourceMappingURL=layer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layer.d.ts","sourceRoot":"","sources":["../../../../src/core/layer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG,SAAS,GAAG,OAAO,CAAC;AAC7D,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,aAAa,GAAG,UAAU,CAAC;AAE3E,KAAK,mBAAmB,GAAG,CACzB,QAAQ,EAAE,UAAU,EACpB,SAAS,CAAC,EAAE,UAAU,KACnB,IAAI,CAAC;AAEV,MAAM,WAAW,YAAY;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAED,8BAAsB,KAAK;IACzB,kBAAyB,IAAI,EAAE,MAAM,CAAC;IAEtC,OAAO,CAAC,QAAQ,CAA0B;IAC1C,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA6B;IAEjD,WAAW,EAAE,OAAO,CAAC;IAC5B,OAAO,CAAC,QAAQ,CAAS;IAClB,SAAS,EAAE,SAAS,CAAC;gBAEhB,EACV,WAAmB,EACnB,OAAa,EACb,SAAoB,GACrB,GAAE,YAAiB;IAYpB,IAAW,OAAO,IAIQ,MAAM,CAF/B;IAED,IAAW,OAAO,CAAC,KAAK,EAAE,MAAM,EAQ/B;aAEe,MAAM,IAAI,IAAI;IAEvB,OAAO,CAAC,CAAC,EAAE,YAAY,GAAG,IAAI;IAMxB,UAAU,CAAC,QAAQ,EAAE,aAAa;IAExC,UAAU,IAAI,IAAI;IAEzB,IAAW,OAAO,uBAEjB;IAED,IAAW,KAAK,eAEf;IAEM,sBAAsB,CAAC,QAAQ,EAAE,mBAAmB;IAIpD,yBAAyB,CAAC,QAAQ,EAAE,mBAAmB;IAQ9D,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU;IAMvC,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,gBAAgB;IAI5C,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,gBAAgB;IAO/C,SAAS,CAAC,YAAY;CAGvB"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Layer } from "./layer";
|
|
2
|
+
import { IdetikContext } from "../idetik";
|
|
3
|
+
export declare class LayerManager {
|
|
4
|
+
private layers_;
|
|
5
|
+
private callbacks_;
|
|
6
|
+
private readonly context_;
|
|
7
|
+
constructor(context: IdetikContext);
|
|
8
|
+
partitionLayers(): {
|
|
9
|
+
opaque: Layer[];
|
|
10
|
+
transparent: Layer[];
|
|
11
|
+
};
|
|
12
|
+
add(layer: Layer): void;
|
|
13
|
+
remove(layer: Layer): void;
|
|
14
|
+
removeByIndex(index: number): void;
|
|
15
|
+
removeAll(): void;
|
|
16
|
+
get layers(): readonly Layer[];
|
|
17
|
+
private notifyLayersChanged;
|
|
18
|
+
addLayersChangeCallback(callback: () => void): () => void;
|
|
19
|
+
removeLayersChangeCallback(callback: () => void): void;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=layer_manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layer_manager.d.ts","sourceRoot":"","sources":["../../../../src/core/layer_manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,UAAU,CAAyB;IAE3C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;gBAE7B,OAAO,EAAE,aAAa;IAI3B,eAAe,IAAI;QACxB,MAAM,EAAE,KAAK,EAAE,CAAC;QAChB,WAAW,EAAE,KAAK,EAAE,CAAC;KACtB;IAeM,GAAG,CAAC,KAAK,EAAE,KAAK;IAQhB,MAAM,CAAC,KAAK,EAAE,KAAK;IAQnB,aAAa,CAAC,KAAK,EAAE,MAAM;IAS3B,SAAS;IAQhB,IAAW,MAAM,IAAI,SAAS,KAAK,EAAE,CAEpC;IAED,OAAO,CAAC,mBAAmB;IAMpB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAOzD,0BAA0B,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;CAO9D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../../src/core/node.ts"],"names":[],"mappings":"AAEA,8BAAsB,IAAI;IACxB,SAAgB,IAAI,SAAkB;IAEtC,aAAoB,IAAI,IAAI,MAAM,CAAC;CACpC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Node } from "../core/node";
|
|
2
|
+
import { Geometry } from "../core/geometry";
|
|
3
|
+
import { WireframeGeometry } from "../core/wireframe_geometry";
|
|
4
|
+
import { Texture } from "../objects/textures/texture";
|
|
5
|
+
import { TrsTransform } from "../core/transforms";
|
|
6
|
+
import { Shader } from "../renderers/shaders";
|
|
7
|
+
import { Color } from "../core/color";
|
|
8
|
+
export declare abstract class RenderableObject extends Node {
|
|
9
|
+
wireframeEnabled: boolean;
|
|
10
|
+
wireframeColor: Color;
|
|
11
|
+
private readonly textures_;
|
|
12
|
+
private staleTextures_;
|
|
13
|
+
private readonly transform_;
|
|
14
|
+
private geometry_;
|
|
15
|
+
private wireframeGeometry_;
|
|
16
|
+
private programName_;
|
|
17
|
+
setTexture(index: number, texture: Texture): void;
|
|
18
|
+
popStaleTextures(): Texture[];
|
|
19
|
+
get geometry(): Geometry;
|
|
20
|
+
get wireframeGeometry(): WireframeGeometry;
|
|
21
|
+
get textures(): Texture[];
|
|
22
|
+
get transform(): TrsTransform;
|
|
23
|
+
set geometry(geometry: Geometry);
|
|
24
|
+
get programName(): Shader;
|
|
25
|
+
get boundingBox(): import("..").Box3;
|
|
26
|
+
protected set programName(programName: Shader);
|
|
27
|
+
/**
|
|
28
|
+
* Get uniforms for shader program. Override in derived classes that need custom uniforms.
|
|
29
|
+
* @returns Object containing uniform name-value pairs
|
|
30
|
+
*/
|
|
31
|
+
getUniforms(): Record<string, unknown>;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=renderable_object.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderable_object.d.ts","sourceRoot":"","sources":["../../../../src/core/renderable_object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEtC,8BAAsB,gBAAiB,SAAQ,IAAI;IAC1C,gBAAgB,UAAS;IACzB,cAAc,QAAe;IACpC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAiB;IAC3C,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IACjD,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,kBAAkB,CAAkC;IAC5D,OAAO,CAAC,YAAY,CAAuB;IAEpC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAQ1C,gBAAgB;IAMvB,IAAW,QAAQ,IAiBW,QAAQ,CAfrC;IAED,IAAW,iBAAiB,sBAG3B;IAED,IAAW,QAAQ,cAElB;IAED,IAAW,SAAS,iBAEnB;IAED,IAAW,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAGrC;IAED,IAAW,WAAW,IAAI,MAAM,CAK/B;IAED,IAAW,WAAW,sBAIrB;IAED,SAAS,KAAK,WAAW,CAAC,WAAW,EAAE,MAAM,EAE5C;IAED;;;OAGG;IACI,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAG9C"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Camera } from "../objects/cameras/camera";
|
|
2
|
+
import { Color, ColorLike } from "./color";
|
|
3
|
+
import { Layer } from "./layer";
|
|
4
|
+
import { Viewport } from "./viewport";
|
|
5
|
+
export declare abstract class Renderer {
|
|
6
|
+
private readonly canvas_;
|
|
7
|
+
private width_;
|
|
8
|
+
private height_;
|
|
9
|
+
private backgroundColor_;
|
|
10
|
+
protected renderedObjects_: number;
|
|
11
|
+
protected abstract resize(width: number, height: number): void;
|
|
12
|
+
protected abstract renderObject(layer: Layer, objectIndex: number, camera: Camera): void;
|
|
13
|
+
protected abstract clear(): void;
|
|
14
|
+
constructor(canvas: HTMLCanvasElement);
|
|
15
|
+
abstract render(viewport: Viewport): void;
|
|
16
|
+
updateSize(): void;
|
|
17
|
+
private updateRendererSize;
|
|
18
|
+
protected get canvas(): HTMLCanvasElement;
|
|
19
|
+
get width(): number;
|
|
20
|
+
get height(): number;
|
|
21
|
+
get backgroundColor(): Color;
|
|
22
|
+
get renderedObjects(): number;
|
|
23
|
+
set backgroundColor(color: ColorLike);
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=renderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../../../../src/core/renderer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,8BAAsB,QAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2B;IACnD,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,gBAAgB,CAAgC;IAExD,SAAS,CAAC,gBAAgB,SAAK;IAC/B,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAC9D,SAAS,CAAC,QAAQ,CAAC,YAAY,CAC7B,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GACb,IAAI;IACP,SAAS,CAAC,QAAQ,CAAC,KAAK,IAAI,IAAI;gBAEpB,MAAM,EAAE,iBAAiB;aAKrB,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAEzC,UAAU,IAAI,IAAI;IAKzB,OAAO,CAAC,kBAAkB;IAQ1B,SAAS,KAAK,MAAM,sBAEnB;IAED,IAAW,KAAK,WAEf;IAED,IAAW,MAAM,WAEhB;IAED,IAAW,eAAe,IAAI,KAAK,CAElC;IAED,IAAW,eAAe,WAEzB;IAED,IAAW,eAAe,CAAC,KAAK,EAAE,SAAS,EAE1C;CACF"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { mat4, vec3, quat } from "gl-matrix";
|
|
2
|
+
export declare class TrsTransform {
|
|
3
|
+
private dirty_;
|
|
4
|
+
private matrix_;
|
|
5
|
+
private rotation_;
|
|
6
|
+
private translation_;
|
|
7
|
+
private scale_;
|
|
8
|
+
addRotation(q: quat): void;
|
|
9
|
+
setRotation(q: quat): void;
|
|
10
|
+
get rotation(): import("gl-matrix").vec4;
|
|
11
|
+
addTranslation(vec: vec3): void;
|
|
12
|
+
setTranslation(vec: vec3): void;
|
|
13
|
+
get translation(): vec3;
|
|
14
|
+
addScale(vec: vec3): void;
|
|
15
|
+
setScale(vec: vec3): void;
|
|
16
|
+
targetTo(target: vec3): void;
|
|
17
|
+
get scale(): vec3;
|
|
18
|
+
get matrix(): mat4;
|
|
19
|
+
get inverse(): mat4;
|
|
20
|
+
private computeMatrix;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=transforms.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transforms.d.ts","sourceRoot":"","sources":["../../../../src/core/transforms.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAQ,IAAI,EAAE,IAAI,EAAY,MAAM,WAAW,CAAC;AAK7D,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,YAAY,CAAiB;IACrC,OAAO,CAAC,MAAM,CAA4B;IAEnC,WAAW,CAAC,CAAC,EAAE,IAAI;IAKnB,WAAW,CAAC,CAAC,EAAE,IAAI;IAK1B,IAAW,QAAQ,6BAElB;IAEM,cAAc,CAAC,GAAG,EAAE,IAAI;IAKxB,cAAc,CAAC,GAAG,EAAE,IAAI;IAK/B,IAAW,WAAW,SAErB;IAEM,QAAQ,CAAC,GAAG,EAAE,IAAI;IAKlB,QAAQ,CAAC,GAAG,EAAE,IAAI;IAKlB,QAAQ,CAAC,MAAM,EAAE,IAAI;IAgB5B,IAAW,KAAK,SAEf;IAED,IAAW,MAAM,SAMhB;IAED,IAAW,OAAO,SAEjB;IAED,OAAO,CAAC,aAAa;CAQtB"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Camera } from "../objects/cameras/camera";
|
|
2
|
+
import { Layer } from "./layer";
|
|
3
|
+
import { LayerManager } from "./layer_manager";
|
|
4
|
+
import { CameraControls } from "../objects/cameras/controls";
|
|
5
|
+
import { Box2 } from "../math/box2";
|
|
6
|
+
import { vec2, vec3 } from "gl-matrix";
|
|
7
|
+
import { EventDispatcher } from "./event_dispatcher";
|
|
8
|
+
import { IdetikContext } from "../idetik";
|
|
9
|
+
export interface ViewportConfig {
|
|
10
|
+
id?: string;
|
|
11
|
+
element?: HTMLElement;
|
|
12
|
+
camera: Camera;
|
|
13
|
+
layers?: Layer[];
|
|
14
|
+
cameraControls?: CameraControls;
|
|
15
|
+
}
|
|
16
|
+
interface ViewportProps extends ViewportConfig {
|
|
17
|
+
id: string;
|
|
18
|
+
element: HTMLElement;
|
|
19
|
+
layerManager: LayerManager;
|
|
20
|
+
}
|
|
21
|
+
export declare class Viewport {
|
|
22
|
+
readonly id: string;
|
|
23
|
+
readonly element: HTMLElement;
|
|
24
|
+
readonly camera: Camera;
|
|
25
|
+
readonly layerManager: LayerManager;
|
|
26
|
+
readonly events: EventDispatcher;
|
|
27
|
+
cameraControls?: CameraControls;
|
|
28
|
+
constructor(props: ViewportProps);
|
|
29
|
+
updateSize(): void;
|
|
30
|
+
getBoxRelativeTo(canvas: HTMLCanvasElement): Box2;
|
|
31
|
+
clientToClip(position: vec2, depth?: number): vec3;
|
|
32
|
+
clientToWorld(position: vec2, depth?: number): vec3;
|
|
33
|
+
private getBox;
|
|
34
|
+
private updateAspectRatio;
|
|
35
|
+
}
|
|
36
|
+
export declare function parseViewportConfigs(viewportConfigs: ViewportConfig[], canvas: HTMLCanvasElement, context: IdetikContext): Viewport[];
|
|
37
|
+
export {};
|
|
38
|
+
//# sourceMappingURL=viewport.d.ts.map
|
|
@@ -0,0 +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,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,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;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,MAAM,WAAW,cAAc;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IACjB,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAED,UAAU,aAAc,SAAQ,cAAc;IAC5C,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,WAAW,CAAC;IACrB,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED,qBAAa,QAAQ;IACnB,SAAgB,EAAE,EAAE,MAAM,CAAC;IAC3B,SAAgB,OAAO,EAAE,WAAW,CAAC;IACrC,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAgB,YAAY,EAAE,YAAY,CAAC;IAC3C,SAAgB,MAAM,EAAE,eAAe,CAAC;IACjC,cAAc,CAAC,EAAE,cAAc,CAAC;gBAE3B,KAAK,EAAE,aAAa;IA8BzB,UAAU,IAAI,IAAI;IAIlB,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IA0BjD,YAAY,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,GAAE,MAAU,GAAG,IAAI;IAUrD,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,GAAE,MAAU,GAAG,IAAI;IAK7D,OAAO,CAAC,MAAM;IAed,OAAO,CAAC,iBAAiB;CAY1B;AA4BD,wBAAgB,oBAAoB,CAClC,eAAe,EAAE,cAAc,EAAE,EACjC,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,aAAa,GACrB,QAAQ,EAAE,CAYZ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wireframe_geometry.d.ts","sourceRoot":"","sources":["../../../../src/core/wireframe_geometry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,qBAAa,iBAAkB,SAAQ,QAAQ;gBACjC,QAAQ,EAAE,QAAQ;CA8C/B"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { Region } from "./region";
|
|
2
|
+
import { TextureUnpackRowAlignment } from "../objects/textures/texture";
|
|
3
|
+
import { PromiseScheduler } from "./promise_scheduler";
|
|
4
|
+
declare const chunkDataTypes: readonly [Int8ArrayConstructor, Int16ArrayConstructor, Int32ArrayConstructor, Uint8ArrayConstructor, Uint16ArrayConstructor, Uint32ArrayConstructor, Float32ArrayConstructor];
|
|
5
|
+
export type ChunkDataConstructor = (typeof chunkDataTypes)[number];
|
|
6
|
+
export type ChunkData = InstanceType<ChunkDataConstructor>;
|
|
7
|
+
export declare function isChunkData(value: unknown): value is ChunkData;
|
|
8
|
+
export type Chunk = {
|
|
9
|
+
data?: ChunkData;
|
|
10
|
+
state: "unloaded" | "queued" | "loading" | "loaded";
|
|
11
|
+
lod: number;
|
|
12
|
+
visible: boolean;
|
|
13
|
+
prefetch: boolean;
|
|
14
|
+
priority: number | null;
|
|
15
|
+
orderKey: number | null;
|
|
16
|
+
shape: {
|
|
17
|
+
x: number;
|
|
18
|
+
y: number;
|
|
19
|
+
z: number;
|
|
20
|
+
c: number;
|
|
21
|
+
};
|
|
22
|
+
rowAlignmentBytes: TextureUnpackRowAlignment;
|
|
23
|
+
chunkIndex: {
|
|
24
|
+
x: number;
|
|
25
|
+
y: number;
|
|
26
|
+
z: number;
|
|
27
|
+
c: number;
|
|
28
|
+
t: number;
|
|
29
|
+
};
|
|
30
|
+
scale: {
|
|
31
|
+
x: number;
|
|
32
|
+
y: number;
|
|
33
|
+
z: number;
|
|
34
|
+
};
|
|
35
|
+
offset: {
|
|
36
|
+
x: number;
|
|
37
|
+
y: number;
|
|
38
|
+
z: number;
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
export type SourceDimensionMap = {
|
|
42
|
+
x: SourceDimension;
|
|
43
|
+
y: SourceDimension;
|
|
44
|
+
z?: SourceDimension;
|
|
45
|
+
c?: SourceDimension;
|
|
46
|
+
t?: SourceDimension;
|
|
47
|
+
numLods: number;
|
|
48
|
+
};
|
|
49
|
+
export type SourceDimension = {
|
|
50
|
+
name: string;
|
|
51
|
+
index: number;
|
|
52
|
+
unit?: string;
|
|
53
|
+
lods: SourceDimensionLod[];
|
|
54
|
+
};
|
|
55
|
+
export type SourceDimensionLod = {
|
|
56
|
+
size: number;
|
|
57
|
+
chunkSize: number;
|
|
58
|
+
scale: number;
|
|
59
|
+
translation: number;
|
|
60
|
+
};
|
|
61
|
+
export type SliceCoordinates = {
|
|
62
|
+
z?: number;
|
|
63
|
+
c?: number;
|
|
64
|
+
t?: number;
|
|
65
|
+
};
|
|
66
|
+
export type ChunkSource = {
|
|
67
|
+
open(): Promise<ChunkLoader>;
|
|
68
|
+
};
|
|
69
|
+
export type LoaderAttributes = {
|
|
70
|
+
dimensionNames: string[];
|
|
71
|
+
dimensionUnits: (string | undefined)[];
|
|
72
|
+
chunks: readonly number[];
|
|
73
|
+
shape: readonly number[];
|
|
74
|
+
scale: readonly number[];
|
|
75
|
+
translation: readonly number[];
|
|
76
|
+
};
|
|
77
|
+
export type ChunkLoader = {
|
|
78
|
+
loadRegion(input: Region, lod: number, scheduler?: PromiseScheduler): Promise<Chunk>;
|
|
79
|
+
getSourceDimensionMap(): SourceDimensionMap;
|
|
80
|
+
loadChunkData(chunk: Chunk, signal: AbortSignal): Promise<void>;
|
|
81
|
+
getAttributes(): ReadonlyArray<LoaderAttributes>;
|
|
82
|
+
};
|
|
83
|
+
export declare function coordToIndex(lod: SourceDimensionLod, coord: number): number;
|
|
84
|
+
export declare function coordToChunkIndex(lod: SourceDimensionLod, coord: number): number;
|
|
85
|
+
export {};
|
|
86
|
+
//# sourceMappingURL=chunk.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunk.d.ts","sourceRoot":"","sources":["../../../../src/data/chunk.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Chunk } from "./chunk";
|
|
2
|
+
type LoaderFn = (signal: AbortSignal) => Promise<void>;
|
|
3
|
+
export declare class ChunkQueue {
|
|
4
|
+
private readonly maxConcurrent_;
|
|
5
|
+
private readonly pending_;
|
|
6
|
+
private readonly running_;
|
|
7
|
+
constructor(maxConcurrent?: number);
|
|
8
|
+
enqueue(chunk: Chunk, fn: LoaderFn): void;
|
|
9
|
+
flush(): void;
|
|
10
|
+
cancel(chunk: Chunk): void;
|
|
11
|
+
get pendingCount(): number;
|
|
12
|
+
get runningCount(): number;
|
|
13
|
+
private pump;
|
|
14
|
+
private start;
|
|
15
|
+
}
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=chunk_queue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunk_queue.d.ts","sourceRoot":"","sources":["../../../../src/data/chunk_queue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAKhC,KAAK,QAAQ,GAAG,CAAC,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAIvD,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAGrB;gBAEQ,aAAa,SAAiB;IAInC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ;IAOlC,KAAK;IAIL,MAAM,CAAC,KAAK,EAAE,KAAK;IAe1B,IAAW,YAAY,WAEtB;IAED,IAAW,YAAY,WAEtB;IAED,OAAO,CAAC,IAAI;IA8BZ,OAAO,CAAC,KAAK;CAyBd"}
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
/**JSON from OME-NGFF .zattrs*/
|
|
3
|
+
export declare const Image: z.ZodObject<{
|
|
4
|
+
/**The multiscale datasets for this image*/
|
|
5
|
+
multiscales: z.ZodArray<z.ZodObject<{
|
|
6
|
+
name: z.ZodOptional<z.ZodString>;
|
|
7
|
+
datasets: z.ZodArray<z.ZodObject<{
|
|
8
|
+
path: z.ZodString;
|
|
9
|
+
coordinateTransformations: z.ZodArray<z.ZodEffects<z.ZodAny, any, any>, "many">;
|
|
10
|
+
}, "strip", z.ZodTypeAny, {
|
|
11
|
+
path: string;
|
|
12
|
+
coordinateTransformations: any[];
|
|
13
|
+
}, {
|
|
14
|
+
path: string;
|
|
15
|
+
coordinateTransformations: any[];
|
|
16
|
+
}>, "many">;
|
|
17
|
+
version: z.ZodOptional<z.ZodLiteral<"0.4">>;
|
|
18
|
+
axes: z.ZodArray<z.ZodEffects<z.ZodAny, any, any>, "many">;
|
|
19
|
+
coordinateTransformations: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodAny, any, any>, "many">>;
|
|
20
|
+
}, "strip", z.ZodTypeAny, {
|
|
21
|
+
datasets: {
|
|
22
|
+
path: string;
|
|
23
|
+
coordinateTransformations: any[];
|
|
24
|
+
}[];
|
|
25
|
+
axes: any[];
|
|
26
|
+
name?: string | undefined;
|
|
27
|
+
coordinateTransformations?: any[] | undefined;
|
|
28
|
+
version?: "0.4" | undefined;
|
|
29
|
+
}, {
|
|
30
|
+
datasets: {
|
|
31
|
+
path: string;
|
|
32
|
+
coordinateTransformations: any[];
|
|
33
|
+
}[];
|
|
34
|
+
axes: any[];
|
|
35
|
+
name?: string | undefined;
|
|
36
|
+
coordinateTransformations?: any[] | undefined;
|
|
37
|
+
version?: "0.4" | undefined;
|
|
38
|
+
}>, "many">;
|
|
39
|
+
omero: z.ZodOptional<z.ZodObject<{
|
|
40
|
+
channels: z.ZodArray<z.ZodObject<{
|
|
41
|
+
window: z.ZodObject<{
|
|
42
|
+
end: z.ZodNumber;
|
|
43
|
+
max: z.ZodNumber;
|
|
44
|
+
min: z.ZodNumber;
|
|
45
|
+
start: z.ZodNumber;
|
|
46
|
+
}, "strip", z.ZodTypeAny, {
|
|
47
|
+
min: number;
|
|
48
|
+
max: number;
|
|
49
|
+
end: number;
|
|
50
|
+
start: number;
|
|
51
|
+
}, {
|
|
52
|
+
min: number;
|
|
53
|
+
max: number;
|
|
54
|
+
end: number;
|
|
55
|
+
start: number;
|
|
56
|
+
}>;
|
|
57
|
+
label: z.ZodOptional<z.ZodString>;
|
|
58
|
+
family: z.ZodOptional<z.ZodString>;
|
|
59
|
+
color: z.ZodString;
|
|
60
|
+
active: z.ZodOptional<z.ZodBoolean>;
|
|
61
|
+
}, "strip", z.ZodTypeAny, {
|
|
62
|
+
color: string;
|
|
63
|
+
window: {
|
|
64
|
+
min: number;
|
|
65
|
+
max: number;
|
|
66
|
+
end: number;
|
|
67
|
+
start: number;
|
|
68
|
+
};
|
|
69
|
+
label?: string | undefined;
|
|
70
|
+
family?: string | undefined;
|
|
71
|
+
active?: boolean | undefined;
|
|
72
|
+
}, {
|
|
73
|
+
color: string;
|
|
74
|
+
window: {
|
|
75
|
+
min: number;
|
|
76
|
+
max: number;
|
|
77
|
+
end: number;
|
|
78
|
+
start: number;
|
|
79
|
+
};
|
|
80
|
+
label?: string | undefined;
|
|
81
|
+
family?: string | undefined;
|
|
82
|
+
active?: boolean | undefined;
|
|
83
|
+
}>, "many">;
|
|
84
|
+
rdefs: z.ZodOptional<z.ZodObject<{
|
|
85
|
+
defaultT: z.ZodOptional<z.ZodNumber>;
|
|
86
|
+
defaultZ: z.ZodOptional<z.ZodNumber>;
|
|
87
|
+
color: z.ZodOptional<z.ZodEnum<["color", "greyscale"]>>;
|
|
88
|
+
projection: z.ZodOptional<z.ZodString>;
|
|
89
|
+
}, "strip", z.ZodTypeAny, {
|
|
90
|
+
color?: "color" | "greyscale" | undefined;
|
|
91
|
+
defaultT?: number | undefined;
|
|
92
|
+
defaultZ?: number | undefined;
|
|
93
|
+
projection?: string | undefined;
|
|
94
|
+
}, {
|
|
95
|
+
color?: "color" | "greyscale" | undefined;
|
|
96
|
+
defaultT?: number | undefined;
|
|
97
|
+
defaultZ?: number | undefined;
|
|
98
|
+
projection?: string | undefined;
|
|
99
|
+
}>>;
|
|
100
|
+
}, "strip", z.ZodTypeAny, {
|
|
101
|
+
channels: {
|
|
102
|
+
color: string;
|
|
103
|
+
window: {
|
|
104
|
+
min: number;
|
|
105
|
+
max: number;
|
|
106
|
+
end: number;
|
|
107
|
+
start: number;
|
|
108
|
+
};
|
|
109
|
+
label?: string | undefined;
|
|
110
|
+
family?: string | undefined;
|
|
111
|
+
active?: boolean | undefined;
|
|
112
|
+
}[];
|
|
113
|
+
rdefs?: {
|
|
114
|
+
color?: "color" | "greyscale" | undefined;
|
|
115
|
+
defaultT?: number | undefined;
|
|
116
|
+
defaultZ?: number | undefined;
|
|
117
|
+
projection?: string | undefined;
|
|
118
|
+
} | undefined;
|
|
119
|
+
}, {
|
|
120
|
+
channels: {
|
|
121
|
+
color: string;
|
|
122
|
+
window: {
|
|
123
|
+
min: number;
|
|
124
|
+
max: number;
|
|
125
|
+
end: number;
|
|
126
|
+
start: number;
|
|
127
|
+
};
|
|
128
|
+
label?: string | undefined;
|
|
129
|
+
family?: string | undefined;
|
|
130
|
+
active?: boolean | undefined;
|
|
131
|
+
}[];
|
|
132
|
+
rdefs?: {
|
|
133
|
+
color?: "color" | "greyscale" | undefined;
|
|
134
|
+
defaultT?: number | undefined;
|
|
135
|
+
defaultZ?: number | undefined;
|
|
136
|
+
projection?: string | undefined;
|
|
137
|
+
} | undefined;
|
|
138
|
+
}>>;
|
|
139
|
+
}, "strip", z.ZodTypeAny, {
|
|
140
|
+
multiscales: {
|
|
141
|
+
datasets: {
|
|
142
|
+
path: string;
|
|
143
|
+
coordinateTransformations: any[];
|
|
144
|
+
}[];
|
|
145
|
+
axes: any[];
|
|
146
|
+
name?: string | undefined;
|
|
147
|
+
coordinateTransformations?: any[] | undefined;
|
|
148
|
+
version?: "0.4" | undefined;
|
|
149
|
+
}[];
|
|
150
|
+
omero?: {
|
|
151
|
+
channels: {
|
|
152
|
+
color: string;
|
|
153
|
+
window: {
|
|
154
|
+
min: number;
|
|
155
|
+
max: number;
|
|
156
|
+
end: number;
|
|
157
|
+
start: number;
|
|
158
|
+
};
|
|
159
|
+
label?: string | undefined;
|
|
160
|
+
family?: string | undefined;
|
|
161
|
+
active?: boolean | undefined;
|
|
162
|
+
}[];
|
|
163
|
+
rdefs?: {
|
|
164
|
+
color?: "color" | "greyscale" | undefined;
|
|
165
|
+
defaultT?: number | undefined;
|
|
166
|
+
defaultZ?: number | undefined;
|
|
167
|
+
projection?: string | undefined;
|
|
168
|
+
} | undefined;
|
|
169
|
+
} | undefined;
|
|
170
|
+
}, {
|
|
171
|
+
multiscales: {
|
|
172
|
+
datasets: {
|
|
173
|
+
path: string;
|
|
174
|
+
coordinateTransformations: any[];
|
|
175
|
+
}[];
|
|
176
|
+
axes: any[];
|
|
177
|
+
name?: string | undefined;
|
|
178
|
+
coordinateTransformations?: any[] | undefined;
|
|
179
|
+
version?: "0.4" | undefined;
|
|
180
|
+
}[];
|
|
181
|
+
omero?: {
|
|
182
|
+
channels: {
|
|
183
|
+
color: string;
|
|
184
|
+
window: {
|
|
185
|
+
min: number;
|
|
186
|
+
max: number;
|
|
187
|
+
end: number;
|
|
188
|
+
start: number;
|
|
189
|
+
};
|
|
190
|
+
label?: string | undefined;
|
|
191
|
+
family?: string | undefined;
|
|
192
|
+
active?: boolean | undefined;
|
|
193
|
+
}[];
|
|
194
|
+
rdefs?: {
|
|
195
|
+
color?: "color" | "greyscale" | undefined;
|
|
196
|
+
defaultT?: number | undefined;
|
|
197
|
+
defaultZ?: number | undefined;
|
|
198
|
+
projection?: string | undefined;
|
|
199
|
+
} | undefined;
|
|
200
|
+
} | undefined;
|
|
201
|
+
}>;
|
|
202
|
+
export type Image = z.infer<typeof Image>;
|
|
203
|
+
//# sourceMappingURL=image.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../../../../../src/data/ome_zarr/0.4/image.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,+BAA+B;AAC/B,eAAO,MAAM,KAAK;IAEd,2CAA2C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqKN,CAAC;AAC1C,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC"}
|