@loaders.gl/tiles 3.3.0-alpha.8 → 3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +1 -0
- package/dist/dist.min.js +104 -102
- package/dist/es5/constants.js +1 -0
- package/dist/es5/constants.js.map +1 -1
- package/dist/es5/index.js +8 -9
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/tileset/{traversers → format-3d-tiles}/tileset-3d-traverser.js +4 -4
- package/dist/es5/tileset/format-3d-tiles/tileset-3d-traverser.js.map +1 -0
- package/dist/es5/tileset/{traversers → format-i3s}/i3s-pending-tiles-register.js +2 -2
- package/dist/es5/tileset/format-i3s/i3s-pending-tiles-register.js.map +1 -0
- package/dist/es5/tileset/{traversers → format-i3s}/i3s-tile-manager.js +4 -4
- package/dist/es5/tileset/format-i3s/i3s-tile-manager.js.map +1 -0
- package/dist/es5/tileset/{traversers → format-i3s}/i3s-tileset-traverser.js +9 -8
- package/dist/es5/tileset/format-i3s/i3s-tileset-traverser.js.map +1 -0
- package/dist/es5/tileset/helpers/i3s-lod.js +1 -0
- package/dist/es5/tileset/helpers/i3s-lod.js.map +1 -1
- package/dist/es5/tileset/helpers/tiles-3d-lod.js.map +1 -1
- package/dist/es5/tileset/helpers/transform-utils.js +1 -0
- package/dist/es5/tileset/helpers/transform-utils.js.map +1 -1
- package/dist/es5/tileset/helpers/zoom.js +1 -0
- package/dist/es5/tileset/helpers/zoom.js.map +1 -1
- package/dist/es5/tileset/tile-3d.js +9 -9
- package/dist/es5/tileset/tile-3d.js.map +1 -1
- package/dist/es5/tileset/tileset-3d.js +13 -13
- package/dist/es5/tileset/tileset-3d.js.map +1 -1
- package/dist/es5/tileset/tileset-cache.js +4 -4
- package/dist/es5/tileset/tileset-cache.js.map +1 -1
- package/dist/es5/tileset/{traversers/tileset-traverser.js → tileset-traverser.js} +7 -6
- package/dist/es5/tileset/tileset-traverser.js.map +1 -0
- package/dist/es5/utils/doubly-linked-list-node.js +2 -2
- package/dist/es5/utils/doubly-linked-list-node.js.map +1 -1
- package/dist/es5/utils/doubly-linked-list.js +4 -4
- package/dist/es5/utils/doubly-linked-list.js.map +1 -1
- package/dist/es5/utils/managed-array.js +2 -2
- package/dist/es5/utils/managed-array.js.map +1 -1
- package/dist/esm/constants.js +2 -0
- package/dist/esm/constants.js.map +1 -1
- package/dist/esm/index.js +6 -4
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/tileset/{traversers → format-3d-tiles}/tileset-3d-traverser.js +2 -2
- package/dist/esm/tileset/format-3d-tiles/tileset-3d-traverser.js.map +1 -0
- package/dist/esm/tileset/{traversers → format-i3s}/i3s-pending-tiles-register.js +1 -1
- package/dist/esm/tileset/format-i3s/i3s-pending-tiles-register.js.map +1 -0
- package/dist/esm/tileset/{traversers → format-i3s}/i3s-tile-manager.js +2 -2
- package/dist/esm/tileset/format-i3s/i3s-tile-manager.js.map +1 -0
- package/dist/esm/tileset/{traversers → format-i3s}/i3s-tileset-traverser.js +9 -8
- package/dist/esm/tileset/format-i3s/i3s-tileset-traverser.js.map +1 -0
- package/dist/esm/tileset/helpers/i3s-lod.js +2 -0
- package/dist/esm/tileset/helpers/i3s-lod.js.map +1 -1
- package/dist/esm/tileset/helpers/tiles-3d-lod.js.map +1 -1
- package/dist/esm/tileset/helpers/transform-utils.js +2 -0
- package/dist/esm/tileset/helpers/transform-utils.js.map +1 -1
- package/dist/esm/tileset/helpers/zoom.js +2 -0
- package/dist/esm/tileset/helpers/zoom.js.map +1 -1
- package/dist/esm/tileset/tile-3d.js +4 -3
- package/dist/esm/tileset/tile-3d.js.map +1 -1
- package/dist/esm/tileset/tileset-3d.js +8 -7
- package/dist/esm/tileset/tileset-3d.js.map +1 -1
- package/dist/esm/tileset/tileset-cache.js +2 -2
- package/dist/esm/tileset/tileset-cache.js.map +1 -1
- package/dist/esm/tileset/{traversers/tileset-traverser.js → tileset-traverser.js} +4 -3
- package/dist/esm/tileset/tileset-traverser.js.map +1 -0
- package/dist/esm/utils/doubly-linked-list-node.js +1 -1
- package/dist/esm/utils/doubly-linked-list-node.js.map +1 -1
- package/dist/esm/utils/doubly-linked-list.js +2 -2
- package/dist/esm/utils/doubly-linked-list.js.map +1 -1
- package/dist/esm/utils/managed-array.js +1 -1
- package/dist/esm/utils/managed-array.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -8
- package/dist/tileset/{traversers → format-3d-tiles}/tileset-3d-traverser.d.ts +2 -2
- package/dist/tileset/format-3d-tiles/tileset-3d-traverser.d.ts.map +1 -0
- package/dist/tileset/{traversers → format-3d-tiles}/tileset-3d-traverser.js +6 -7
- package/dist/tileset/{traversers → format-i3s}/i3s-pending-tiles-register.d.ts +1 -1
- package/dist/tileset/format-i3s/i3s-pending-tiles-register.d.ts.map +1 -0
- package/dist/tileset/{traversers → format-i3s}/i3s-pending-tiles-register.js +2 -1
- package/dist/tileset/{traversers → format-i3s}/i3s-tile-manager.d.ts +1 -1
- package/dist/tileset/format-i3s/i3s-tile-manager.d.ts.map +1 -0
- package/dist/tileset/{traversers → format-i3s}/i3s-tile-manager.js +4 -6
- package/dist/tileset/{traversers → format-i3s}/i3s-tileset-traverser.d.ts +6 -6
- package/dist/tileset/format-i3s/i3s-tileset-traverser.d.ts.map +1 -0
- package/dist/tileset/{traversers → format-i3s}/i3s-tileset-traverser.js +13 -15
- package/dist/tileset/helpers/i3s-lod.d.ts +1 -1
- package/dist/tileset/helpers/i3s-lod.d.ts.map +1 -1
- package/dist/tileset/helpers/i3s-lod.js +1 -0
- package/dist/tileset/helpers/tiles-3d-lod.d.ts.map +1 -1
- package/dist/tileset/helpers/tiles-3d-lod.js +3 -2
- package/dist/tileset/helpers/transform-utils.d.ts.map +1 -1
- package/dist/tileset/helpers/transform-utils.js +1 -0
- package/dist/tileset/helpers/zoom.d.ts.map +1 -1
- package/dist/tileset/helpers/zoom.js +1 -0
- package/dist/tileset/tile-3d.d.ts +10 -10
- package/dist/tileset/tile-3d.d.ts.map +1 -1
- package/dist/tileset/tile-3d.js +8 -9
- package/dist/tileset/tileset-3d.d.ts +3 -3
- package/dist/tileset/tileset-3d.d.ts.map +1 -1
- package/dist/tileset/tileset-3d.js +16 -16
- package/dist/tileset/tileset-cache.d.ts +1 -1
- package/dist/tileset/tileset-cache.d.ts.map +1 -1
- package/dist/tileset/tileset-cache.js +6 -7
- package/dist/tileset/{traversers/tileset-traverser.d.ts → tileset-traverser.d.ts} +6 -16
- package/dist/tileset/tileset-traverser.d.ts.map +1 -0
- package/dist/tileset/{traversers/tileset-traverser.js → tileset-traverser.js} +15 -9
- package/dist/utils/doubly-linked-list-node.d.ts +1 -2
- package/dist/utils/doubly-linked-list-node.d.ts.map +1 -1
- package/dist/utils/doubly-linked-list-node.js +4 -3
- package/dist/utils/doubly-linked-list.d.ts +2 -3
- package/dist/utils/doubly-linked-list.d.ts.map +1 -1
- package/dist/utils/doubly-linked-list.js +4 -7
- package/dist/utils/managed-array.d.ts +1 -1
- package/dist/utils/managed-array.d.ts.map +1 -1
- package/dist/utils/managed-array.js +2 -1
- package/package.json +4 -4
- package/src/constants.ts +2 -0
- package/src/index.ts +6 -4
- package/src/tileset/{traversers → format-3d-tiles}/tileset-3d-traverser.ts +4 -2
- package/src/tileset/{traversers → format-i3s}/i3s-pending-tiles-register.ts +1 -1
- package/src/tileset/{traversers → format-i3s}/i3s-tile-manager.ts +2 -2
- package/src/tileset/{traversers → format-i3s}/i3s-tileset-traverser.ts +13 -13
- package/src/tileset/helpers/i3s-lod.ts +3 -1
- package/src/tileset/helpers/tiles-3d-lod.ts +2 -0
- package/src/tileset/helpers/transform-utils.ts +2 -0
- package/src/tileset/helpers/zoom.ts +2 -0
- package/src/tileset/tile-3d.ts +16 -13
- package/src/tileset/tileset-3d.ts +12 -7
- package/src/tileset/tileset-cache.ts +4 -2
- package/src/tileset/{traversers/tileset-traverser.ts → tileset-traverser.ts} +17 -16
- package/src/utils/doubly-linked-list-node.ts +3 -2
- package/src/utils/doubly-linked-list.ts +2 -3
- package/src/utils/managed-array.ts +1 -1
- package/dist/es5/tileset/traversers/i3s-pending-tiles-register.js.map +0 -1
- package/dist/es5/tileset/traversers/i3s-tile-manager.js.map +0 -1
- package/dist/es5/tileset/traversers/i3s-tileset-traverser.js.map +0 -1
- package/dist/es5/tileset/traversers/tileset-3d-traverser.js.map +0 -1
- package/dist/es5/tileset/traversers/tileset-traverser.js.map +0 -1
- package/dist/esm/tileset/traversers/i3s-pending-tiles-register.js.map +0 -1
- package/dist/esm/tileset/traversers/i3s-tile-manager.js.map +0 -1
- package/dist/esm/tileset/traversers/i3s-tileset-traverser.js.map +0 -1
- package/dist/esm/tileset/traversers/tileset-3d-traverser.js.map +0 -1
- package/dist/esm/tileset/traversers/tileset-traverser.js.map +0 -1
- package/dist/tileset/traversers/i3s-pending-tiles-register.d.ts.map +0 -1
- package/dist/tileset/traversers/i3s-tile-manager.d.ts.map +0 -1
- package/dist/tileset/traversers/i3s-tileset-traverser.d.ts.map +0 -1
- package/dist/tileset/traversers/tileset-3d-traverser.d.ts.map +0 -1
- package/dist/tileset/traversers/tileset-traverser.d.ts.map +0 -1
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"
|
|
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.
|
|
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.
|
|
3687
|
+
"../worker-utils/src/lib/node/worker_threads-browser.ts"() {
|
|
3688
3688
|
Worker2 = class {
|
|
3689
|
+
terminate() {
|
|
3690
|
+
}
|
|
3689
3691
|
};
|
|
3690
3692
|
}
|
|
3691
3693
|
});
|
|
@@ -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
|
|
4449
|
+
const node2 = new DoublyLinkedListNode(item, this.tail, null);
|
|
4448
4450
|
if (this.tail) {
|
|
4449
|
-
this.tail.next =
|
|
4450
|
-
this.tail =
|
|
4451
|
+
this.tail.next = node2;
|
|
4452
|
+
this.tail = node2;
|
|
4451
4453
|
} else {
|
|
4452
|
-
this.head =
|
|
4453
|
-
this.tail =
|
|
4454
|
+
this.head = node2;
|
|
4455
|
+
this.tail = node2;
|
|
4454
4456
|
}
|
|
4455
4457
|
++this._length;
|
|
4456
|
-
return
|
|
4458
|
+
return node2;
|
|
4457
4459
|
}
|
|
4458
|
-
remove(
|
|
4459
|
-
if (!
|
|
4460
|
+
remove(node2) {
|
|
4461
|
+
if (!node2) {
|
|
4460
4462
|
return;
|
|
4461
4463
|
}
|
|
4462
|
-
if (
|
|
4463
|
-
|
|
4464
|
-
|
|
4465
|
-
} else if (
|
|
4466
|
-
|
|
4467
|
-
this.tail =
|
|
4468
|
-
} else if (
|
|
4469
|
-
|
|
4470
|
-
this.head =
|
|
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
|
-
|
|
4476
|
-
|
|
4477
|
+
node2.next = null;
|
|
4478
|
+
node2.previous = null;
|
|
4477
4479
|
--this._length;
|
|
4478
4480
|
}
|
|
4479
|
-
splice(
|
|
4480
|
-
if (
|
|
4481
|
+
splice(node2, nextNode) {
|
|
4482
|
+
if (node2 === nextNode) {
|
|
4481
4483
|
return;
|
|
4482
4484
|
}
|
|
4483
4485
|
this.remove(nextNode);
|
|
4484
|
-
this._insert(
|
|
4486
|
+
this._insert(node2, nextNode);
|
|
4485
4487
|
}
|
|
4486
|
-
_insert(
|
|
4487
|
-
const oldNodeNext =
|
|
4488
|
-
|
|
4489
|
-
if (this.tail ===
|
|
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 =
|
|
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
|
|
4521
|
-
if (defined(
|
|
4522
|
-
this._list.splice(this._sentinel,
|
|
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
|
|
4535
|
-
if (!defined(
|
|
4536
|
+
const node2 = tile._cacheNode;
|
|
4537
|
+
if (!defined(node2)) {
|
|
4536
4538
|
return;
|
|
4537
4539
|
}
|
|
4538
|
-
this._list.remove(
|
|
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
|
|
4551
|
-
while (
|
|
4552
|
-
const tile =
|
|
4553
|
-
|
|
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
|
|
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
|
|
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/
|
|
7244
|
+
// src/tileset/tileset-traverser.ts
|
|
7243
7245
|
var DEFAULT_PROPS3, TilesetTraverser;
|
|
7244
7246
|
var init_tileset_traverser = __esm({
|
|
7245
|
-
"src/tileset/
|
|
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,
|
|
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
|
-
|
|
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/
|
|
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/
|
|
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/
|
|
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/
|
|
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/
|
|
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/
|
|
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/
|
|
8000
|
+
// src/tileset/format-i3s/i3s-tileset-traverser.ts
|
|
7999
8001
|
var I3STilesetTraverser;
|
|
8000
8002
|
var init_i3s_tileset_traverser = __esm({
|
|
8001
|
-
"src/tileset/
|
|
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
|
|
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
|
-
|
|
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
|
|
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
|
|
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: () =>
|
|
8640
|
+
Tile3D: () => Tile3D,
|
|
8639
8641
|
Tileset3D: () => Tileset3D,
|
|
8640
8642
|
TilesetCache: () => TilesetCache,
|
|
8641
8643
|
TilesetTraverser: () => TilesetTraverser,
|
package/dist/es5/constants.js
CHANGED
|
@@ -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":["
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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 =
|
|
86
|
-
var _tile3d =
|
|
87
|
-
var _tilesetTraverser =
|
|
88
|
-
var _tilesetCache =
|
|
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");
|
package/dist/es5/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../src/index.ts"],"sourcesContent":["
|
|
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.
|
|
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 =
|
|
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.
|
|
71
|
-
exports.
|
|
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.
|
|
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.
|
|
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.
|
|
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 =
|
|
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.
|
|
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.
|
|
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":"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"}
|