@loaders.gl/tiles 4.4.3 → 5.0.0-alpha.1
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 +110 -1
- package/dist/dist.dev.js +4359 -1950
- package/dist/dist.min.js +1 -1
- package/dist/image-set.d.ts +94 -0
- package/dist/image-set.d.ts.map +1 -0
- package/dist/image-set.js +243 -0
- package/dist/image-set.js.map +1 -0
- package/dist/index.cjs +4178 -1892
- package/dist/index.cjs.map +4 -4
- package/dist/index.d.ts +27 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -8
- package/dist/index.js.map +1 -1
- package/dist/point-cloud/point-cloud-tile.d.ts +47 -0
- package/dist/point-cloud/point-cloud-tile.d.ts.map +1 -0
- package/dist/point-cloud/point-cloud-tile.js +67 -0
- package/dist/point-cloud/point-cloud-tile.js.map +1 -0
- package/dist/point-cloud/point-cloud-tileset.d.ts +131 -0
- package/dist/point-cloud/point-cloud-tileset.d.ts.map +1 -0
- package/dist/point-cloud/point-cloud-tileset.js +507 -0
- package/dist/point-cloud/point-cloud-tileset.js.map +1 -0
- package/dist/point-cloud/types.d.ts +64 -0
- package/dist/point-cloud/types.d.ts.map +1 -0
- package/dist/point-cloud/types.js +2 -0
- package/dist/point-cloud/types.js.map +1 -0
- package/dist/raster-set.d.ts +107 -0
- package/dist/raster-set.d.ts.map +1 -0
- package/dist/raster-set.js +268 -0
- package/dist/raster-set.js.map +1 -0
- package/dist/tileset-2d/adapter.d.ts +38 -0
- package/dist/tileset-2d/adapter.d.ts.map +1 -0
- package/dist/tileset-2d/adapter.js +5 -0
- package/dist/tileset-2d/adapter.js.map +1 -0
- package/dist/tileset-2d/index.d.ts +7 -0
- package/dist/tileset-2d/index.d.ts.map +1 -0
- package/dist/tileset-2d/index.js +6 -0
- package/dist/tileset-2d/index.js.map +1 -0
- package/dist/tileset-2d/tile-2d-header.d.ts +68 -0
- package/dist/tileset-2d/tile-2d-header.d.ts.map +1 -0
- package/dist/tileset-2d/tile-2d-header.js +181 -0
- package/dist/tileset-2d/tile-2d-header.js.map +1 -0
- package/dist/tileset-2d/tileset-2d.d.ts +201 -0
- package/dist/tileset-2d/tileset-2d.d.ts.map +1 -0
- package/dist/tileset-2d/tileset-2d.js +532 -0
- package/dist/tileset-2d/tileset-2d.js.map +1 -0
- package/dist/tileset-2d/types.d.ts +44 -0
- package/dist/tileset-2d/types.d.ts.map +1 -0
- package/dist/tileset-2d/types.js +5 -0
- package/dist/tileset-2d/types.js.map +1 -0
- package/dist/tileset-2d.d.ts +2 -0
- package/dist/tileset-2d.d.ts.map +1 -0
- package/dist/tileset-2d.js +5 -0
- package/dist/tileset-2d.js.map +1 -0
- package/dist/tileset-3d/common/indexed-archive-tileset-source.d.ts +60 -0
- package/dist/tileset-3d/common/indexed-archive-tileset-source.d.ts.map +1 -0
- package/dist/tileset-3d/common/indexed-archive-tileset-source.js +125 -0
- package/dist/tileset-3d/common/indexed-archive-tileset-source.js.map +1 -0
- package/dist/{tileset → tileset-3d/common}/tile-3d.d.ts +36 -27
- package/dist/tileset-3d/common/tile-3d.d.ts.map +1 -0
- package/dist/{tileset → tileset-3d/common}/tile-3d.js +53 -62
- package/dist/tileset-3d/common/tile-3d.js.map +1 -0
- package/dist/tileset-3d/common/tileset-3d.d.ts +177 -0
- package/dist/tileset-3d/common/tileset-3d.d.ts.map +1 -0
- package/dist/tileset-3d/common/tileset-3d.js +566 -0
- package/dist/tileset-3d/common/tileset-3d.js.map +1 -0
- package/dist/tileset-3d/common/tileset-cache.d.ts.map +1 -0
- package/dist/{tileset → tileset-3d/common}/tileset-cache.js +1 -1
- package/dist/tileset-3d/common/tileset-cache.js.map +1 -0
- package/dist/tileset-3d/common/tileset-source.d.ts +186 -0
- package/dist/tileset-3d/common/tileset-source.d.ts.map +1 -0
- package/dist/tileset-3d/common/tileset-source.js +17 -0
- package/dist/tileset-3d/common/tileset-source.js.map +1 -0
- package/dist/{tileset → tileset-3d/common}/tileset-traverser.d.ts +2 -2
- package/dist/tileset-3d/common/tileset-traverser.d.ts.map +1 -0
- package/dist/{tileset → tileset-3d/common}/tileset-traverser.js +2 -2
- package/dist/tileset-3d/common/tileset-traverser.js.map +1 -0
- package/dist/tileset-3d/format-3d-tiles/tiles-3d-source.d.ts +100 -0
- package/dist/tileset-3d/format-3d-tiles/tiles-3d-source.d.ts.map +1 -0
- package/dist/tileset-3d/format-3d-tiles/tiles-3d-source.js +312 -0
- package/dist/tileset-3d/format-3d-tiles/tiles-3d-source.js.map +1 -0
- package/dist/{tileset → tileset-3d}/format-3d-tiles/tileset-3d-traverser.d.ts +1 -1
- package/dist/tileset-3d/format-3d-tiles/tileset-3d-traverser.d.ts.map +1 -0
- package/dist/{tileset → tileset-3d}/format-3d-tiles/tileset-3d-traverser.js +1 -1
- package/dist/tileset-3d/format-3d-tiles/tileset-3d-traverser.js.map +1 -0
- package/dist/tileset-3d/format-i3s/i3s-pending-tiles-register.d.ts.map +1 -0
- package/dist/tileset-3d/format-i3s/i3s-pending-tiles-register.js.map +1 -0
- package/dist/tileset-3d/format-i3s/i3s-source.d.ts +99 -0
- package/dist/tileset-3d/format-i3s/i3s-source.d.ts.map +1 -0
- package/dist/tileset-3d/format-i3s/i3s-source.js +299 -0
- package/dist/tileset-3d/format-i3s/i3s-source.js.map +1 -0
- package/dist/tileset-3d/format-i3s/i3s-tile-manager.d.ts.map +1 -0
- package/dist/{tileset → tileset-3d}/format-i3s/i3s-tile-manager.js +2 -2
- package/dist/tileset-3d/format-i3s/i3s-tile-manager.js.map +1 -0
- package/dist/{tileset → tileset-3d}/format-i3s/i3s-tileset-traverser.d.ts +2 -2
- package/dist/tileset-3d/format-i3s/i3s-tileset-traverser.d.ts.map +1 -0
- package/dist/{tileset → tileset-3d}/format-i3s/i3s-tileset-traverser.js +14 -23
- package/dist/tileset-3d/format-i3s/i3s-tileset-traverser.js.map +1 -0
- package/dist/{tileset → tileset-3d}/helpers/3d-tiles-options.d.ts +1 -1
- package/dist/tileset-3d/helpers/3d-tiles-options.d.ts.map +1 -0
- package/dist/tileset-3d/helpers/3d-tiles-options.js.map +1 -0
- package/dist/tileset-3d/helpers/bounding-volume.d.ts.map +1 -0
- package/dist/tileset-3d/helpers/bounding-volume.js.map +1 -0
- package/dist/{tileset → tileset-3d}/helpers/frame-state.d.ts +1 -1
- package/dist/tileset-3d/helpers/frame-state.d.ts.map +1 -0
- package/dist/tileset-3d/helpers/frame-state.js.map +1 -0
- package/dist/{tileset → tileset-3d}/helpers/i3s-lod.d.ts +1 -1
- package/dist/tileset-3d/helpers/i3s-lod.d.ts.map +1 -0
- package/dist/{tileset → tileset-3d}/helpers/i3s-lod.js +1 -1
- package/dist/tileset-3d/helpers/i3s-lod.js.map +1 -0
- package/dist/tileset-3d/helpers/tiles-3d-lod.d.ts +20 -0
- package/dist/tileset-3d/helpers/tiles-3d-lod.d.ts.map +1 -0
- package/dist/{tileset → tileset-3d}/helpers/tiles-3d-lod.js +43 -4
- package/dist/tileset-3d/helpers/tiles-3d-lod.js.map +1 -0
- package/dist/{tileset → tileset-3d}/helpers/transform-utils.d.ts +1 -1
- package/dist/tileset-3d/helpers/transform-utils.d.ts.map +1 -0
- package/dist/tileset-3d/helpers/transform-utils.js.map +1 -0
- package/dist/tileset-3d/helpers/zoom.d.ts.map +1 -0
- package/dist/tileset-3d/helpers/zoom.js.map +1 -0
- package/dist/types.d.ts +7 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +7 -6
- package/src/image-set.ts +328 -0
- package/src/index.ts +80 -9
- package/src/point-cloud/point-cloud-tile.ts +76 -0
- package/src/point-cloud/point-cloud-tileset.ts +709 -0
- package/src/point-cloud/types.ts +78 -0
- package/src/raster-set.ts +374 -0
- package/src/tileset-2d/adapter.ts +47 -0
- package/src/tileset-2d/index.ts +33 -0
- package/src/tileset-2d/tile-2d-header.ts +224 -0
- package/src/tileset-2d/tileset-2d.ts +716 -0
- package/src/tileset-2d/types.ts +39 -0
- package/src/tileset-2d.ts +5 -0
- package/src/tileset-3d/common/indexed-archive-tileset-source.ts +205 -0
- package/src/{tileset → tileset-3d/common}/tile-3d.ts +64 -73
- package/src/tileset-3d/common/tileset-3d.ts +736 -0
- package/src/{tileset → tileset-3d/common}/tileset-cache.ts +1 -1
- package/src/tileset-3d/common/tileset-source.ts +234 -0
- package/src/{tileset → tileset-3d/common}/tileset-traverser.ts +3 -3
- package/src/tileset-3d/format-3d-tiles/tiles-3d-source.ts +379 -0
- package/src/{tileset → tileset-3d}/format-3d-tiles/tileset-3d-traverser.ts +1 -1
- package/src/tileset-3d/format-i3s/i3s-source.ts +366 -0
- package/src/{tileset → tileset-3d}/format-i3s/i3s-tile-manager.ts +2 -2
- package/src/{tileset → tileset-3d}/format-i3s/i3s-tileset-traverser.ts +15 -24
- package/src/{tileset → tileset-3d}/helpers/3d-tiles-options.ts +1 -1
- package/src/{tileset → tileset-3d}/helpers/frame-state.ts +1 -1
- package/src/{tileset → tileset-3d}/helpers/i3s-lod.ts +2 -2
- package/src/{tileset → tileset-3d}/helpers/tiles-3d-lod.ts +46 -4
- package/src/{tileset → tileset-3d}/helpers/transform-utils.ts +1 -1
- package/src/types.ts +7 -0
- package/dist/tileset/format-3d-tiles/tileset-3d-traverser.d.ts.map +0 -1
- package/dist/tileset/format-3d-tiles/tileset-3d-traverser.js.map +0 -1
- package/dist/tileset/format-i3s/i3s-pending-tiles-register.d.ts.map +0 -1
- package/dist/tileset/format-i3s/i3s-pending-tiles-register.js.map +0 -1
- package/dist/tileset/format-i3s/i3s-tile-manager.d.ts.map +0 -1
- package/dist/tileset/format-i3s/i3s-tile-manager.js.map +0 -1
- package/dist/tileset/format-i3s/i3s-tileset-traverser.d.ts.map +0 -1
- package/dist/tileset/format-i3s/i3s-tileset-traverser.js.map +0 -1
- package/dist/tileset/helpers/3d-tiles-options.d.ts.map +0 -1
- package/dist/tileset/helpers/3d-tiles-options.js.map +0 -1
- package/dist/tileset/helpers/bounding-volume.d.ts.map +0 -1
- package/dist/tileset/helpers/bounding-volume.js.map +0 -1
- package/dist/tileset/helpers/frame-state.d.ts.map +0 -1
- package/dist/tileset/helpers/frame-state.js.map +0 -1
- package/dist/tileset/helpers/i3s-lod.d.ts.map +0 -1
- package/dist/tileset/helpers/i3s-lod.js.map +0 -1
- package/dist/tileset/helpers/tiles-3d-lod.d.ts +0 -8
- package/dist/tileset/helpers/tiles-3d-lod.d.ts.map +0 -1
- package/dist/tileset/helpers/tiles-3d-lod.js.map +0 -1
- package/dist/tileset/helpers/transform-utils.d.ts.map +0 -1
- package/dist/tileset/helpers/transform-utils.js.map +0 -1
- package/dist/tileset/helpers/zoom.d.ts.map +0 -1
- package/dist/tileset/helpers/zoom.js.map +0 -1
- package/dist/tileset/tile-3d.d.ts.map +0 -1
- package/dist/tileset/tile-3d.js.map +0 -1
- package/dist/tileset/tileset-3d.d.ts +0 -284
- package/dist/tileset/tileset-3d.d.ts.map +0 -1
- package/dist/tileset/tileset-3d.js +0 -814
- package/dist/tileset/tileset-3d.js.map +0 -1
- package/dist/tileset/tileset-cache.d.ts.map +0 -1
- package/dist/tileset/tileset-cache.js.map +0 -1
- package/dist/tileset/tileset-traverser.d.ts.map +0 -1
- package/dist/tileset/tileset-traverser.js.map +0 -1
- package/src/tileset/tileset-3d.ts +0 -1037
- /package/dist/{tileset → tileset-3d/common}/tileset-cache.d.ts +0 -0
- /package/dist/{tileset → tileset-3d}/format-i3s/i3s-pending-tiles-register.d.ts +0 -0
- /package/dist/{tileset → tileset-3d}/format-i3s/i3s-pending-tiles-register.js +0 -0
- /package/dist/{tileset → tileset-3d}/format-i3s/i3s-tile-manager.d.ts +0 -0
- /package/dist/{tileset → tileset-3d}/helpers/3d-tiles-options.js +0 -0
- /package/dist/{tileset → tileset-3d}/helpers/bounding-volume.d.ts +0 -0
- /package/dist/{tileset → tileset-3d}/helpers/bounding-volume.js +0 -0
- /package/dist/{tileset → tileset-3d}/helpers/frame-state.js +0 -0
- /package/dist/{tileset → tileset-3d}/helpers/transform-utils.js +0 -0
- /package/dist/{tileset → tileset-3d}/helpers/zoom.d.ts +0 -0
- /package/dist/{tileset → tileset-3d}/helpers/zoom.js +0 -0
- /package/src/{tileset → tileset-3d}/format-i3s/i3s-pending-tiles-register.ts +0 -0
- /package/src/{tileset → tileset-3d}/helpers/bounding-volume.ts +0 -0
- /package/src/{tileset → tileset-3d}/helpers/zoom.ts +0 -0
package/README.md
CHANGED
|
@@ -4,4 +4,113 @@ This module contains the common components for tiles loaders, i.e. [3D tiles](ht
|
|
|
4
4
|
|
|
5
5
|
[loaders.gl](https://loaders.gl/docs) is a collection of loaders for big data visualizations.
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
## Source-backed tilesets
|
|
8
|
+
|
|
9
|
+
`Tileset3D` now supports source-backed construction for format-specific loading behavior while keeping traversal and culling logic in the shared runtime.
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
import {Tiles3DLoader} from '@loaders.gl/3d-tiles';
|
|
13
|
+
import {Tiles3DSource, Tileset3D} from '@loaders.gl/tiles';
|
|
14
|
+
|
|
15
|
+
const source = new Tiles3DSource({url, loader: Tiles3DLoader});
|
|
16
|
+
const tileset = new Tileset3D(source, options);
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Available source classes:
|
|
20
|
+
|
|
21
|
+
- `Tiles3DSource` for 3D Tiles datasets
|
|
22
|
+
- `I3SSource` for I3S datasets
|
|
23
|
+
|
|
24
|
+
Archive-backed `.3tz` and `.slpk` datasets use the same source classes through archive-aware
|
|
25
|
+
source construction helpers. Archive parsing stays in the `@loaders.gl/3d-tiles` and
|
|
26
|
+
`@loaders.gl/i3s` packages rather than being duplicated in `@loaders.gl/tiles`.
|
|
27
|
+
|
|
28
|
+
`Tileset3D` now requires an explicit source instance. Root metadata loading and normalization happen inside the source implementation.
|
|
29
|
+
|
|
30
|
+
The shared `Tileset3DSource` contract owns:
|
|
31
|
+
|
|
32
|
+
- root metadata loading and normalization
|
|
33
|
+
- runtime tile-header creation
|
|
34
|
+
- tile content URL resolution
|
|
35
|
+
- tile content fetching
|
|
36
|
+
- format-specific view-state metadata
|
|
37
|
+
- format-specific post-load bookkeeping
|
|
38
|
+
|
|
39
|
+
`Tileset3D` remains responsible for traversal, culling, request scheduling, selection, and cache management.
|
|
40
|
+
|
|
41
|
+
For broader documentation please visit the [website](https://loaders.gl).
|
|
42
|
+
|
|
43
|
+
## Tileset2D
|
|
44
|
+
|
|
45
|
+
`Tileset2D` is the shared cache and loading engine for source-backed 2D tile rendering.
|
|
46
|
+
|
|
47
|
+
API reference: [`Tileset2D`](../../docs/modules/tiles/api-reference/tileset-2d.md)
|
|
48
|
+
|
|
49
|
+
Its purpose is to separate:
|
|
50
|
+
|
|
51
|
+
- shared tile content, request scheduling, and cache eviction
|
|
52
|
+
- per-view selection and visibility state
|
|
53
|
+
|
|
54
|
+
That lets multiple layers and views reuse the same tile cache without duplicating requests or
|
|
55
|
+
overwriting each other's traversal state.
|
|
56
|
+
|
|
57
|
+
### Installation
|
|
58
|
+
|
|
59
|
+
```ts
|
|
60
|
+
import {
|
|
61
|
+
Tileset2D,
|
|
62
|
+
type Tileset2DProps,
|
|
63
|
+
type TileLoadProps
|
|
64
|
+
} from '@loaders.gl/tiles';
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
### Construct from `getTileData`
|
|
68
|
+
|
|
69
|
+
```ts
|
|
70
|
+
const tileset = new Tileset2D({
|
|
71
|
+
getTileData: async ({id, bbox}: TileLoadProps) => fetchTile(id, bbox),
|
|
72
|
+
maxZoom: 14,
|
|
73
|
+
maxCacheSize: 256
|
|
74
|
+
});
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### Construct from a loaders.gl `TileSource`
|
|
78
|
+
|
|
79
|
+
```ts
|
|
80
|
+
import type {TileSource} from '@loaders.gl/loader-utils';
|
|
81
|
+
import {Tileset2D} from '@loaders.gl/tiles';
|
|
82
|
+
|
|
83
|
+
const tileSource: TileSource = createTileSourceSomehow();
|
|
84
|
+
const tileset = Tileset2D.fromTileSource(tileSource, {
|
|
85
|
+
maxCacheByteSize: 32 * 1024 * 1024
|
|
86
|
+
});
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
When backed by a `TileSource`, the tileset reads metadata once and adopts:
|
|
90
|
+
|
|
91
|
+
- `minZoom`
|
|
92
|
+
- `maxZoom`
|
|
93
|
+
- `boundingBox` mapped to `extent`
|
|
94
|
+
|
|
95
|
+
Explicit options still override source metadata.
|
|
96
|
+
|
|
97
|
+
### Key API
|
|
98
|
+
|
|
99
|
+
- `tiles`: current contents of the shared tile cache
|
|
100
|
+
- `selectedTiles` / `visibleTiles`: union views across all attached consumers
|
|
101
|
+
- `loadingTiles` / `unloadedTiles`: current loading and unloaded cache subsets
|
|
102
|
+
- `stats`: live `@probe.gl/stats` counters for cache size, selection, visibility, and consumers
|
|
103
|
+
- `subscribe(listener)`: tile lifecycle, metadata update, and stats callbacks
|
|
104
|
+
- `setOptions(opts)`: update runtime configuration
|
|
105
|
+
- `reloadAll()`: mark retained tiles stale for reload
|
|
106
|
+
- `finalize()`: abort requests and clear the cache
|
|
107
|
+
|
|
108
|
+
The shared stats currently populate:
|
|
109
|
+
|
|
110
|
+
- `Tiles In Cache`
|
|
111
|
+
- `Cache Size`
|
|
112
|
+
- `Visible Tiles`
|
|
113
|
+
- `Selected Tiles`
|
|
114
|
+
- `Loading Tiles`
|
|
115
|
+
- `Unloaded Tiles`
|
|
116
|
+
- `Consumers`
|