@loaders.gl/tiles 3.3.0-alpha.9 → 3.3.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.
Files changed (147) hide show
  1. package/dist/constants.d.ts.map +1 -1
  2. package/dist/constants.js +1 -0
  3. package/dist/dist.min.js +105 -103
  4. package/dist/es5/constants.js +1 -0
  5. package/dist/es5/constants.js.map +1 -1
  6. package/dist/es5/index.js +8 -9
  7. package/dist/es5/index.js.map +1 -1
  8. package/dist/es5/tileset/{traversers → format-3d-tiles}/tileset-3d-traverser.js +4 -4
  9. package/dist/es5/tileset/format-3d-tiles/tileset-3d-traverser.js.map +1 -0
  10. package/dist/es5/tileset/{traversers → format-i3s}/i3s-pending-tiles-register.js +2 -2
  11. package/dist/es5/tileset/format-i3s/i3s-pending-tiles-register.js.map +1 -0
  12. package/dist/es5/tileset/{traversers → format-i3s}/i3s-tile-manager.js +4 -4
  13. package/dist/es5/tileset/format-i3s/i3s-tile-manager.js.map +1 -0
  14. package/dist/es5/tileset/{traversers → format-i3s}/i3s-tileset-traverser.js +9 -8
  15. package/dist/es5/tileset/format-i3s/i3s-tileset-traverser.js.map +1 -0
  16. package/dist/es5/tileset/helpers/i3s-lod.js +1 -0
  17. package/dist/es5/tileset/helpers/i3s-lod.js.map +1 -1
  18. package/dist/es5/tileset/helpers/tiles-3d-lod.js.map +1 -1
  19. package/dist/es5/tileset/helpers/transform-utils.js +1 -0
  20. package/dist/es5/tileset/helpers/transform-utils.js.map +1 -1
  21. package/dist/es5/tileset/helpers/zoom.js +1 -0
  22. package/dist/es5/tileset/helpers/zoom.js.map +1 -1
  23. package/dist/es5/tileset/tile-3d.js +9 -9
  24. package/dist/es5/tileset/tile-3d.js.map +1 -1
  25. package/dist/es5/tileset/tileset-3d.js +13 -13
  26. package/dist/es5/tileset/tileset-3d.js.map +1 -1
  27. package/dist/es5/tileset/tileset-cache.js +4 -4
  28. package/dist/es5/tileset/tileset-cache.js.map +1 -1
  29. package/dist/es5/tileset/{traversers/tileset-traverser.js → tileset-traverser.js} +7 -6
  30. package/dist/es5/tileset/tileset-traverser.js.map +1 -0
  31. package/dist/es5/utils/doubly-linked-list-node.js +2 -2
  32. package/dist/es5/utils/doubly-linked-list-node.js.map +1 -1
  33. package/dist/es5/utils/doubly-linked-list.js +4 -4
  34. package/dist/es5/utils/doubly-linked-list.js.map +1 -1
  35. package/dist/es5/utils/managed-array.js +2 -2
  36. package/dist/es5/utils/managed-array.js.map +1 -1
  37. package/dist/esm/constants.js +2 -0
  38. package/dist/esm/constants.js.map +1 -1
  39. package/dist/esm/index.js +6 -4
  40. package/dist/esm/index.js.map +1 -1
  41. package/dist/esm/tileset/{traversers → format-3d-tiles}/tileset-3d-traverser.js +2 -2
  42. package/dist/esm/tileset/format-3d-tiles/tileset-3d-traverser.js.map +1 -0
  43. package/dist/esm/tileset/{traversers → format-i3s}/i3s-pending-tiles-register.js +1 -1
  44. package/dist/esm/tileset/format-i3s/i3s-pending-tiles-register.js.map +1 -0
  45. package/dist/esm/tileset/{traversers → format-i3s}/i3s-tile-manager.js +2 -2
  46. package/dist/esm/tileset/format-i3s/i3s-tile-manager.js.map +1 -0
  47. package/dist/esm/tileset/{traversers → format-i3s}/i3s-tileset-traverser.js +9 -8
  48. package/dist/esm/tileset/format-i3s/i3s-tileset-traverser.js.map +1 -0
  49. package/dist/esm/tileset/helpers/i3s-lod.js +2 -0
  50. package/dist/esm/tileset/helpers/i3s-lod.js.map +1 -1
  51. package/dist/esm/tileset/helpers/tiles-3d-lod.js.map +1 -1
  52. package/dist/esm/tileset/helpers/transform-utils.js +2 -0
  53. package/dist/esm/tileset/helpers/transform-utils.js.map +1 -1
  54. package/dist/esm/tileset/helpers/zoom.js +2 -0
  55. package/dist/esm/tileset/helpers/zoom.js.map +1 -1
  56. package/dist/esm/tileset/tile-3d.js +4 -3
  57. package/dist/esm/tileset/tile-3d.js.map +1 -1
  58. package/dist/esm/tileset/tileset-3d.js +8 -7
  59. package/dist/esm/tileset/tileset-3d.js.map +1 -1
  60. package/dist/esm/tileset/tileset-cache.js +2 -2
  61. package/dist/esm/tileset/tileset-cache.js.map +1 -1
  62. package/dist/esm/tileset/{traversers/tileset-traverser.js → tileset-traverser.js} +4 -3
  63. package/dist/esm/tileset/tileset-traverser.js.map +1 -0
  64. package/dist/esm/utils/doubly-linked-list-node.js +1 -1
  65. package/dist/esm/utils/doubly-linked-list-node.js.map +1 -1
  66. package/dist/esm/utils/doubly-linked-list.js +2 -2
  67. package/dist/esm/utils/doubly-linked-list.js.map +1 -1
  68. package/dist/esm/utils/managed-array.js +1 -1
  69. package/dist/esm/utils/managed-array.js.map +1 -1
  70. package/dist/index.d.ts +4 -4
  71. package/dist/index.d.ts.map +1 -1
  72. package/dist/index.js +6 -8
  73. package/dist/tileset/{traversers → format-3d-tiles}/tileset-3d-traverser.d.ts +2 -2
  74. package/dist/tileset/format-3d-tiles/tileset-3d-traverser.d.ts.map +1 -0
  75. package/dist/tileset/{traversers → format-3d-tiles}/tileset-3d-traverser.js +6 -7
  76. package/dist/tileset/{traversers → format-i3s}/i3s-pending-tiles-register.d.ts +1 -1
  77. package/dist/tileset/format-i3s/i3s-pending-tiles-register.d.ts.map +1 -0
  78. package/dist/tileset/{traversers → format-i3s}/i3s-pending-tiles-register.js +2 -1
  79. package/dist/tileset/{traversers → format-i3s}/i3s-tile-manager.d.ts +1 -1
  80. package/dist/tileset/format-i3s/i3s-tile-manager.d.ts.map +1 -0
  81. package/dist/tileset/{traversers → format-i3s}/i3s-tile-manager.js +4 -6
  82. package/dist/tileset/{traversers → format-i3s}/i3s-tileset-traverser.d.ts +6 -6
  83. package/dist/tileset/format-i3s/i3s-tileset-traverser.d.ts.map +1 -0
  84. package/dist/tileset/{traversers → format-i3s}/i3s-tileset-traverser.js +13 -15
  85. package/dist/tileset/helpers/i3s-lod.d.ts +1 -1
  86. package/dist/tileset/helpers/i3s-lod.d.ts.map +1 -1
  87. package/dist/tileset/helpers/i3s-lod.js +1 -0
  88. package/dist/tileset/helpers/tiles-3d-lod.d.ts.map +1 -1
  89. package/dist/tileset/helpers/tiles-3d-lod.js +3 -2
  90. package/dist/tileset/helpers/transform-utils.d.ts.map +1 -1
  91. package/dist/tileset/helpers/transform-utils.js +1 -0
  92. package/dist/tileset/helpers/zoom.d.ts.map +1 -1
  93. package/dist/tileset/helpers/zoom.js +1 -0
  94. package/dist/tileset/tile-3d.d.ts +10 -10
  95. package/dist/tileset/tile-3d.d.ts.map +1 -1
  96. package/dist/tileset/tile-3d.js +8 -9
  97. package/dist/tileset/tileset-3d.d.ts +3 -3
  98. package/dist/tileset/tileset-3d.d.ts.map +1 -1
  99. package/dist/tileset/tileset-3d.js +16 -16
  100. package/dist/tileset/tileset-cache.d.ts +1 -1
  101. package/dist/tileset/tileset-cache.d.ts.map +1 -1
  102. package/dist/tileset/tileset-cache.js +6 -7
  103. package/dist/tileset/{traversers/tileset-traverser.d.ts → tileset-traverser.d.ts} +6 -16
  104. package/dist/tileset/tileset-traverser.d.ts.map +1 -0
  105. package/dist/tileset/{traversers/tileset-traverser.js → tileset-traverser.js} +15 -9
  106. package/dist/utils/doubly-linked-list-node.d.ts +1 -2
  107. package/dist/utils/doubly-linked-list-node.d.ts.map +1 -1
  108. package/dist/utils/doubly-linked-list-node.js +4 -3
  109. package/dist/utils/doubly-linked-list.d.ts +2 -3
  110. package/dist/utils/doubly-linked-list.d.ts.map +1 -1
  111. package/dist/utils/doubly-linked-list.js +4 -7
  112. package/dist/utils/managed-array.d.ts +1 -1
  113. package/dist/utils/managed-array.d.ts.map +1 -1
  114. package/dist/utils/managed-array.js +2 -1
  115. package/package.json +4 -4
  116. package/src/constants.ts +2 -0
  117. package/src/index.ts +6 -4
  118. package/src/tileset/{traversers → format-3d-tiles}/tileset-3d-traverser.ts +4 -2
  119. package/src/tileset/{traversers → format-i3s}/i3s-pending-tiles-register.ts +1 -1
  120. package/src/tileset/{traversers → format-i3s}/i3s-tile-manager.ts +2 -2
  121. package/src/tileset/{traversers → format-i3s}/i3s-tileset-traverser.ts +13 -13
  122. package/src/tileset/helpers/i3s-lod.ts +3 -1
  123. package/src/tileset/helpers/tiles-3d-lod.ts +2 -0
  124. package/src/tileset/helpers/transform-utils.ts +2 -0
  125. package/src/tileset/helpers/zoom.ts +2 -0
  126. package/src/tileset/tile-3d.ts +16 -13
  127. package/src/tileset/tileset-3d.ts +12 -7
  128. package/src/tileset/tileset-cache.ts +4 -2
  129. package/src/tileset/{traversers/tileset-traverser.ts → tileset-traverser.ts} +17 -16
  130. package/src/utils/doubly-linked-list-node.ts +3 -2
  131. package/src/utils/doubly-linked-list.ts +2 -3
  132. package/src/utils/managed-array.ts +1 -1
  133. package/dist/es5/tileset/traversers/i3s-pending-tiles-register.js.map +0 -1
  134. package/dist/es5/tileset/traversers/i3s-tile-manager.js.map +0 -1
  135. package/dist/es5/tileset/traversers/i3s-tileset-traverser.js.map +0 -1
  136. package/dist/es5/tileset/traversers/tileset-3d-traverser.js.map +0 -1
  137. package/dist/es5/tileset/traversers/tileset-traverser.js.map +0 -1
  138. package/dist/esm/tileset/traversers/i3s-pending-tiles-register.js.map +0 -1
  139. package/dist/esm/tileset/traversers/i3s-tile-manager.js.map +0 -1
  140. package/dist/esm/tileset/traversers/i3s-tileset-traverser.js.map +0 -1
  141. package/dist/esm/tileset/traversers/tileset-3d-traverser.js.map +0 -1
  142. package/dist/esm/tileset/traversers/tileset-traverser.js.map +0 -1
  143. package/dist/tileset/traversers/i3s-pending-tiles-register.d.ts.map +0 -1
  144. package/dist/tileset/traversers/i3s-tile-manager.d.ts.map +0 -1
  145. package/dist/tileset/traversers/i3s-tileset-traverser.d.ts.map +0 -1
  146. package/dist/tileset/traversers/tileset-3d-traverser.d.ts.map +0 -1
  147. package/dist/tileset/traversers/tileset-traverser.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB;;;;;;;CAO9B,CAAC;AAEF,eAAO,MAAM,eAAe;;;CAG3B,CAAC;AAEF,eAAO,MAAM,SAAS;;;;;CAKrB,CAAC;AAEF,eAAO,MAAM,YAAY;;;CAGxB,CAAC;AAEF,eAAO,MAAM,eAAe;;;CAG3B,CAAC;AAGF,eAAO,MAAM,wBAAwB;;;;CAIpC,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,kBAAkB;;;;;;;CAO9B,CAAC;AAEF,eAAO,MAAM,eAAe;;;CAG3B,CAAC;AAEF,eAAO,MAAM,SAAS;;;;;CAKrB,CAAC;AAEF,eAAO,MAAM,YAAY;;;CAGxB,CAAC;AAEF,eAAO,MAAM,eAAe;;;CAG3B,CAAC;AAGF,eAAO,MAAM,wBAAwB;;;;CAIpC,CAAC"}
