@loaders.gl/tiles 5.0.0-alpha.1 → 5.0.0-alpha.2

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.
Files changed (115) hide show
  1. package/LICENSE +14 -3
  2. package/dist/dist.dev.js +2396 -274
  3. package/dist/dist.min.js +1 -1
  4. package/dist/index.cjs +2763 -337
  5. package/dist/index.cjs.map +3 -4
  6. package/dist/index.d.ts +7 -1
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +1 -0
  9. package/dist/index.js.map +1 -1
  10. package/dist/point-cloud/point-cloud-tile.d.ts.map +1 -1
  11. package/dist/point-cloud/point-cloud-tile.js +3 -0
  12. package/dist/point-cloud/point-cloud-tile.js.map +1 -1
  13. package/dist/point-cloud/point-cloud-tileset.d.ts.map +1 -1
  14. package/dist/point-cloud/point-cloud-tileset.js +3 -0
  15. package/dist/point-cloud/point-cloud-tileset.js.map +1 -1
  16. package/dist/point-cloud/types.d.ts.map +1 -1
  17. package/dist/point-cloud/types.js +3 -0
  18. package/dist/point-cloud/types.js.map +1 -1
  19. package/dist/raster-set.d.ts +35 -29
  20. package/dist/raster-set.d.ts.map +1 -1
  21. package/dist/raster-set.js +7 -1
  22. package/dist/raster-set.js.map +1 -1
  23. package/dist/tileset-3d/common/tile-3d.d.ts +98 -3
  24. package/dist/tileset-3d/common/tile-3d.d.ts.map +1 -1
  25. package/dist/tileset-3d/common/tile-3d.js +229 -15
  26. package/dist/tileset-3d/common/tile-3d.js.map +1 -1
  27. package/dist/tileset-3d/common/tileset-3d.d.ts +143 -3
  28. package/dist/tileset-3d/common/tileset-3d.d.ts.map +1 -1
  29. package/dist/tileset-3d/common/tileset-3d.js +257 -16
  30. package/dist/tileset-3d/common/tileset-3d.js.map +1 -1
  31. package/dist/tileset-3d/common/tileset-cache.d.ts +11 -1
  32. package/dist/tileset-3d/common/tileset-cache.d.ts.map +1 -1
  33. package/dist/tileset-3d/common/tileset-cache.js +11 -3
  34. package/dist/tileset-3d/common/tileset-cache.js.map +1 -1
  35. package/dist/tileset-3d/common/tileset-source.d.ts +18 -0
  36. package/dist/tileset-3d/common/tileset-source.d.ts.map +1 -1
  37. package/dist/tileset-3d/common/tileset-source.js.map +1 -1
  38. package/dist/tileset-3d/common/tileset-traverser.d.ts +13 -0
  39. package/dist/tileset-3d/common/tileset-traverser.d.ts.map +1 -1
  40. package/dist/tileset-3d/common/tileset-traverser.js +28 -1
  41. package/dist/tileset-3d/common/tileset-traverser.js.map +1 -1
  42. package/dist/tileset-3d/format-3d-tiles/implicit-tiling.d.ts +111 -0
  43. package/dist/tileset-3d/format-3d-tiles/implicit-tiling.d.ts.map +1 -0
  44. package/dist/tileset-3d/format-3d-tiles/implicit-tiling.js +340 -0
  45. package/dist/tileset-3d/format-3d-tiles/implicit-tiling.js.map +1 -0
  46. package/dist/tileset-3d/format-3d-tiles/tiles-3d-source.d.ts +92 -3
  47. package/dist/tileset-3d/format-3d-tiles/tiles-3d-source.d.ts.map +1 -1
  48. package/dist/tileset-3d/format-3d-tiles/tiles-3d-source.js +211 -13
  49. package/dist/tileset-3d/format-3d-tiles/tiles-3d-source.js.map +1 -1
  50. package/dist/tileset-3d/format-3d-tiles/tileset-3d-traverser.d.ts +36 -0
  51. package/dist/tileset-3d/format-3d-tiles/tileset-3d-traverser.d.ts.map +1 -1
  52. package/dist/tileset-3d/format-3d-tiles/tileset-3d-traverser.js +66 -0
  53. package/dist/tileset-3d/format-3d-tiles/tileset-3d-traverser.js.map +1 -1
  54. package/dist/tileset-3d/format-i3s/i3s-pending-tiles-register.d.ts.map +1 -1
  55. package/dist/tileset-3d/format-i3s/i3s-pending-tiles-register.js +3 -0
  56. package/dist/tileset-3d/format-i3s/i3s-pending-tiles-register.js.map +1 -1
  57. package/dist/tileset-3d/format-i3s/i3s-tile-manager.d.ts.map +1 -1
  58. package/dist/tileset-3d/format-i3s/i3s-tile-manager.js +3 -0
  59. package/dist/tileset-3d/format-i3s/i3s-tile-manager.js.map +1 -1
  60. package/dist/tileset-3d/format-i3s/i3s-tileset-traverser.d.ts.map +1 -1
  61. package/dist/tileset-3d/format-i3s/i3s-tileset-traverser.js +3 -0
  62. package/dist/tileset-3d/format-i3s/i3s-tileset-traverser.js.map +1 -1
  63. package/dist/tileset-3d/helpers/3d-tiles-options.d.ts.map +1 -1
  64. package/dist/tileset-3d/helpers/3d-tiles-options.js +3 -0
  65. package/dist/tileset-3d/helpers/3d-tiles-options.js.map +1 -1
  66. package/dist/tileset-3d/helpers/bounding-volume.d.ts.map +1 -1
  67. package/dist/tileset-3d/helpers/bounding-volume.js +1 -0
  68. package/dist/tileset-3d/helpers/bounding-volume.js.map +1 -1
  69. package/dist/tileset-3d/helpers/frame-state.d.ts +59 -1
  70. package/dist/tileset-3d/helpers/frame-state.d.ts.map +1 -1
  71. package/dist/tileset-3d/helpers/frame-state.js +84 -9
  72. package/dist/tileset-3d/helpers/frame-state.js.map +1 -1
  73. package/dist/tileset-3d/helpers/tiles-3d-lod.d.ts +61 -9
  74. package/dist/tileset-3d/helpers/tiles-3d-lod.d.ts.map +1 -1
  75. package/dist/tileset-3d/helpers/tiles-3d-lod.js +198 -93
  76. package/dist/tileset-3d/helpers/tiles-3d-lod.js.map +1 -1
  77. package/dist/tileset-3d/helpers/tiles-3d-request-priority.d.ts +134 -0
  78. package/dist/tileset-3d/helpers/tiles-3d-request-priority.d.ts.map +1 -0
  79. package/dist/tileset-3d/helpers/tiles-3d-request-priority.js +179 -0
  80. package/dist/tileset-3d/helpers/tiles-3d-request-priority.js.map +1 -0
  81. package/dist/types.d.ts +2 -0
  82. package/dist/types.d.ts.map +1 -1
  83. package/dist/types.js +3 -0
  84. package/dist/types.js.map +1 -1
  85. package/dist/utils/doubly-linked-list.d.ts.map +1 -1
  86. package/dist/utils/doubly-linked-list.js +1 -0
  87. package/dist/utils/doubly-linked-list.js.map +1 -1
  88. package/dist/utils/managed-array.d.ts.map +1 -1
  89. package/dist/utils/managed-array.js +1 -0
  90. package/dist/utils/managed-array.js.map +1 -1
  91. package/package.json +5 -5
  92. package/src/index.ts +19 -0
  93. package/src/point-cloud/point-cloud-tile.ts +4 -0
  94. package/src/point-cloud/point-cloud-tileset.ts +4 -0
  95. package/src/point-cloud/types.ts +4 -0
  96. package/src/raster-set.ts +81 -43
  97. package/src/tileset-3d/common/tile-3d.ts +285 -21
  98. package/src/tileset-3d/common/tileset-3d.ts +368 -17
  99. package/src/tileset-3d/common/tileset-cache.ts +15 -7
  100. package/src/tileset-3d/common/tileset-source.ts +21 -0
  101. package/src/tileset-3d/common/tileset-traverser.ts +29 -1
  102. package/src/tileset-3d/format-3d-tiles/implicit-tiling.ts +534 -0
  103. package/src/tileset-3d/format-3d-tiles/tiles-3d-source.ts +266 -13
  104. package/src/tileset-3d/format-3d-tiles/tileset-3d-traverser.ts +77 -0
  105. package/src/tileset-3d/format-i3s/i3s-pending-tiles-register.ts +4 -0
  106. package/src/tileset-3d/format-i3s/i3s-tile-manager.ts +4 -0
  107. package/src/tileset-3d/format-i3s/i3s-tileset-traverser.ts +4 -0
  108. package/src/tileset-3d/helpers/3d-tiles-options.ts +4 -0
  109. package/src/tileset-3d/helpers/bounding-volume.ts +2 -0
  110. package/src/tileset-3d/helpers/frame-state.ts +139 -11
  111. package/src/tileset-3d/helpers/tiles-3d-lod.ts +291 -112
  112. package/src/tileset-3d/helpers/tiles-3d-request-priority.ts +301 -0
  113. package/src/types.ts +6 -0
  114. package/src/utils/doubly-linked-list.ts +2 -0
  115. package/src/utils/managed-array.ts +2 -0
@@ -8,12 +8,14 @@ import { Tileset3DTraverser } from "./tileset-3d-traverser.js";
8
8
  import { Tile3D as Tile3DNode } from "../common/tile-3d.js";
9
9
  import { getZoomFromBoundingVolume } from "../helpers/zoom.js";
10
10
  import { TILESET_TYPE } from "../../constants.js";
11
+ import { materializeImplicitSubtree } from "./implicit-tiling.js";
11
12
  const EMPTY_CONTENT_FORMATS = {
12
13
  draco: false,
13
14
  meshopt: false,
14
15
  dds: false,
15
16
  ktx2: false
16
17
  };
18
+ const DEFAULT_MAXIMUM_CACHED_SUBTREES = 32;
17
19
  /**
18
20
  * {@link Tileset3DSource} implementation for 3D Tiles datasets.
19
21
  */
@@ -45,6 +47,23 @@ export class Tiles3DSource {
45
47
  /** Normalized source metadata after initialization. */
46
48
  metadata;
47
49
  queryParams = {};
50
+ /** Final request URLs cached by unmodified tile content URL. */
51
+ tileUrlCache = new Map();
52
+ /** Parsed subtree promises keyed by final source URL for request deduplication and LRU reuse. */
53
+ implicitSubtreeCache = new Map();
54
+ /** URLs whose subtree resource requests have not settled. */
55
+ pendingImplicitSubtreeUrls = new Set();
56
+ /** Maximum number of settled parsed subtrees retained by this source. */
57
+ maximumCachedSubtrees;
58
+ /** Mutable counters exposed as a defensive snapshot through {@link getImplicitTilingStats}. */
59
+ implicitTilingStats = {
60
+ requestedSubtrees: 0,
61
+ loadedSubtrees: 0,
62
+ cacheHits: 0,
63
+ materializedTiles: 0
64
+ };
65
+ /** Whether the owning tileset has released this source. */
66
+ destroyed = false;
48
67
  extensionsUsed = [];
49
68
  resolver;
50
69
  rootTileset;
@@ -63,6 +82,22 @@ export class Tiles3DSource {
63
82
  this.resolver = request.resolver;
64
83
  this.coreApi = request.coreApi;
65
84
  this.loadOptions = loadOptions;
85
+ const maximumCachedSubtrees = Number(loadOptions['3d-tiles']?.maximumCachedSubtrees);
86
+ this.maximumCachedSubtrees = Number.isFinite(maximumCachedSubtrees)
87
+ ? Math.max(0, Math.floor(maximumCachedSubtrees))
88
+ : DEFAULT_MAXIMUM_CACHED_SUBTREES;
89
+ }
90
+ /**
91
+ * Releases URL and parsed-subtree caches and blocks late subtree installation.
92
+ *
93
+ * The injected resolver or core API remains responsible for transport-level abort signals. A
94
+ * request that cannot be aborted may finish parsing, but it will not mutate destroyed tiles.
95
+ */
96
+ destroy() {
97
+ this.destroyed = true;
98
+ this.tileUrlCache.clear();
99
+ this.implicitSubtreeCache.clear();
100
+ this.pendingImplicitSubtreeUrls.clear();
66
101
  }
67
102
  /**
68
103
  * Fetches and validates top-level metadata, then normalizes common fields used by {@link Tileset3D}.
@@ -81,7 +116,9 @@ export class Tiles3DSource {
81
116
  this.tileset = this.rootTileset;
82
117
  if (this.rootTileset.queryString) {
83
118
  const searchParams = new URLSearchParams(this.rootTileset.queryString);
84
- Object.assign(this.queryParams, Object.fromEntries(searchParams.entries()));
119
+ for (const [parameterName, parameterValue] of searchParams.entries()) {
120
+ this.setQueryParameter(parameterName, parameterValue);
121
+ }
85
122
  }
86
123
  this.asset = this.rootTileset.asset;
87
124
  if (!this.asset) {
@@ -93,7 +130,7 @@ export class Tiles3DSource {
93
130
  throw new Error('The tileset must be 3D Tiles version either 0.0 or 1.0 or 1.1.');
94
131
  }
95
132
  if ('tilesetVersion' in this.asset) {
96
- this.queryParams.v = this.asset.tilesetVersion;
133
+ this.setQueryParameter('v', this.asset.tilesetVersion);
97
134
  }
98
135
  this.properties = this.rootTileset.properties;
99
136
  this.extras = this.rootTileset.extras;
@@ -126,7 +163,7 @@ export class Tiles3DSource {
126
163
  return this.getMetadata().tileset;
127
164
  }
128
165
  /**
129
- * Builds the eager runtime tile tree for a 3D Tiles subtree.
166
+ * Builds explicit runtime headers while leaving implicit subtree references lazy.
130
167
  */
131
168
  initializeTileHeaders(tileset, tilesetJson, parentTile) {
132
169
  const rootTile = new Tile3DNode(tileset, tilesetJson.root, parentTile || undefined);
@@ -145,7 +182,7 @@ export class Tiles3DSource {
145
182
  const url = new URL(childTile.contentUrl);
146
183
  const session = url.searchParams.get('session');
147
184
  if (session) {
148
- this.queryParams.session = session;
185
+ this.setQueryParameter('session', session);
149
186
  }
150
187
  }
151
188
  tile.children.push(childTile);
@@ -171,7 +208,9 @@ export class Tiles3DSource {
171
208
  ...this.loadOptions,
172
209
  [this.loader.id]: {
173
210
  ...tilesetLoaderOptions,
174
- isTileset: tile.type === 'json',
211
+ // Content bytes, rather than URL suffixes, distinguish external tilesets from renderable
212
+ // payloads. This is required for signed and extensionless resources.
213
+ isTileset: 'auto',
175
214
  assetGltfUpAxis: (this.asset && this.asset.gltfUpAxis) || 'Y'
176
215
  }
177
216
  };
@@ -179,17 +218,77 @@ export class Tiles3DSource {
179
218
  tile.content = content;
180
219
  return {
181
220
  loaded: true,
182
- nestedTileset: tile.contentUrl.includes('.json') ? content : undefined
221
+ nestedTileset: content?.shape === 'tileset3d' ? content : undefined
222
+ };
223
+ }
224
+ /**
225
+ * Loads, materializes, and installs exactly one implicit subtree.
226
+ *
227
+ * Final URLs pass through the same query inheritance and archive/custom resolver path as render
228
+ * content. Parsed resources are deduplicated by final URL, while the pure materializer creates
229
+ * lazy placeholders for every available child subtree instead of recursively fetching them.
230
+ *
231
+ * @param tile - Existing contentless subtree-root placeholder.
232
+ * @param frameState - View state that made this request eligible; priority is consumed earlier.
233
+ * @returns Counts describing the installed subtree.
234
+ */
235
+ async loadTileChildren(tile, frameState) {
236
+ void frameState;
237
+ const reference = tile.header.implicitSubtree;
238
+ if (!reference) {
239
+ return { loaded: false, tileCount: 0, childSubtreeCount: 0 };
240
+ }
241
+ const subtreeUrl = this.getTileUrl(reference.subtreeUrl);
242
+ const subtree = await this.loadImplicitSubtreeResource(subtreeUrl);
243
+ if (this.destroyed || tile.isDestroyed()) {
244
+ return { loaded: false, tileCount: 0, childSubtreeCount: 0 };
245
+ }
246
+ const materializedSubtree = materializeImplicitSubtree(subtree, {
247
+ ...reference,
248
+ subtreeUrl
249
+ });
250
+ tile.applyImplicitSubtreeHeader(materializedSubtree.root);
251
+ const materializedTileCount = this.initializeMaterializedChildren(tile.tileset, tile, materializedSubtree.root.children);
252
+ this.implicitTilingStats.loadedSubtrees++;
253
+ this.implicitTilingStats.materializedTiles += materializedTileCount;
254
+ return {
255
+ loaded: true,
256
+ tileCount: materializedSubtree.tileCount,
257
+ childSubtreeCount: materializedSubtree.childSubtreeCount
258
+ };
259
+ }
260
+ /**
261
+ * Returns a snapshot of implicit-subtree request, cache, and materialization counters.
262
+ *
263
+ * @returns Immutable-by-convention diagnostic values for runtime inspection.
264
+ */
265
+ getImplicitTilingStats() {
266
+ return {
267
+ ...this.implicitTilingStats,
268
+ cachedSubtrees: this.implicitSubtreeCache.size - this.pendingImplicitSubtreeUrls.size,
269
+ pendingSubtrees: this.pendingImplicitSubtreeUrls.size
183
270
  };
184
271
  }
185
272
  /**
186
273
  * Resolves a tile content URL with source-managed query parameters.
274
+ *
275
+ * Existing per-resource parameters take precedence over inherited root, version, and session
276
+ * values. Completed URLs are cached by the original tile path; {@link setQueryParameter}
277
+ * invalidates the cache before changed source state can be observed.
278
+ *
279
+ * @param tilePath - Unmodified absolute content URL or data URL from the tile header.
280
+ * @returns Content URL with any missing source parameters appended.
187
281
  */
188
282
  getTileUrl(tilePath) {
189
283
  if (tilePath.startsWith('data:')) {
190
284
  return tilePath;
191
285
  }
286
+ const cachedTileUrl = this.tileUrlCache.get(tilePath);
287
+ if (cachedTileUrl) {
288
+ return cachedTileUrl;
289
+ }
192
290
  if (!Object.keys(this.queryParams).length) {
291
+ this.tileUrlCache.set(tilePath, tilePath);
193
292
  return tilePath;
194
293
  }
195
294
  const [pathWithoutQuery, existingQuery = ''] = tilePath.split('?');
@@ -200,7 +299,26 @@ export class Tiles3DSource {
200
299
  }
201
300
  }
202
301
  const queryParams = mergedQueryParams.toString();
203
- return queryParams ? `${pathWithoutQuery}?${queryParams}` : pathWithoutQuery;
302
+ const tileUrl = queryParams ? `${pathWithoutQuery}?${queryParams}` : pathWithoutQuery;
303
+ this.tileUrlCache.set(tilePath, tileUrl);
304
+ return tileUrl;
305
+ }
306
+ /**
307
+ * Updates an inherited source query parameter and invalidates derived request URLs.
308
+ *
309
+ * Root tokens and tileset versions normally settle during initialization. Some providers expose
310
+ * a session parameter on a child URL, so invalidation is required to prevent URLs cached earlier
311
+ * in header construction from retaining stale authentication state.
312
+ *
313
+ * @param parameterName - Query parameter name.
314
+ * @param parameterValue - Query parameter value.
315
+ */
316
+ setQueryParameter(parameterName, parameterValue) {
317
+ if (this.queryParams[parameterName] === parameterValue) {
318
+ return;
319
+ }
320
+ this.queryParams[parameterName] = parameterValue;
321
+ this.tileUrlCache.clear();
204
322
  }
205
323
  /**
206
324
  * Derives the default view state from the root bounding volume.
@@ -261,11 +379,11 @@ export class Tiles3DSource {
261
379
  /**
262
380
  * Loads data through injected core APIs so this module stays independent from `@loaders.gl/core`.
263
381
  */
264
- async loadWithCoreApi(url, options) {
382
+ async loadWithCoreApi(url, options, loader = this.loader) {
265
383
  if (!this.coreApi) {
266
384
  throw new Error('Tiles3DSource requires an injected coreApi to load tileset data');
267
385
  }
268
- return await this.coreApi.load(url, this.loader, options);
386
+ return await this.coreApi.load(url, loader, options);
269
387
  }
270
388
  /**
271
389
  * Loads data through an injected resolver when present, otherwise through the injected core API.
@@ -277,13 +395,93 @@ export class Tiles3DSource {
277
395
  return await this.loadWithCoreApi(url, options);
278
396
  }
279
397
  /**
280
- * Loads tile content through an injected resolver when present, otherwise through the injected core API.
398
+ * Loads an arbitrary source resource through an injected resolver or core API.
281
399
  */
282
- async loadResourceData(url, options) {
400
+ async loadResourceData(url, options, loader = this.loader) {
283
401
  if (this.resolver) {
284
- return await this.resolver.loadResource(url, this.loader, options);
402
+ return await this.resolver.loadResource(url, loader, options);
403
+ }
404
+ return await this.loadWithCoreApi(url, options, loader);
405
+ }
406
+ /**
407
+ * Returns a parsed subtree from the LRU cache or starts one source-managed request.
408
+ *
409
+ * @param subtreeUrl - Final subtree URL after query inheritance.
410
+ * @returns Parsed subtree availability data.
411
+ */
412
+ async loadImplicitSubtreeResource(subtreeUrl) {
413
+ const cachedSubtree = this.implicitSubtreeCache.get(subtreeUrl);
414
+ if (cachedSubtree) {
415
+ this.implicitTilingStats.cacheHits++;
416
+ this.implicitSubtreeCache.delete(subtreeUrl);
417
+ this.implicitSubtreeCache.set(subtreeUrl, cachedSubtree);
418
+ return await cachedSubtree;
419
+ }
420
+ this.implicitTilingStats.requestedSubtrees++;
421
+ this.pendingImplicitSubtreeUrls.add(subtreeUrl);
422
+ const loaderOptions = this.loadOptions[this.loader.id] || {};
423
+ const subtreePromise = this.loadResourceData(subtreeUrl, {
424
+ ...this.loadOptions,
425
+ [this.loader.id]: {
426
+ ...loaderOptions,
427
+ isTileset: false,
428
+ isSubtree: true
429
+ }
430
+ });
431
+ this.implicitSubtreeCache.set(subtreeUrl, subtreePromise);
432
+ try {
433
+ return await subtreePromise;
434
+ }
435
+ catch (error) {
436
+ this.implicitSubtreeCache.delete(subtreeUrl);
437
+ throw error;
438
+ }
439
+ finally {
440
+ this.pendingImplicitSubtreeUrls.delete(subtreeUrl);
441
+ this.trimImplicitSubtreeCache();
442
+ }
443
+ }
444
+ /**
445
+ * Instantiates every header represented by one materialized subtree.
446
+ *
447
+ * @param tileset - Owning runtime tileset.
448
+ * @param parentTile - Existing materialized parent.
449
+ * @param childHeaders - Headers to install below the parent.
450
+ * @returns Number of newly allocated runtime tile nodes.
451
+ */
452
+ initializeMaterializedChildren(tileset, parentTile, childHeaders) {
453
+ let materializedTileCount = 0;
454
+ const stack = [
455
+ { parentTile, childHeaders }
456
+ ];
457
+ while (stack.length > 0) {
458
+ const entry = stack.pop();
459
+ for (const childHeader of entry.childHeaders) {
460
+ const childTile = new Tile3DNode(tileset, childHeader, entry.parentTile);
461
+ entry.parentTile.children.push(childTile);
462
+ childTile.depth = entry.parentTile.depth + 1;
463
+ tileset.stats.get('Tiles In Tileset(s)').incrementCount();
464
+ materializedTileCount++;
465
+ if (childHeader.children?.length) {
466
+ stack.push({ parentTile: childTile, childHeaders: childHeader.children });
467
+ }
468
+ }
469
+ }
470
+ return materializedTileCount;
471
+ }
472
+ /** Evicts least-recently-used settled subtree entries until the configured bound is met. */
473
+ trimImplicitSubtreeCache() {
474
+ if (this.implicitSubtreeCache.size <= this.maximumCachedSubtrees) {
475
+ return;
476
+ }
477
+ for (const subtreeUrl of this.implicitSubtreeCache.keys()) {
478
+ if (!this.pendingImplicitSubtreeUrls.has(subtreeUrl)) {
479
+ this.implicitSubtreeCache.delete(subtreeUrl);
480
+ }
481
+ if (this.implicitSubtreeCache.size <= this.maximumCachedSubtrees) {
482
+ break;
483
+ }
285
484
  }
286
- return await this.loadWithCoreApi(url, options);
287
485
  }
288
486
  }
289
487
  function isTilesetRequest(input) {
@@ -1 +1 @@
1
- {"version":3,"file":"tiles-3d-source.js","sourceRoot":"","sources":["../../../src/tileset-3d/format-3d-tiles/tiles-3d-source.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tiles-3d-source.js","sourceRoot":"","sources":["../../../src/tileset-3d/format-3d-tiles/tiles-3d-source.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,42 @@
1
1
  import { TilesetTraverser } from "../common/tileset-traverser.js";
2
+ import type { Tile3D } from "../common/tile-3d.js";
3
+ import type { FrameState } from "../helpers/frame-state.js";
2
4
  export declare class Tileset3DTraverser extends TilesetTraverser {
5
+ /** Pending implicit subtree requests keyed by viewport and tile identity. */
6
+ private readonly pendingImplicitSubtrees;
7
+ /**
8
+ * Reports whether every implicit subtree request started by this viewport traversal has settled.
9
+ *
10
+ * @param frameState - Traversal frame whose completion callback is being considered.
11
+ * @returns `true` when no matching subtree metadata request remains pending.
12
+ */
13
+ protected traversalFinished(frameState: FrameState): boolean;
3
14
  compareDistanceToCamera(a: any, b: any): number;
15
+ /**
16
+ * Starts an implicit subtree request only after culling, request-volume, and SSE eligibility.
17
+ *
18
+ * The current parent remains the traversal boundary while metadata is loading, which preserves
19
+ * REPLACE coverage and ADD accumulation. Request scheduling reads the tile's existing
20
+ * progressive-resolution and foveated metrics, so subtree metadata follows the same priority
21
+ * policy as render content. A completion notification lets the owning tileset publish the newly
22
+ * materialized traversal result on the next update.
23
+ *
24
+ * @param tile - Tile whose existing or lazy children should be updated.
25
+ * @param frameState - Current culling and LOD state.
26
+ */
27
+ updateChildTiles(tile: Tile3D, frameState: FrameState): void;
28
+ /**
29
+ * Resumes the same traversal frame after one lazy subtree request settles.
30
+ *
31
+ * Successful materialization traverses the new headers immediately. Failed or scheduler-cancelled
32
+ * requests finish the current traversal without retrying in a tight loop; a later application
33
+ * update may retry them.
34
+ *
35
+ * @param tile - Subtree-root tile whose request settled.
36
+ * @param frameState - Frame that started the request.
37
+ * @param requestKey - Viewport-scoped pending-request identity.
38
+ */
39
+ private handleImplicitSubtreeLoad;
4
40
  updateTileVisibility(tile: any, frameState: any): void;
5
41
  meetsScreenSpaceErrorEarly(tile: any, frameState: any): boolean;
6
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tileset-3d-traverser.d.ts","sourceRoot":"","sources":["../../../src/tileset-3d/format-3d-tiles/tileset-3d-traverser.ts"],"names":[],"mappings":"AAQA,OAAO,EAAC,gBAAgB,EAAC,uCAAoC;AAE7D,qBAAa,kBAAmB,SAAQ,gBAAgB;IACtD,uBAAuB,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA;IAO5B,oBAAoB,CAAC,IAAI,KAAA,EAAE,UAAU,KAAA;IAmCrC,0BAA0B,CAAC,IAAI,KAAA,EAAE,UAAU,KAAA;CAS5C"}
1
+ {"version":3,"file":"tileset-3d-traverser.d.ts","sourceRoot":"","sources":["../../../src/tileset-3d/format-3d-tiles/tileset-3d-traverser.ts"],"names":[],"mappings":"AAQA,OAAO,EAAC,gBAAgB,EAAC,uCAAoC;AAC7D,OAAO,KAAK,EAAC,MAAM,EAAC,6BAA0B;AAC9C,OAAO,KAAK,EAAC,UAAU,EAAC,kCAA+B;AAEvD,qBAAa,kBAAmB,SAAQ,gBAAgB;IACtD,6EAA6E;IAC7E,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAkC;IAE1E;;;;;OAKG;IACH,SAAS,CAAC,iBAAiB,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO;IAU5D,uBAAuB,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA;IAO5B;;;;;;;;;;;OAWG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,IAAI;IAiB5D;;;;;;;;;;OAUG;IACH,OAAO,CAAC,yBAAyB;IAgBjC,oBAAoB,CAAC,IAAI,KAAA,EAAE,UAAU,KAAA;IAmCrC,0BAA0B,CAAC,IAAI,KAAA,EAAE,UAAU,KAAA;CAS5C"}
@@ -6,12 +6,78 @@
6
6
  import { TILE3D_OPTIMIZATION_HINT, TILE_REFINEMENT } from "../../constants.js";
7
7
  import { TilesetTraverser } from "../common/tileset-traverser.js";
8
8
  export class Tileset3DTraverser extends TilesetTraverser {
9
+ /** Pending implicit subtree requests keyed by viewport and tile identity. */
10
+ pendingImplicitSubtrees = new Map();
11
+ /**
12
+ * Reports whether every implicit subtree request started by this viewport traversal has settled.
13
+ *
14
+ * @param frameState - Traversal frame whose completion callback is being considered.
15
+ * @returns `true` when no matching subtree metadata request remains pending.
16
+ */
17
+ traversalFinished(frameState) {
18
+ const viewportPrefix = `${frameState.viewport.id}:`;
19
+ for (const [requestKey, frameNumber] of this.pendingImplicitSubtrees) {
20
+ if (requestKey.startsWith(viewportPrefix) && frameNumber === frameState.frameNumber) {
21
+ return false;
22
+ }
23
+ }
24
+ return true;
25
+ }
9
26
  compareDistanceToCamera(a, b) {
10
27
  // Sort by farthest child first since this is going on a stack
11
28
  return b._distanceToCamera === 0 && a._distanceToCamera === 0
12
29
  ? b._centerZDepth - a._centerZDepth
13
30
  : b._distanceToCamera - a._distanceToCamera;
14
31
  }
32
+ /**
33
+ * Starts an implicit subtree request only after culling, request-volume, and SSE eligibility.
34
+ *
35
+ * The current parent remains the traversal boundary while metadata is loading, which preserves
36
+ * REPLACE coverage and ADD accumulation. Request scheduling reads the tile's existing
37
+ * progressive-resolution and foveated metrics, so subtree metadata follows the same priority
38
+ * policy as render content. A completion notification lets the owning tileset publish the newly
39
+ * materialized traversal result on the next update.
40
+ *
41
+ * @param tile - Tile whose existing or lazy children should be updated.
42
+ * @param frameState - Current culling and LOD state.
43
+ */
44
+ updateChildTiles(tile, frameState) {
45
+ if (tile.hasUnloadedChildren &&
46
+ tile.isVisibleAndInRequestVolume &&
47
+ this.shouldRefine(tile, frameState)) {
48
+ const requestKey = `${frameState.viewport.id}:${tile.id}`;
49
+ if (!this.pendingImplicitSubtrees.has(requestKey)) {
50
+ this.pendingImplicitSubtrees.set(requestKey, frameState.frameNumber);
51
+ void tile.tileset._loadTileChildren(tile, frameState).finally(() => {
52
+ this.handleImplicitSubtreeLoad(tile, frameState, requestKey);
53
+ });
54
+ }
55
+ }
56
+ super.updateChildTiles(tile, frameState);
57
+ }
58
+ /**
59
+ * Resumes the same traversal frame after one lazy subtree request settles.
60
+ *
61
+ * Successful materialization traverses the new headers immediately. Failed or scheduler-cancelled
62
+ * requests finish the current traversal without retrying in a tight loop; a later application
63
+ * update may retry them.
64
+ *
65
+ * @param tile - Subtree-root tile whose request settled.
66
+ * @param frameState - Frame that started the request.
67
+ * @param requestKey - Viewport-scoped pending-request identity.
68
+ */
69
+ handleImplicitSubtreeLoad(tile, frameState, requestKey) {
70
+ this.pendingImplicitSubtrees.delete(requestKey);
71
+ if (this._frameNumber !== frameState.frameNumber) {
72
+ return;
73
+ }
74
+ if (tile.childrenState === 'ready') {
75
+ this.executeTraversal(tile, frameState);
76
+ }
77
+ else if (this.traversalFinished(frameState)) {
78
+ this.options.onTraversalEnd(frameState);
79
+ }
80
+ }
15
81
  updateTileVisibility(tile, frameState) {
16
82
  super.updateTileVisibility(tile, frameState);
17
83
  // Optimization - if none of the tile's children are visible then this tile isn't visible
@@ -1 +1 @@
1
- {"version":3,"file":"tileset-3d-traverser.js","sourceRoot":"","sources":["../../../src/tileset-3d/format-3d-tiles/tileset-3d-traverser.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAEpC,wEAAwE;AACxE,4FAA4F;AAE5F,OAAO,EAAC,wBAAwB,EAAE,eAAe,EAAC,2BAAwB;AAC1E,OAAO,EAAC,gBAAgB,EAAC,uCAAoC;AAE7D,MAAM,OAAO,kBAAmB,SAAQ,gBAAgB;IACtD,uBAAuB,CAAC,CAAC,EAAE,CAAC;QAC1B,8DAA8D;QAC9D,OAAO,CAAC,CAAC,iBAAiB,KAAK,CAAC,IAAI,CAAC,CAAC,iBAAiB,KAAK,CAAC;YAC3D,CAAC,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa;YACnC,CAAC,CAAC,CAAC,CAAC,iBAAiB,GAAG,CAAC,CAAC,iBAAiB,CAAC;IAChD,CAAC;IAED,oBAAoB,CAAC,IAAI,EAAE,UAAU;QACnC,KAAK,CAAC,oBAAoB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAE7C,0FAA0F;QAC1F,IAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE,CAAC;YACtC,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QAC7C,IAAI,IAAI,CAAC,iBAAiB,IAAI,WAAW,EAAE,CAAC;YAC1C,oEAAoE;YACpE,2EAA2E;YAC3E,wCAAwC;YACxC,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACpC,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;YAClD,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;YACpC,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,0BAA0B,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC;YACtD,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;YACtB,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,KAAK,eAAe,CAAC,OAAO,CAAC;QACxD,MAAM,eAAe,GACnB,IAAI,CAAC,0BAA0B,KAAK,wBAAwB,CAAC,gBAAgB,CAAC;QAChF,IAAI,OAAO,IAAI,eAAe,IAAI,WAAW,EAAE,CAAC;YAC9C,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC;gBAC/C,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACtB,OAAO;YACT,CAAC;QACH,CAAC;IACH,CAAC;IAED,0BAA0B,CAAC,IAAI,EAAE,UAAU;QACzC,MAAM,EAAC,MAAM,EAAC,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,iBAAiB,IAAI,MAAM,CAAC,MAAM,KAAK,eAAe,CAAC,GAAG,EAAE,CAAC;YACjF,OAAO,KAAK,CAAC;QACf,CAAC;QAED,wFAAwF;QACxF,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;IACpD,CAAC;CACF"}
1
+ {"version":3,"file":"tileset-3d-traverser.js","sourceRoot":"","sources":["../../../src/tileset-3d/format-3d-tiles/tileset-3d-traverser.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"i3s-pending-tiles-register.d.ts","sourceRoot":"","sources":["../../../src/tileset-3d/format-i3s/i3s-pending-tiles-register.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,cAAc,CAA+C;IAErE;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAOhD;;;;OAIG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IASlD;;;;;OAKG;IACH,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;CAI/C"}
1
+ {"version":3,"file":"i3s-pending-tiles-register.d.ts","sourceRoot":"","sources":["../../../src/tileset-3d/format-i3s/i3s-pending-tiles-register.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,cAAc,CAA+C;IAErE;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAOhD;;;;OAIG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IASlD;;;;;OAKG;IACH,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;CAI/C"}
@@ -1,3 +1,6 @@
1
+ // loaders.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  /**
2
5
  * Counter to register pending tile headers for the particular frameNumber
3
6
  * Until all tiles are loaded we won't call `onTraversalEnd` callback
@@ -1 +1 @@
1
- {"version":3,"file":"i3s-pending-tiles-register.js","sourceRoot":"","sources":["../../../src/tileset-3d/format-i3s/i3s-pending-tiles-register.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,OAAO,uBAAuB;IAC1B,cAAc,GAAqC,IAAI,GAAG,EAAE,CAAC;IAErE;;;;OAIG;IACH,QAAQ,CAAC,UAAkB,EAAE,WAAmB;QAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;QACrE,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACnD,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;QAC3C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACnD,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,UAAkB,EAAE,WAAmB;QAChD,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACxD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QACD,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACnD,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,UAAkB,EAAE,WAAmB;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACzE,OAAO,KAAK,KAAK,CAAC,CAAC;IACrB,CAAC;CACF"}
1
+ {"version":3,"file":"i3s-pending-tiles-register.js","sourceRoot":"","sources":["../../../src/tileset-3d/format-i3s/i3s-pending-tiles-register.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAEpC;;;GAGG;AACH,MAAM,OAAO,uBAAuB;IAC1B,cAAc,GAAqC,IAAI,GAAG,EAAE,CAAC;IAErE;;;;OAIG;IACH,QAAQ,CAAC,UAAkB,EAAE,WAAmB;QAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;QACrE,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACnD,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;QAC3C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACnD,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,UAAkB,EAAE,WAAmB;QAChD,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACxD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QACD,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACnD,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,UAAkB,EAAE,WAAmB;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACzE,OAAO,KAAK,KAAK,CAAC,CAAC;IACrB,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"i3s-tile-manager.d.ts","sourceRoot":"","sources":["../../../src/tileset-3d/format-i3s/i3s-tile-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,kCAA+B;AAUlD,qBAAa,cAAc;IACzB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,oBAAoB,CAAiC;;IAM7D;;;;;;OAMG;IACH,GAAG,CAAC,OAAO,KAAA,EAAE,GAAG,KAAA,EAAE,QAAQ,KAAA,EAAE,UAAU,EAAE,UAAU;IAiClD;;;;OAIG;IACH,MAAM,CAAC,GAAG,KAAA,EAAE,UAAU,EAAE,UAAU;IAmBlC;;;;OAIG;IACH,IAAI,CAAC,GAAG,KAAA;IAIR;;;;;OAKG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO;CAGlE"}
1
+ {"version":3,"file":"i3s-tile-manager.d.ts","sourceRoot":"","sources":["../../../src/tileset-3d/format-i3s/i3s-tile-manager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,UAAU,EAAC,kCAA+B;AAUlD,qBAAa,cAAc;IACzB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,oBAAoB,CAAiC;;IAM7D;;;;;;OAMG;IACH,GAAG,CAAC,OAAO,KAAA,EAAE,GAAG,KAAA,EAAE,QAAQ,KAAA,EAAE,UAAU,EAAE,UAAU;IAiClD;;;;OAIG;IACH,MAAM,CAAC,GAAG,KAAA,EAAE,UAAU,EAAE,UAAU;IAmBlC;;;;OAIG;IACH,IAAI,CAAC,GAAG,KAAA;IAIR;;;;;OAKG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO;CAGlE"}
@@ -1,3 +1,6 @@
1
+ // loaders.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  import { I3SPendingTilesRegister } from "./i3s-pending-tiles-register.js";
2
5
  const STATUS = {
3
6
  REQUESTED: 'REQUESTED',
@@ -1 +1 @@
1
- {"version":3,"file":"i3s-tile-manager.js","sourceRoot":"","sources":["../../../src/tileset-3d/format-i3s/i3s-tile-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"i3s-tile-manager.js","sourceRoot":"","sources":["../../../src/tileset-3d/format-i3s/i3s-tile-manager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"i3s-tileset-traverser.d.ts","sourceRoot":"","sources":["../../../src/tileset-3d/format-i3s/i3s-tileset-traverser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAC,uCAAoC;AAK7D,OAAO,EAAC,UAAU,EAAC,kCAA+B;AAElD,qBAAa,mBAAoB,SAAQ,gBAAgB;IACvD,OAAO,CAAC,YAAY,CAAiB;gBAEzB,OAAO,KAAA;IAKnB;;;;OAIG;IACH,iBAAiB,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO;IAIlD,YAAY,CAAC,IAAI,KAAA,EAAE,UAAU,EAAE,UAAU;IAKzC,gBAAgB,CAAC,IAAI,KAAA,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO;IA8BjD,SAAS,CAAC,IAAI,KAAA,EAAE,MAAM,KAAA,EAAE,UAAU,KAAA;IAQxC;;;;;;;OAOG;IACH,WAAW,CAAC,MAAM,KAAA,EAAE,IAAI,KAAA,EAAE,UAAU,KAAA;CAqBrC"}
1
+ {"version":3,"file":"i3s-tileset-traverser.d.ts","sourceRoot":"","sources":["../../../src/tileset-3d/format-i3s/i3s-tileset-traverser.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,gBAAgB,EAAC,uCAAoC;AAK7D,OAAO,EAAC,UAAU,EAAC,kCAA+B;AAElD,qBAAa,mBAAoB,SAAQ,gBAAgB;IACvD,OAAO,CAAC,YAAY,CAAiB;gBAEzB,OAAO,KAAA;IAKnB;;;;OAIG;IACH,iBAAiB,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO;IAIlD,YAAY,CAAC,IAAI,KAAA,EAAE,UAAU,EAAE,UAAU;IAKzC,gBAAgB,CAAC,IAAI,KAAA,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO;IA8BjD,SAAS,CAAC,IAAI,KAAA,EAAE,MAAM,KAAA,EAAE,UAAU,KAAA;IAQxC;;;;;;;OAOG;IACH,WAAW,CAAC,MAAM,KAAA,EAAE,IAAI,KAAA,EAAE,UAAU,KAAA;CAqBrC"}
@@ -1,3 +1,6 @@
1
+ // loaders.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  import { TilesetTraverser } from "../common/tileset-traverser.js";
2
5
  import { getLodStatus } from "../helpers/i3s-lod.js";
3
6
  import { Tile3D } from "../common/tile-3d.js";
@@ -1 +1 @@
1
- {"version":3,"file":"i3s-tileset-traverser.js","sourceRoot":"","sources":["../../../src/tileset-3d/format-i3s/i3s-tileset-traverser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"i3s-tileset-traverser.js","sourceRoot":"","sources":["../../../src/tileset-3d/format-i3s/i3s-tileset-traverser.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"3d-tiles-options.d.ts","sourceRoot":"","sources":["../../../src/tileset-3d/helpers/3d-tiles-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,gCAA6B;AAEpD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,SAAS,GAAG;IAAC,eAAe,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAA;CAAC,CAIxF"}
1
+ {"version":3,"file":"3d-tiles-options.d.ts","sourceRoot":"","sources":["../../../src/tileset-3d/helpers/3d-tiles-options.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,SAAS,EAAC,gCAA6B;AAEpD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,SAAS,GAAG;IAAC,eAAe,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAA;CAAC,CAIxF"}
@@ -1,3 +1,6 @@
1
+ // loaders.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  export function get3dTilesOptions(tileset) {
2
5
  return {
3
6
  assetGltfUpAxis: (tileset.asset && tileset.asset.gltfUpAxis) || 'Y'
@@ -1 +1 @@
1
- {"version":3,"file":"3d-tiles-options.js","sourceRoot":"","sources":["../../../src/tileset-3d/helpers/3d-tiles-options.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,iBAAiB,CAAC,OAAkB;IAClD,OAAO;QACL,eAAe,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,GAAG;KACpE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"3d-tiles-options.js","sourceRoot":"","sources":["../../../src/tileset-3d/helpers/3d-tiles-options.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAIpC,MAAM,UAAU,iBAAiB,CAAC,OAAkB;IAClD,OAAO;QACL,eAAe,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,GAAG;KACpE,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"bounding-volume.d.ts","sourceRoot":"","sources":["../../../src/tileset-3d/helpers/bounding-volume.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,cAAc,EAAE,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AAuBrE;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,oBAAoB,KAAA,EAAE,SAAS,KAAA,EAAE,MAAM,CAAC,KAAA,OAiB5E;AAED,yDAAyD;AACzD,MAAM,MAAM,kBAAkB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;AAEhE;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,oBAAoB,KAAA,EACpB,cAAc,EAAE,mBAAmB,GAAG,cAAc,GACnD,kBAAkB,CAuBpB"}
1
+ {"version":3,"file":"bounding-volume.d.ts","sourceRoot":"","sources":["../../../src/tileset-3d/helpers/bounding-volume.ts"],"names":[],"mappings":"AAOA,OAAO,EAAC,cAAc,EAAE,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AAuBrE;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,oBAAoB,KAAA,EAAE,SAAS,KAAA,EAAE,MAAM,CAAC,KAAA,OAiB5E;AAED,yDAAyD;AACzD,MAAM,MAAM,kBAAkB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;AAEhE;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,oBAAoB,KAAA,EACpB,cAAc,EAAE,mBAAmB,GAAG,cAAc,GACnD,kBAAkB,CAuBpB"}