package/dist/constants.js CHANGED
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+ // loaders.gl, MIT license
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  exports.TILE3D_OPTIMIZATION_HINT = exports.LOD_METRIC_TYPE = exports.TILESET_TYPE = exports.TILE_TYPE = exports.TILE_REFINEMENT = exports.TILE_CONTENT_STATE = void 0;
4
5
  exports.TILE_CONTENT_STATE = {
package/dist/dist.min.js CHANGED
@@ -3681,11 +3681,13 @@
3681
3681
  }
3682
3682
  });
3683
3683
 
3684
- // ../worker-utils/src/lib/node/worker_threads-browser.js
3684
+ // ../worker-utils/src/lib/node/worker_threads-browser.ts
3685
3685
  var Worker2;
3686
3686
  var init_worker_threads_browser = __esm({
3687
- "../worker-utils/src/lib/node/worker_threads-browser.js"() {
3687
+ "../worker-utils/src/lib/node/worker_threads-browser.ts"() {
3688
3688
  Worker2 = class {
3689
+ terminate() {
3690
+ }
3689
3691
  };
3690
3692
  }
3691
3693
  });
@@ -4072,7 +4074,7 @@
4072
4074
  var init_get_worker_url = __esm({
4073
4075
  "../worker-utils/src/lib/worker-api/get-worker-url.ts"() {
4074
4076
  init_assert3();
4075
- NPM_TAG = "beta";
4077
+ NPM_TAG = "latest";
4076
4078
  }
4077
4079
  });
4078
4080
 
@@ -4158,46 +4160,7 @@
4158
4160
  }
4159
4161
  });
4160
4162
 
4161
- // ../loader-utils/src/lib/binary-utils/buffer-utils.ts
4162
- function isBuffer(value) {
4163
- return value && typeof value === "object" && value.isBuffer;
4164
- }
4165
- function bufferToArrayBuffer(buffer) {
4166
- if (isBuffer(buffer)) {
4167
- const typedArray = new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.length);
4168
- return typedArray.slice().buffer;
4169
- }
4170
- return buffer;
4171
- }
4172
- var init_buffer_utils = __esm({
4173
- "../loader-utils/src/lib/binary-utils/buffer-utils.ts"() {
4174
- }
4175
- });
4176
-
4177
4163
  // ../loader-utils/src/lib/binary-utils/array-buffer-utils.ts
4178
- function toArrayBuffer(data) {
4179
- if (isBuffer(data)) {
4180
- return bufferToArrayBuffer(data);
4181
- }
4182
- if (data instanceof ArrayBuffer) {
4183
- return data;
4184
- }
4185
- if (ArrayBuffer.isView(data)) {
4186
- if (data.byteOffset === 0 && data.byteLength === data.buffer.byteLength) {
4187
- return data.buffer;
4188
- }
4189
- return data.buffer.slice(data.byteOffset, data.byteOffset + data.byteLength);
4190
- }
4191
- if (typeof data === "string") {
4192
- const text = data;
4193
- const uint8Array = new TextEncoder().encode(text);
4194
- return uint8Array.buffer;
4195
- }
4196
- if (data && typeof data === "object" && data._toArrayBuffer) {
4197
- return data._toArrayBuffer();
4198
- }
4199
- throw new Error("toArrayBuffer");
4200
- }
4201
4164
  function compareArrayBuffers(arrayBuffer1, arrayBuffer2, byteLength) {
4202
4165
  byteLength = byteLength || arrayBuffer1.byteLength;
4203
4166
  if (arrayBuffer1.byteLength < byteLength || arrayBuffer2.byteLength < byteLength) {
@@ -4225,7 +4188,6 @@
4225
4188
  }
4226
4189
  var init_array_buffer_utils = __esm({
4227
4190
  "../loader-utils/src/lib/binary-utils/array-buffer-utils.ts"() {
4228
- init_buffer_utils();
4229
4191
  }
4230
4192
  });
4231
4193
 
@@ -4368,6 +4330,45 @@
4368
4330
  }
4369
4331
  });
4370
4332
 
4333
+ // (disabled):../loader-utils/src/lib/node/buffer
4334
+ var init_buffer = __esm({
4335
+ "(disabled):../loader-utils/src/lib/node/buffer"() {
4336
+ }
4337
+ });
4338
+
4339
+ // ../loader-utils/src/lib/binary-utils/memory-conversion-utils.ts
4340
+ function isBuffer(value) {
4341
+ return value && typeof value === "object" && value.isBuffer;
4342
+ }
4343
+ function toArrayBuffer2(data) {
4344
+ if (isBuffer(data)) {
4345
+ return node.toArrayBuffer(data);
4346
+ }
4347
+ if (data instanceof ArrayBuffer) {
4348
+ return data;
4349
+ }
4350
+ if (ArrayBuffer.isView(data)) {
4351
+ if (data.byteOffset === 0 && data.byteLength === data.buffer.byteLength) {
4352
+ return data.buffer;
4353
+ }
4354
+ return data.buffer.slice(data.byteOffset, data.byteOffset + data.byteLength);
4355
+ }
4356
+ if (typeof data === "string") {
4357
+ const text = data;
4358
+ const uint8Array = new TextEncoder().encode(text);
4359
+ return uint8Array.buffer;
4360
+ }
4361
+ if (data && typeof data === "object" && data._toArrayBuffer) {
4362
+ return data._toArrayBuffer();
4363
+ }
4364
+ throw new Error("toArrayBuffer");
4365
+ }
4366
+ var init_memory_conversion_utils = __esm({
4367
+ "../loader-utils/src/lib/binary-utils/memory-conversion-utils.ts"() {
4368
+ init_buffer();
4369
+ }
4370
+ });
4371
+
4371
4372
  // ../loader-utils/src/lib/path-utils/path.ts
4372
4373
  var path_exports = {};
4373
4374
  __export(path_exports, {
@@ -4411,6 +4412,7 @@
4411
4412
  init_async_iteration();
4412
4413
  init_request_scheduler();
4413
4414
  init_file_aliases();
4415
+ init_memory_conversion_utils();
4414
4416
  init_path();
4415
4417
  }
4416
4418
  });
@@ -4444,55 +4446,55 @@
4444
4446
  return this._length;
4445
4447
  }
4446
4448
  add(item) {
4447
- const node = new DoublyLinkedListNode(item, this.tail, null);
4449
+ const node2 = new DoublyLinkedListNode(item, this.tail, null);
4448
4450
  if (this.tail) {
4449
- this.tail.next = node;
4450
- this.tail = node;
4451
+ this.tail.next = node2;
4452
+ this.tail = node2;
4451
4453
  } else {
4452
- this.head = node;
4453
- this.tail = node;
4454
+ this.head = node2;
4455
+ this.tail = node2;
4454
4456
  }
4455
4457
  ++this._length;
4456
- return node;
4458
+ return node2;
4457
4459
  }
4458
- remove(node) {
4459
- if (!node) {
4460
+ remove(node2) {
4461
+ if (!node2) {
4460
4462
  return;
4461
4463
  }
4462
- if (node.previous && node.next) {
4463
- node.previous.next = node.next;
4464
- node.next.previous = node.previous;
4465
- } else if (node.previous) {
4466
- node.previous.next = null;
4467
- this.tail = node.previous;
4468
- } else if (node.next) {
4469
- node.next.previous = null;
4470
- this.head = node.next;
4464
+ if (node2.previous && node2.next) {
4465
+ node2.previous.next = node2.next;
4466
+ node2.next.previous = node2.previous;
4467
+ } else if (node2.previous) {
4468
+ node2.previous.next = null;
4469
+ this.tail = node2.previous;
4470
+ } else if (node2.next) {
4471
+ node2.next.previous = null;
4472
+ this.head = node2.next;
4471
4473
  } else {
4472
4474
  this.head = null;
4473
4475
  this.tail = null;
4474
4476
  }
4475
- node.next = null;
4476
- node.previous = null;
4477
+ node2.next = null;
4478
+ node2.previous = null;
4477
4479
  --this._length;
4478
4480
  }
4479
- splice(node, nextNode) {
4480
- if (node === nextNode) {
4481
+ splice(node2, nextNode) {
4482
+ if (node2 === nextNode) {
4481
4483
  return;
4482
4484
  }
4483
4485
  this.remove(nextNode);
4484
- this._insert(node, nextNode);
4486
+ this._insert(node2, nextNode);
4485
4487
  }
4486
- _insert(node, nextNode) {
4487
- const oldNodeNext = node.next;
4488
- node.next = nextNode;
4489
- if (this.tail === node) {
4488
+ _insert(node2, nextNode) {
4489
+ const oldNodeNext = node2.next;
4490
+ node2.next = nextNode;
4491
+ if (this.tail === node2) {
4490
4492
  this.tail = nextNode;
4491
4493
  } else {
4492
4494
  oldNodeNext.previous = nextNode;
4493
4495
  }
4494
4496
  nextNode.next = oldNodeNext;
4495
- nextNode.previous = node;
4497
+ nextNode.previous = node2;
4496
4498
  ++this._length;
4497
4499
  }
4498
4500
  };
@@ -4517,9 +4519,9 @@
4517
4519
  this._list.splice(this._list.tail, this._sentinel);
4518
4520
  }
4519
4521
  touch(tile) {
4520
- const node = tile._cacheNode;
4521
- if (defined(node)) {
4522
- this._list.splice(this._sentinel, node);
4522
+ const node2 = tile._cacheNode;
4523
+ if (defined(node2)) {
4524
+ this._list.splice(this._sentinel, node2);
4523
4525
  }
4524
4526
  }
4525
4527
  add(tileset, tile, addCallback) {
@@ -4531,11 +4533,11 @@
4531
4533
  }
4532
4534
  }
4533
4535
  unloadTile(tileset, tile, unloadCallback) {
4534
- const node = tile._cacheNode;
4535
- if (!defined(node)) {
4536
+ const node2 = tile._cacheNode;
4537
+ if (!defined(node2)) {
4536
4538
  return;
4537
4539
  }
4538
- this._list.remove(node);
4540
+ this._list.remove(node2);
4539
4541
  tile._cacheNode = void 0;
4540
4542
  if (unloadCallback) {
4541
4543
  unloadCallback(tileset, tile);
@@ -4547,10 +4549,10 @@
4547
4549
  const list = this._list;
4548
4550
  const maximumMemoryUsageInBytes = tileset.maximumMemoryUsage * 1024 * 1024;
4549
4551
  const sentinel = this._sentinel;
4550
- let node = list.head;
4551
- while (node !== sentinel && (tileset.gpuMemoryUsageInBytes > maximumMemoryUsageInBytes || trimTiles)) {
4552
- const tile = node.item;
4553
- node = node.next;
4552
+ let node2 = list.head;
4553
+ while (node2 !== sentinel && (tileset.gpuMemoryUsageInBytes > maximumMemoryUsageInBytes || trimTiles)) {
4554
+ const tile = node2.item;
4555
+ node2 = node2.next;
4554
4556
  this.unloadTile(tileset, tile, unloadCallback);
4555
4557
  }
4556
4558
  }
@@ -6677,7 +6679,7 @@
6677
6679
  if (done) {
6678
6680
  return;
6679
6681
  }
6680
- yield toArrayBuffer(value);
6682
+ yield toArrayBuffer2(value);
6681
6683
  }
6682
6684
  } catch (error) {
6683
6685
  reader.releaseLock();
@@ -6685,7 +6687,7 @@
6685
6687
  }
6686
6688
  async function* makeNodeStreamIterator(stream, options) {
6687
6689
  for await (const chunk of stream) {
6688
- yield toArrayBuffer(chunk);
6690
+ yield toArrayBuffer2(chunk);
6689
6691
  }
6690
6692
  }
6691
6693
  var init_make_stream_iterator = __esm({
@@ -7239,10 +7241,10 @@
7239
7241
  }
7240
7242
  });
7241
7243
 
7242
- // src/tileset/traversers/tileset-traverser.ts
7244
+ // src/tileset/tileset-traverser.ts
7243
7245
  var DEFAULT_PROPS3, TilesetTraverser;
7244
7246
  var init_tileset_traverser = __esm({
7245
- "src/tileset/traversers/tileset-traverser.ts"() {
7247
+ "src/tileset/tileset-traverser.ts"() {
7246
7248
  init_managed_array();
7247
7249
  init_constants3();
7248
7250
  DEFAULT_PROPS3 = {
@@ -7474,7 +7476,7 @@
7474
7476
  function defined3(x) {
7475
7477
  return x !== void 0 && x !== null;
7476
7478
  }
7477
- var scratchVector9, TileHeader;
7479
+ var scratchVector9, Tile3D;
7478
7480
  var init_tile_3d = __esm({
7479
7481
  "src/tileset/tile-3d.ts"() {
7480
7482
  init_esm();
@@ -7487,7 +7489,7 @@
7487
7489
  init_d_tiles_options();
7488
7490
  init_tileset_traverser();
7489
7491
  scratchVector9 = new Vector3();
7490
- TileHeader = class {
7492
+ Tile3D = class {
7491
7493
  constructor(tileset, header, parentHeader, extendedId = "") {
7492
7494
  this.header = header;
7493
7495
  this.tileset = tileset;
@@ -7852,10 +7854,10 @@
7852
7854
  }
7853
7855
  });
7854
7856
 
7855
- // src/tileset/traversers/tileset-3d-traverser.ts
7857
+ // src/tileset/format-3d-tiles/tileset-3d-traverser.ts
7856
7858
  var Tileset3DTraverser;
7857
7859
  var init_tileset_3d_traverser = __esm({
7858
- "src/tileset/traversers/tileset-3d-traverser.ts"() {
7860
+ "src/tileset/format-3d-tiles/tileset-3d-traverser.ts"() {
7859
7861
  init_constants3();
7860
7862
  init_tileset_traverser();
7861
7863
  Tileset3DTraverser = class extends TilesetTraverser {
@@ -7898,10 +7900,10 @@
7898
7900
  }
7899
7901
  });
7900
7902
 
7901
- // src/tileset/traversers/i3s-pending-tiles-register.ts
7903
+ // src/tileset/format-i3s/i3s-pending-tiles-register.ts
7902
7904
  var I3SPendingTilesRegister;
7903
7905
  var init_i3s_pending_tiles_register = __esm({
7904
- "src/tileset/traversers/i3s-pending-tiles-register.ts"() {
7906
+ "src/tileset/format-i3s/i3s-pending-tiles-register.ts"() {
7905
7907
  I3SPendingTilesRegister = class {
7906
7908
  constructor() {
7907
7909
  this.frameNumberMap = new Map();
@@ -7928,10 +7930,10 @@
7928
7930
  }
7929
7931
  });
7930
7932
 
7931
- // src/tileset/traversers/i3s-tile-manager.ts
7933
+ // src/tileset/format-i3s/i3s-tile-manager.ts
7932
7934
  var STATUS, I3STileManager;
7933
7935
  var init_i3s_tile_manager = __esm({
7934
- "src/tileset/traversers/i3s-tile-manager.ts"() {
7936
+ "src/tileset/format-i3s/i3s-tile-manager.ts"() {
7935
7937
  init_i3s_pending_tiles_register();
7936
7938
  STATUS = {
7937
7939
  REQUESTED: "REQUESTED",
@@ -7995,23 +7997,23 @@
7995
7997
  }
7996
7998
  });
7997
7999
 
7998
- // src/tileset/traversers/i3s-tileset-traverser.ts
8000
+ // src/tileset/format-i3s/i3s-tileset-traverser.ts
7999
8001
  var I3STilesetTraverser;
8000
8002
  var init_i3s_tileset_traverser = __esm({
8001
- "src/tileset/traversers/i3s-tileset-traverser.ts"() {
8003
+ "src/tileset/format-i3s/i3s-tileset-traverser.ts"() {
8002
8004
  init_src3();
8003
8005
  init_tileset_traverser();
8004
8006
  init_i3s_lod();
8005
8007
  init_tile_3d();
8006
8008
  init_i3s_tile_manager();
8007
8009
  I3STilesetTraverser = class extends TilesetTraverser {
8008
- traversalFinished(frameState) {
8009
- return !this._tileManager.hasPendingTiles(frameState.viewport.id, this._frameNumber || 0);
8010
- }
8011
8010
  constructor(options) {
8012
8011
  super(options);
8013
8012
  this._tileManager = new I3STileManager();
8014
8013
  }
8014
+ traversalFinished(frameState) {
8015
+ return !this._tileManager.hasPendingTiles(frameState.viewport.id, this._frameNumber || 0);
8016
+ }
8015
8017
  shouldRefine(tile, frameState) {
8016
8018
  tile._lodJudge = getLodStatus(tile, frameState);
8017
8019
  return tile._lodJudge === "DIG";
@@ -8053,7 +8055,7 @@
8053
8055
  return await load(nodeUrl, loader, options);
8054
8056
  }
8055
8057
  _onTileLoad(header, tile, extendedId) {
8056
- const childTile = new TileHeader(tile.tileset, header, tile, extendedId);
8058
+ const childTile = new Tile3D(tile.tileset, header, tile, extendedId);
8057
8059
  tile.children.push(childTile);
8058
8060
  const frameState = this._tileManager.find(childTile.id).frameState;
8059
8061
  this.updateTile(childTile, frameState);
@@ -8092,10 +8094,10 @@
8092
8094
  init_frame_state();
8093
8095
  init_zoom();
8094
8096
  init_tile_3d();
8095
- init_tileset_3d_traverser();
8097
+ init_constants3();
8096
8098
  init_tileset_traverser();
8099
+ init_tileset_3d_traverser();
8097
8100
  init_i3s_tileset_traverser();
8098
- init_constants3();
8099
8101
  DEFAULT_PROPS4 = {
8100
8102
  description: "",
8101
8103
  ellipsoid: Ellipsoid.WGS84,
@@ -8434,7 +8436,7 @@
8434
8436
  this.stats.get(TILES_GPU_MEMORY, "memory");
8435
8437
  }
8436
8438
  _initializeTileHeaders(tilesetJson, parentTileHeader) {
8437
- const rootTile = new TileHeader(this, tilesetJson.root, parentTileHeader);
8439
+ const rootTile = new Tile3D(this, tilesetJson.root, parentTileHeader);
8438
8440
  if (parentTileHeader) {
8439
8441
  parentTileHeader.children.push(rootTile);
8440
8442
  rootTile.depth = parentTileHeader.depth + 1;
@@ -8447,7 +8449,7 @@
8447
8449
  this.stats.get(TILES_TOTAL).incrementCount();
8448
8450
  const children = tile.header.children || [];
8449
8451
  for (const childHeader of children) {
8450
- const childTile = new TileHeader(this, childHeader, tile);
8452
+ const childTile = new Tile3D(this, childHeader, tile);
8451
8453
  tile.children.push(childTile);
8452
8454
  childTile.depth = tile.depth + 1;
8453
8455
  stack.push(childTile);
@@ -8635,7 +8637,7 @@
8635
8637
  TILE_CONTENT_STATE: () => TILE_CONTENT_STATE,
8636
8638
  TILE_REFINEMENT: () => TILE_REFINEMENT,
8637
8639
  TILE_TYPE: () => TILE_TYPE,
8638
- Tile3D: () => TileHeader,
8640
+ Tile3D: () => Tile3D,
8639
8641
  Tileset3D: () => Tileset3D,
8640
8642
  TilesetCache: () => TilesetCache,
8641
8643
  TilesetTraverser: () => TilesetTraverser,
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.TILE_TYPE = exports.TILE_REFINEMENT = exports.TILE_CONTENT_STATE = exports.TILESET_TYPE = exports.TILE3D_OPTIMIZATION_HINT = exports.LOD_METRIC_TYPE = void 0;
7
+
7
8
  var TILE_CONTENT_STATE = {
8
9
  UNLOADED: 0,
9
10
  LOADING: 1,
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","names":["TILE_CONTENT_STATE","UNLOADED","LOADING","PROCESSING","READY","EXPIRED","FAILED","TILE_REFINEMENT","ADD","REPLACE","TILE_TYPE","EMPTY","SCENEGRAPH","POINTCLOUD","MESH","TILESET_TYPE","I3S","TILES3D","LOD_METRIC_TYPE","GEOMETRIC_ERROR","MAX_SCREEN_THRESHOLD","TILE3D_OPTIMIZATION_HINT","NOT_COMPUTED","USE_OPTIMIZATION","SKIP_OPTIMIZATION"],"sources":["../../src/constants.ts"],"sourcesContent":["export const TILE_CONTENT_STATE = {\n UNLOADED: 0, // Has never been requested\n LOADING: 1, // Is waiting on a pending request\n PROCESSING: 2, // Request received. Contents are being processed for rendering. Depending on the content, it might make its own requests for external data.\n READY: 3, // Ready to render.\n EXPIRED: 4, // Is expired and will be unloaded once new content is loaded.\n FAILED: 5 // Request failed.\n};\n\nexport const TILE_REFINEMENT = {\n ADD: 1, // Render tile and, if screen space error exceeded, also refine to its children.\n REPLACE: 2 // Render tile or, if screen space error exceeded, refine to its descendants instead.\n};\n\nexport const TILE_TYPE = {\n EMPTY: 'empty',\n SCENEGRAPH: 'scenegraph',\n POINTCLOUD: 'pointcloud',\n MESH: 'mesh'\n};\n\nexport const TILESET_TYPE = {\n I3S: 'I3S',\n TILES3D: 'TILES3D'\n};\n\nexport const LOD_METRIC_TYPE = {\n GEOMETRIC_ERROR: 'geometricError',\n MAX_SCREEN_THRESHOLD: 'maxScreenThreshold'\n};\n\n// Cesium 3D Tiles Specific\nexport const TILE3D_OPTIMIZATION_HINT = {\n NOT_COMPUTED: -1,\n USE_OPTIMIZATION: 1,\n SKIP_OPTIMIZATION: 0\n};\n"],"mappings":";;;;;;AAAO,IAAMA,kBAAkB,GAAG;EAChCC,QAAQ,EAAE,CAAC;EACXC,OAAO,EAAE,CAAC;EACVC,UAAU,EAAE,CAAC;EACbC,KAAK,EAAE,CAAC;EACRC,OAAO,EAAE,CAAC;EACVC,MAAM,EAAE;AACV,CAAC;AAAC;AAEK,IAAMC,eAAe,GAAG;EAC7BC,GAAG,EAAE,CAAC;EACNC,OAAO,EAAE;AACX,CAAC;AAAC;AAEK,IAAMC,SAAS,GAAG;EACvBC,KAAK,EAAE,OAAO;EACdC,UAAU,EAAE,YAAY;EACxBC,UAAU,EAAE,YAAY;EACxBC,IAAI,EAAE;AACR,CAAC;AAAC;AAEK,IAAMC,YAAY,GAAG;EAC1BC,GAAG,EAAE,KAAK;EACVC,OAAO,EAAE;AACX,CAAC;AAAC;AAEK,IAAMC,eAAe,GAAG;EAC7BC,eAAe,EAAE,gBAAgB;EACjCC,oBAAoB,EAAE;AACxB,CAAC;;AAAC;AAGK,IAAMC,wBAAwB,GAAG;EACtCC,YAAY,EAAE,CAAC,CAAC;EAChBC,gBAAgB,EAAE,CAAC;EACnBC,iBAAiB,EAAE;AACrB,CAAC;AAAC"}
1
+ {"version":3,"file":"constants.js","names":["TILE_CONTENT_STATE","UNLOADED","LOADING","PROCESSING","READY","EXPIRED","FAILED","TILE_REFINEMENT","ADD","REPLACE","TILE_TYPE","EMPTY","SCENEGRAPH","POINTCLOUD","MESH","TILESET_TYPE","I3S","TILES3D","LOD_METRIC_TYPE","GEOMETRIC_ERROR","MAX_SCREEN_THRESHOLD","TILE3D_OPTIMIZATION_HINT","NOT_COMPUTED","USE_OPTIMIZATION","SKIP_OPTIMIZATION"],"sources":["../../src/constants.ts"],"sourcesContent":["// loaders.gl, MIT license\n\nexport const TILE_CONTENT_STATE = {\n UNLOADED: 0, // Has never been requested\n LOADING: 1, // Is waiting on a pending request\n PROCESSING: 2, // Request received. Contents are being processed for rendering. Depending on the content, it might make its own requests for external data.\n READY: 3, // Ready to render.\n EXPIRED: 4, // Is expired and will be unloaded once new content is loaded.\n FAILED: 5 // Request failed.\n};\n\nexport const TILE_REFINEMENT = {\n ADD: 1, // Render tile and, if screen space error exceeded, also refine to its children.\n REPLACE: 2 // Render tile or, if screen space error exceeded, refine to its descendants instead.\n};\n\nexport const TILE_TYPE = {\n EMPTY: 'empty',\n SCENEGRAPH: 'scenegraph',\n POINTCLOUD: 'pointcloud',\n MESH: 'mesh'\n};\n\nexport const TILESET_TYPE = {\n I3S: 'I3S',\n TILES3D: 'TILES3D'\n};\n\nexport const LOD_METRIC_TYPE = {\n GEOMETRIC_ERROR: 'geometricError',\n MAX_SCREEN_THRESHOLD: 'maxScreenThreshold'\n};\n\n// Cesium 3D Tiles Specific\nexport const TILE3D_OPTIMIZATION_HINT = {\n NOT_COMPUTED: -1,\n USE_OPTIMIZATION: 1,\n SKIP_OPTIMIZATION: 0\n};\n"],"mappings":";;;;;;;AAEO,IAAMA,kBAAkB,GAAG;EAChCC,QAAQ,EAAE,CAAC;EACXC,OAAO,EAAE,CAAC;EACVC,UAAU,EAAE,CAAC;EACbC,KAAK,EAAE,CAAC;EACRC,OAAO,EAAE,CAAC;EACVC,MAAM,EAAE;AACV,CAAC;AAAC;AAEK,IAAMC,eAAe,GAAG;EAC7BC,GAAG,EAAE,CAAC;EACNC,OAAO,EAAE;AACX,CAAC;AAAC;AAEK,IAAMC,SAAS,GAAG;EACvBC,KAAK,EAAE,OAAO;EACdC,UAAU,EAAE,YAAY;EACxBC,UAAU,EAAE,YAAY;EACxBC,IAAI,EAAE;AACR,CAAC;AAAC;AAEK,IAAMC,YAAY,GAAG;EAC1BC,GAAG,EAAE,KAAK;EACVC,OAAO,EAAE;AACX,CAAC;AAAC;AAEK,IAAMC,eAAe,GAAG;EAC7BC,eAAe,EAAE,gBAAgB;EACjCC,oBAAoB,EAAE;AACxB,CAAC;;AAAC;AAGK,IAAMC,wBAAwB,GAAG;EACtCC,YAAY,EAAE,CAAC,CAAC;EAChBC,gBAAgB,EAAE,CAAC;EACnBC,iBAAiB,EAAE;AACrB,CAAC;AAAC"}
package/dist/es5/index.js CHANGED
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
@@ -37,25 +36,25 @@ Object.defineProperty(exports, "TILE_TYPE", {
37
36
  Object.defineProperty(exports, "Tile3D", {
38
37
  enumerable: true,
39
38
  get: function get() {
40
- return _tile3d.default;
39
+ return _tile3d.Tile3D;
41
40
  }
42
41
  });
43
42
  Object.defineProperty(exports, "Tileset3D", {
44
43
  enumerable: true,
45
44
  get: function get() {
46
- return _tileset3d.default;
45
+ return _tileset3d.Tileset3D;
47
46
  }
48
47
  });
49
48
  Object.defineProperty(exports, "TilesetCache", {
50
49
  enumerable: true,
51
50
  get: function get() {
52
- return _tilesetCache.default;
51
+ return _tilesetCache.TilesetCache;
53
52
  }
54
53
  });
55
54
  Object.defineProperty(exports, "TilesetTraverser", {
56
55
  enumerable: true,
57
56
  get: function get() {
58
- return _tilesetTraverser.default;
57
+ return _tilesetTraverser.TilesetTraverser;
59
58
  }
60
59
  });
61
60
  Object.defineProperty(exports, "calculateTransformProps", {
@@ -82,10 +81,10 @@ Object.defineProperty(exports, "getLodStatus", {
82
81
  return _i3sLod.getLodStatus;
83
82
  }
84
83
  });
85
- var _tileset3d = _interopRequireDefault(require("./tileset/tileset-3d"));
86
- var _tile3d = _interopRequireDefault(require("./tileset/tile-3d"));
87
- var _tilesetTraverser = _interopRequireDefault(require("./tileset/traversers/tileset-traverser"));
88
- var _tilesetCache = _interopRequireDefault(require("./tileset/tileset-cache"));
84
+ var _tileset3d = require("./tileset/tileset-3d");
85
+ var _tile3d = require("./tileset/tile-3d");
86
+ var _tilesetTraverser = require("./tileset/tileset-traverser");
87
+ var _tilesetCache = require("./tileset/tileset-cache");
89
88
  var _boundingVolume = require("./tileset/helpers/bounding-volume");
90
89
  var _transformUtils = require("./tileset/helpers/transform-utils");
91
90
  var _frameState = require("./tileset/helpers/frame-state");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../src/index.ts"],"sourcesContent":["export type {Tileset3DProps} from './tileset/tileset-3d';\nexport {default as Tileset3D} from './tileset/tileset-3d';\nexport {default as Tile3D} from './tileset/tile-3d';\n\nexport {default as TilesetTraverser} from './tileset/traversers/tileset-traverser';\nexport {default as TilesetCache} from './tileset/tileset-cache';\n\nexport {createBoundingVolume} from './tileset/helpers/bounding-volume';\nexport {calculateTransformProps} from './tileset/helpers/transform-utils';\n\nexport {getFrameState} from './tileset/helpers/frame-state';\nexport {getLodStatus} from './tileset/helpers/i3s-lod';\n\nexport {\n TILE_CONTENT_STATE,\n TILE_REFINEMENT,\n TILE_TYPE,\n TILESET_TYPE,\n LOD_METRIC_TYPE\n} from './constants';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;AACA;AAEA;AACA;AAEA;AACA;AAEA;AACA;AAEA"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/index.ts"],"sourcesContent":["// loaders.gl, MIT license\n\nexport type {Tileset3DProps} from './tileset/tileset-3d';\nexport {Tileset3D} from './tileset/tileset-3d';\nexport {Tile3D} from './tileset/tile-3d';\n\nexport {TilesetTraverser} from './tileset/tileset-traverser';\nexport {TilesetCache} from './tileset/tileset-cache';\n\nexport {createBoundingVolume} from './tileset/helpers/bounding-volume';\nexport {calculateTransformProps} from './tileset/helpers/transform-utils';\n\nexport {getFrameState} from './tileset/helpers/frame-state';\nexport {getLodStatus} from './tileset/helpers/i3s-lod';\n\nexport {\n TILE_CONTENT_STATE,\n TILE_REFINEMENT,\n TILE_TYPE,\n TILESET_TYPE,\n LOD_METRIC_TYPE\n} from './constants';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AACA;AAEA;AACA;AAEA;AACA;AAEA;AACA;AAEA"}
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.default = void 0;
7
+ exports.Tileset3DTraverser = void 0;
8
8
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
10
10
  var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
@@ -12,7 +12,7 @@ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits
12
12
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
13
13
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
14
14
  var _constants = require("../../constants");
15
- var _tilesetTraverser = _interopRequireDefault(require("./tileset-traverser"));
15
+ var _tilesetTraverser = require("../tileset-traverser");
16
16
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
17
17
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
18
18
  var Tileset3DTraverser = function (_TilesetTraverser) {
@@ -67,6 +67,6 @@ var Tileset3DTraverser = function (_TilesetTraverser) {
67
67
  }
68
68
  }]);
69
69
  return Tileset3DTraverser;
70
- }(_tilesetTraverser.default);
71
- exports.default = Tileset3DTraverser;
70
+ }(_tilesetTraverser.TilesetTraverser);
71
+ exports.Tileset3DTraverser = Tileset3DTraverser;
72
72
  //# sourceMappingURL=tileset-3d-traverser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tileset-3d-traverser.js","names":["Tileset3DTraverser","a","b","_distanceToCamera","_centerZDepth","tile","frameState","isVisibleAndInRequestVolume","hasChildren","children","length","hasTilesetContent","firstChild","updateTileVisibility","_visible","meetsScreenSpaceErrorEarly","replace","refine","TILE_REFINEMENT","REPLACE","useOptimization","_optimChildrenWithinParent","TILE3D_OPTIMIZATION_HINT","USE_OPTIMIZATION","anyChildrenVisible","parent","ADD","shouldRefine","TilesetTraverser"],"sources":["../../../../src/tileset/format-3d-tiles/tileset-3d-traverser.ts"],"sourcesContent":["// loaders.gl, MIT license\n\n// This file is derived from the Cesium code base under Apache 2 license\n// See LICENSE.md and https://github.com/AnalyticalGraphicsInc/cesium/blob/master/LICENSE.md\n\nimport {TILE3D_OPTIMIZATION_HINT, TILE_REFINEMENT} from '../../constants';\nimport {TilesetTraverser} from '../tileset-traverser';\n\nexport class Tileset3DTraverser extends TilesetTraverser {\n compareDistanceToCamera(a, b) {\n // Sort by farthest child first since this is going on a stack\n return b._distanceToCamera === 0 && a._distanceToCamera === 0\n ? b._centerZDepth - a._centerZDepth\n : b._distanceToCamera - a._distanceToCamera;\n }\n\n updateTileVisibility(tile, frameState) {\n super.updateTileVisibility(tile, frameState);\n\n // Optimization - if none of the tile's children are visible then this tile isn't visible\n if (!tile.isVisibleAndInRequestVolume) {\n return;\n }\n\n const hasChildren = tile.children.length > 0;\n if (tile.hasTilesetContent && hasChildren) {\n // Use the root tile's visibility instead of this tile's visibility.\n // The root tile may be culled by the children bounds optimization in which\n // case this tile should also be culled.\n const firstChild = tile.children[0];\n this.updateTileVisibility(firstChild, frameState);\n tile._visible = firstChild._visible;\n return;\n }\n\n if (this.meetsScreenSpaceErrorEarly(tile, frameState)) {\n tile._visible = false;\n return;\n }\n\n const replace = tile.refine === TILE_REFINEMENT.REPLACE;\n const useOptimization =\n tile._optimChildrenWithinParent === TILE3D_OPTIMIZATION_HINT.USE_OPTIMIZATION;\n if (replace && useOptimization && hasChildren) {\n if (!this.anyChildrenVisible(tile, frameState)) {\n tile._visible = false;\n return;\n }\n }\n }\n\n meetsScreenSpaceErrorEarly(tile, frameState) {\n const {parent} = tile;\n if (!parent || parent.hasTilesetContent || parent.refine !== TILE_REFINEMENT.ADD) {\n return false;\n }\n\n // Use parent's geometric error with child's box to see if the tile already meet the SSE\n return !this.shouldRefine(tile, frameState, true);\n }\n}\n"],"mappings":";;;;;;;;;;;;;AAKA;AACA;AAAsD;AAAA;AAAA,IAEzCA,kBAAkB;EAAA;EAAA;EAAA;IAAA;IAAA;EAAA;EAAA;IAAA;IAAA,OAC7B,iCAAwBC,CAAC,EAAEC,CAAC,EAAE;MAE5B,OAAOA,CAAC,CAACC,iBAAiB,KAAK,CAAC,IAAIF,CAAC,CAACE,iBAAiB,KAAK,CAAC,GACzDD,CAAC,CAACE,aAAa,GAAGH,CAAC,CAACG,aAAa,GACjCF,CAAC,CAACC,iBAAiB,GAAGF,CAAC,CAACE,iBAAiB;IAC/C;EAAC;IAAA;IAAA,OAED,8BAAqBE,IAAI,EAAEC,UAAU,EAAE;MACrC,yHAA2BD,IAAI,EAAEC,UAAU;;MAG3C,IAAI,CAACD,IAAI,CAACE,2BAA2B,EAAE;QACrC;MACF;MAEA,IAAMC,WAAW,GAAGH,IAAI,CAACI,QAAQ,CAACC,MAAM,GAAG,CAAC;MAC5C,IAAIL,IAAI,CAACM,iBAAiB,IAAIH,WAAW,EAAE;QAIzC,IAAMI,UAAU,GAAGP,IAAI,CAACI,QAAQ,CAAC,CAAC,CAAC;QACnC,IAAI,CAACI,oBAAoB,CAACD,UAAU,EAAEN,UAAU,CAAC;QACjDD,IAAI,CAACS,QAAQ,GAAGF,UAAU,CAACE,QAAQ;QACnC;MACF;MAEA,IAAI,IAAI,CAACC,0BAA0B,CAACV,IAAI,EAAEC,UAAU,CAAC,EAAE;QACrDD,IAAI,CAACS,QAAQ,GAAG,KAAK;QACrB;MACF;MAEA,IAAME,OAAO,GAAGX,IAAI,CAACY,MAAM,KAAKC,0BAAe,CAACC,OAAO;MACvD,IAAMC,eAAe,GACnBf,IAAI,CAACgB,0BAA0B,KAAKC,mCAAwB,CAACC,gBAAgB;MAC/E,IAAIP,OAAO,IAAII,eAAe,IAAIZ,WAAW,EAAE;QAC7C,IAAI,CAAC,IAAI,CAACgB,kBAAkB,CAACnB,IAAI,EAAEC,UAAU,CAAC,EAAE;UAC9CD,IAAI,CAACS,QAAQ,GAAG,KAAK;UACrB;QACF;MACF;IACF;EAAC;IAAA;IAAA,OAED,oCAA2BT,IAAI,EAAEC,UAAU,EAAE;MAC3C,IAAOmB,MAAM,GAAIpB,IAAI,CAAdoB,MAAM;MACb,IAAI,CAACA,MAAM,IAAIA,MAAM,CAACd,iBAAiB,IAAIc,MAAM,CAACR,MAAM,KAAKC,0BAAe,CAACQ,GAAG,EAAE;QAChF,OAAO,KAAK;MACd;;MAGA,OAAO,CAAC,IAAI,CAACC,YAAY,CAACtB,IAAI,EAAEC,UAAU,EAAE,IAAI,CAAC;IACnD;EAAC;EAAA;AAAA,EAnDqCsB,kCAAgB;AAAA"}
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.default = void 0;
7
+ exports.I3SPendingTilesRegister = void 0;
8
8
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
10
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
@@ -46,5 +46,5 @@ var I3SPendingTilesRegister = function () {
46
46
  }]);
47
47
  return I3SPendingTilesRegister;
48
48
  }();
49
- exports.default = I3SPendingTilesRegister;
49
+ exports.I3SPendingTilesRegister = I3SPendingTilesRegister;
50
50
  //# sourceMappingURL=i3s-pending-tiles-register.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i3s-pending-tiles-register.js","names":["I3SPendingTilesRegister","Map","viewportId","frameNumber","viewportMap","frameNumberMap","get","oldCount","set","count"],"sources":["../../../../src/tileset/format-i3s/i3s-pending-tiles-register.ts"],"sourcesContent":["/**\n * Counter to register pending tile headers for the particular frameNumber\n * Until all tiles are loaded we won't call `onTraversalEnd` callback\n */\nexport class I3SPendingTilesRegister {\n private frameNumberMap: Map<string, Map<number, number>> = new Map();\n\n /**\n * Register a new pending tile header for the particular frameNumber\n * @param viewportId\n * @param frameNumber\n */\n register(viewportId: string, frameNumber: number) {\n const viewportMap = this.frameNumberMap.get(viewportId) || new Map();\n const oldCount = viewportMap.get(frameNumber) || 0;\n viewportMap.set(frameNumber, oldCount + 1);\n this.frameNumberMap.set(viewportId, viewportMap);\n }\n\n /**\n * Deregister a pending tile header for the particular frameNumber\n * @param viewportId\n * @param frameNumber\n */\n deregister(viewportId: string, frameNumber: number) {\n const viewportMap = this.frameNumberMap.get(viewportId);\n if (!viewportMap) {\n return;\n }\n const oldCount = viewportMap.get(frameNumber) || 1;\n viewportMap.set(frameNumber, oldCount - 1);\n }\n\n /**\n * Check is there are no pending tile headers registered for the particular frameNumber\n * @param viewportId\n * @param frameNumber\n * @returns\n */\n isZero(viewportId: string, frameNumber: number) {\n const count = this.frameNumberMap.get(viewportId)?.get(frameNumber) || 0;\n return count === 0;\n }\n}\n"],"mappings":";;;;;;;;;;IAIaA,uBAAuB;EAAA;IAAA;IAAA,sDACyB,IAAIC,GAAG,EAAE;EAAA;EAAA;IAAA;IAAA;IAOpE,kBAASC,UAAkB,EAAEC,WAAmB,EAAE;MAChD,IAAMC,WAAW,GAAG,IAAI,CAACC,cAAc,CAACC,GAAG,CAACJ,UAAU,CAAC,IAAI,IAAID,GAAG,EAAE;MACpE,IAAMM,QAAQ,GAAGH,WAAW,CAACE,GAAG,CAACH,WAAW,CAAC,IAAI,CAAC;MAClDC,WAAW,CAACI,GAAG,CAACL,WAAW,EAAEI,QAAQ,GAAG,CAAC,CAAC;MAC1C,IAAI,CAACF,cAAc,CAACG,GAAG,CAACN,UAAU,EAAEE,WAAW,CAAC;IAClD;;EAAC;IAAA;IAAA;IAOD,oBAAWF,UAAkB,EAAEC,WAAmB,EAAE;MAClD,IAAMC,WAAW,GAAG,IAAI,CAACC,cAAc,CAACC,GAAG,CAACJ,UAAU,CAAC;MACvD,IAAI,CAACE,WAAW,EAAE;QAChB;MACF;MACA,IAAMG,QAAQ,GAAGH,WAAW,CAACE,GAAG,CAACH,WAAW,CAAC,IAAI,CAAC;MAClDC,WAAW,CAACI,GAAG,CAACL,WAAW,EAAEI,QAAQ,GAAG,CAAC,CAAC;IAC5C;;EAAC;IAAA;IAAA;IAQD,gBAAOL,UAAkB,EAAEC,WAAmB,EAAE;MAAA;MAC9C,IAAMM,KAAK,GAAG,8BAAI,CAACJ,cAAc,CAACC,GAAG,CAACJ,UAAU,CAAC,0DAAnC,sBAAqCI,GAAG,CAACH,WAAW,CAAC,KAAI,CAAC;MACxE,OAAOM,KAAK,KAAK,CAAC;IACpB;EAAC;EAAA;AAAA;AAAA"}
@@ -4,11 +4,11 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.default = void 0;
7
+ exports.I3STileManager = void 0;
8
8
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
10
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
- var _i3sPendingTilesRegister = _interopRequireDefault(require("./i3s-pending-tiles-register"));
11
+ var _i3sPendingTilesRegister = require("./i3s-pending-tiles-register");
12
12
  var STATUS = {
13
13
  REQUESTED: 'REQUESTED',
14
14
  COMPLETED: 'COMPLETED',
@@ -19,7 +19,7 @@ var I3STileManager = function () {
19
19
  function I3STileManager() {
20
20
  (0, _classCallCheck2.default)(this, I3STileManager);
21
21
  (0, _defineProperty2.default)(this, "_statusMap", void 0);
22
- (0, _defineProperty2.default)(this, "pendingTilesRegister", new _i3sPendingTilesRegister.default());
22
+ (0, _defineProperty2.default)(this, "pendingTilesRegister", new _i3sPendingTilesRegister.I3SPendingTilesRegister());
23
23
  this._statusMap = {};
24
24
  }
25
25
 
@@ -90,5 +90,5 @@ var I3STileManager = function () {
90
90
  }]);
91
91
  return I3STileManager;
92
92
  }();
93
- exports.default = I3STileManager;
93
+ exports.I3STileManager = I3STileManager;
94
94
  //# sourceMappingURL=i3s-tile-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i3s-tile-manager.js","names":["STATUS","REQUESTED","COMPLETED","ERROR","I3STileManager","I3SPendingTilesRegister","_statusMap","request","key","callback","frameState","frameNumber","id","viewport","status","pendingTilesRegister","register","then","data","actualFrameNumber","deregister","catch","error","newFrameNumber","newViewportId","viewportId","isZero"],"sources":["../../../../src/tileset/format-i3s/i3s-tile-manager.ts"],"sourcesContent":["import {FrameState} from '../helpers/frame-state';\nimport {I3SPendingTilesRegister} from './i3s-pending-tiles-register';\n\nconst STATUS = {\n REQUESTED: 'REQUESTED',\n COMPLETED: 'COMPLETED',\n ERROR: 'ERROR'\n};\n\n// A helper class to manage tile metadata fetching\nexport class I3STileManager {\n private _statusMap: object;\n private pendingTilesRegister = new I3SPendingTilesRegister();\n\n constructor() {\n this._statusMap = {};\n }\n\n /**\n * Add request to map\n * @param request - node metadata request\n * @param key - unique key\n * @param callback - callback after request completed\n * @param frameState - frameState data\n */\n add(request, key, callback, frameState: FrameState) {\n if (!this._statusMap[key]) {\n const {\n frameNumber,\n viewport: {id}\n } = frameState;\n this._statusMap[key] = {request, callback, key, frameState, status: STATUS.REQUESTED};\n // Register pending request for the frameNumber\n this.pendingTilesRegister.register(id, frameNumber);\n request()\n .then((data) => {\n this._statusMap[key].status = STATUS.COMPLETED;\n const {\n frameNumber: actualFrameNumber,\n viewport: {id}\n } = this._statusMap[key].frameState;\n // Deregister pending request for the frameNumber\n this.pendingTilesRegister.deregister(id, actualFrameNumber);\n this._statusMap[key].callback(data, frameState);\n })\n .catch((error) => {\n this._statusMap[key].status = STATUS.ERROR;\n const {\n frameNumber: actualFrameNumber,\n viewport: {id}\n } = this._statusMap[key].frameState;\n // Deregister pending request for the frameNumber\n this.pendingTilesRegister.deregister(id, actualFrameNumber);\n callback(error);\n });\n }\n }\n\n /**\n * Update request if it is still actual for the new frameState\n * @param key - unique key\n * @param frameState - frameState data\n */\n update(key, frameState: FrameState) {\n if (this._statusMap[key]) {\n // Deregister pending request for the old frameNumber\n const {\n frameNumber,\n viewport: {id}\n } = this._statusMap[key].frameState;\n this.pendingTilesRegister.deregister(id, frameNumber);\n\n // Register pending request for the new frameNumber\n const {\n frameNumber: newFrameNumber,\n viewport: {id: newViewportId}\n } = frameState;\n this.pendingTilesRegister.register(newViewportId, newFrameNumber);\n this._statusMap[key].frameState = frameState;\n }\n }\n\n /**\n * Find request in the map\n * @param key - unique key\n * @returns\n */\n find(key) {\n return this._statusMap[key];\n }\n\n /**\n * Check it there are pending tile headers for the particular frameNumber\n * @param viewportId\n * @param frameNumber\n * @returns\n */\n hasPendingTiles(viewportId: string, frameNumber: number): boolean {\n return !this.pendingTilesRegister.isZero(viewportId, frameNumber);\n }\n}\n"],"mappings":";;;;;;;;;;AACA;AAEA,IAAMA,MAAM,GAAG;EACbC,SAAS,EAAE,WAAW;EACtBC,SAAS,EAAE,WAAW;EACtBC,KAAK,EAAE;AACT,CAAC;;AAAC,IAGWC,cAAc;EAIzB,0BAAc;IAAA;IAAA;IAAA,4DAFiB,IAAIC,gDAAuB,EAAE;IAG1D,IAAI,CAACC,UAAU,GAAG,CAAC,CAAC;EACtB;;EAAC;IAAA;IAAA;IASD,aAAIC,OAAO,EAAEC,GAAG,EAAEC,QAAQ,EAAEC,UAAsB,EAAE;MAAA;MAClD,IAAI,CAAC,IAAI,CAACJ,UAAU,CAACE,GAAG,CAAC,EAAE;QACzB,IACEG,WAAW,GAETD,UAAU,CAFZC,WAAW;UACAC,EAAE,GACXF,UAAU,CADZG,QAAQ,CAAGD,EAAE;QAEf,IAAI,CAACN,UAAU,CAACE,GAAG,CAAC,GAAG;UAACD,OAAO,EAAPA,OAAO;UAAEE,QAAQ,EAARA,QAAQ;UAAED,GAAG,EAAHA,GAAG;UAAEE,UAAU,EAAVA,UAAU;UAAEI,MAAM,EAAEd,MAAM,CAACC;QAAS,CAAC;QAErF,IAAI,CAACc,oBAAoB,CAACC,QAAQ,CAACJ,EAAE,EAAED,WAAW,CAAC;QACnDJ,OAAO,EAAE,CACNU,IAAI,CAAC,UAACC,IAAI,EAAK;UACd,KAAI,CAACZ,UAAU,CAACE,GAAG,CAAC,CAACM,MAAM,GAAGd,MAAM,CAACE,SAAS;UAC9C,4BAGI,KAAI,CAACI,UAAU,CAACE,GAAG,CAAC,CAACE,UAAU;YAFpBS,iBAAiB,yBAA9BR,WAAW;YACAC,EAAE,yBAAbC,QAAQ,CAAGD,EAAE;UAGf,KAAI,CAACG,oBAAoB,CAACK,UAAU,CAACR,EAAE,EAAEO,iBAAiB,CAAC;UAC3D,KAAI,CAACb,UAAU,CAACE,GAAG,CAAC,CAACC,QAAQ,CAACS,IAAI,EAAER,UAAU,CAAC;QACjD,CAAC,CAAC,CACDW,KAAK,CAAC,UAACC,KAAK,EAAK;UAChB,KAAI,CAAChB,UAAU,CAACE,GAAG,CAAC,CAACM,MAAM,GAAGd,MAAM,CAACG,KAAK;UAC1C,6BAGI,KAAI,CAACG,UAAU,CAACE,GAAG,CAAC,CAACE,UAAU;YAFpBS,iBAAiB,0BAA9BR,WAAW;YACAC,EAAE,0BAAbC,QAAQ,CAAGD,EAAE;UAGf,KAAI,CAACG,oBAAoB,CAACK,UAAU,CAACR,EAAE,EAAEO,iBAAiB,CAAC;UAC3DV,QAAQ,CAACa,KAAK,CAAC;QACjB,CAAC,CAAC;MACN;IACF;;EAAC;IAAA;IAAA;IAOD,gBAAOd,GAAG,EAAEE,UAAsB,EAAE;MAClC,IAAI,IAAI,CAACJ,UAAU,CAACE,GAAG,CAAC,EAAE;QAExB,6BAGI,IAAI,CAACF,UAAU,CAACE,GAAG,CAAC,CAACE,UAAU;UAFjCC,WAAW,0BAAXA,WAAW;UACAC,EAAE,0BAAbC,QAAQ,CAAGD,EAAE;QAEf,IAAI,CAACG,oBAAoB,CAACK,UAAU,CAACR,EAAE,EAAED,WAAW,CAAC;;QAGrD,IACeY,cAAc,GAEzBb,UAAU,CAFZC,WAAW;UACIa,aAAa,GAC1Bd,UAAU,CADZG,QAAQ,CAAGD,EAAE;QAEf,IAAI,CAACG,oBAAoB,CAACC,QAAQ,CAACQ,aAAa,EAAED,cAAc,CAAC;QACjE,IAAI,CAACjB,UAAU,CAACE,GAAG,CAAC,CAACE,UAAU,GAAGA,UAAU;MAC9C;IACF;;EAAC;IAAA;IAAA;IAOD,cAAKF,GAAG,EAAE;MACR,OAAO,IAAI,CAACF,UAAU,CAACE,GAAG,CAAC;IAC7B;;EAAC;IAAA;IAAA;IAQD,yBAAgBiB,UAAkB,EAAEd,WAAmB,EAAW;MAChE,OAAO,CAAC,IAAI,CAACI,oBAAoB,CAACW,MAAM,CAACD,UAAU,EAAEd,WAAW,CAAC;IACnE;EAAC;EAAA;AAAA;AAAA"}