@loaders.gl/i3s 3.1.0-beta.2 → 3.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundle.js +373 -300
- package/dist/es5/bundle.js +1 -1
- package/dist/es5/bundle.js.map +1 -1
- package/dist/es5/i3s-attribute-loader.js +147 -62
- package/dist/es5/i3s-attribute-loader.js.map +1 -1
- package/dist/es5/i3s-building-scene-layer-loader.js +36 -8
- package/dist/es5/i3s-building-scene-layer-loader.js.map +1 -1
- package/dist/es5/i3s-content-loader.js +36 -10
- package/dist/es5/i3s-content-loader.js.map +1 -1
- package/dist/es5/i3s-loader.js +175 -51
- package/dist/es5/i3s-loader.js.map +1 -1
- package/dist/es5/i3s-node-page-loader.js +51 -8
- package/dist/es5/i3s-node-page-loader.js.map +1 -1
- package/dist/es5/index.js +6 -6
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/lib/helpers/i3s-nodepages-tiles.js +328 -173
- package/dist/es5/lib/helpers/i3s-nodepages-tiles.js.map +1 -1
- package/dist/es5/lib/parsers/constants.js +9 -28
- package/dist/es5/lib/parsers/constants.js.map +1 -1
- package/dist/es5/lib/parsers/parse-i3s-attribute.js +69 -27
- package/dist/es5/lib/parsers/parse-i3s-attribute.js.map +1 -1
- package/dist/es5/lib/parsers/parse-i3s-building-scene-layer.js +62 -28
- package/dist/es5/lib/parsers/parse-i3s-building-scene-layer.js.map +1 -1
- package/dist/es5/lib/parsers/parse-i3s-tile-content.js +416 -314
- package/dist/es5/lib/parsers/parse-i3s-tile-content.js.map +1 -1
- package/dist/es5/lib/parsers/parse-i3s.js +109 -49
- package/dist/es5/lib/parsers/parse-i3s.js.map +1 -1
- package/dist/es5/lib/utils/convert-i3s-obb-to-mbs.js +8 -4
- package/dist/es5/lib/utils/convert-i3s-obb-to-mbs.js.map +1 -1
- package/dist/es5/lib/utils/url-utils.js +14 -17
- package/dist/es5/lib/utils/url-utils.js.map +1 -1
- package/dist/es5/types.js +10 -2
- package/dist/es5/types.js.map +1 -1
- package/dist/esm/i3s-attribute-loader.js +1 -1
- package/dist/esm/i3s-attribute-loader.js.map +1 -1
- package/dist/esm/i3s-building-scene-layer-loader.js +1 -1
- package/dist/esm/i3s-building-scene-layer-loader.js.map +1 -1
- package/dist/esm/i3s-content-loader.js +1 -1
- package/dist/esm/i3s-content-loader.js.map +1 -1
- package/dist/esm/i3s-loader.js +1 -1
- package/dist/esm/i3s-loader.js.map +1 -1
- package/dist/esm/i3s-node-page-loader.js +1 -1
- package/dist/esm/i3s-node-page-loader.js.map +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/helpers/i3s-nodepages-tiles.js +33 -23
- package/dist/esm/lib/helpers/i3s-nodepages-tiles.js.map +1 -1
- package/dist/esm/lib/parsers/constants.js +2 -18
- package/dist/esm/lib/parsers/constants.js.map +1 -1
- package/dist/esm/lib/parsers/parse-i3s-tile-content.js +44 -61
- package/dist/esm/lib/parsers/parse-i3s-tile-content.js.map +1 -1
- package/dist/esm/lib/parsers/parse-i3s.js +40 -25
- package/dist/esm/lib/parsers/parse-i3s.js.map +1 -1
- package/dist/esm/lib/utils/url-utils.js +2 -3
- package/dist/esm/lib/utils/url-utils.js.map +1 -1
- package/dist/esm/types.js +7 -0
- package/dist/esm/types.js.map +1 -1
- package/dist/i3s-building-scene-layer-loader.js +1 -1
- package/dist/i3s-content-loader.js +1 -1
- package/dist/i3s-content-worker.js +278 -201
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/lib/helpers/i3s-nodepages-tiles.d.ts +20 -20
- package/dist/lib/helpers/i3s-nodepages-tiles.d.ts.map +1 -1
- package/dist/lib/helpers/i3s-nodepages-tiles.js +33 -32
- package/dist/lib/parsers/constants.d.ts +1 -17
- package/dist/lib/parsers/constants.d.ts.map +1 -1
- package/dist/lib/parsers/constants.js +3 -21
- package/dist/lib/parsers/parse-i3s-attribute.d.ts +1 -1
- package/dist/lib/parsers/parse-i3s-tile-content.d.ts +2 -2
- package/dist/lib/parsers/parse-i3s-tile-content.d.ts.map +1 -1
- package/dist/lib/parsers/parse-i3s-tile-content.js +35 -61
- package/dist/lib/parsers/parse-i3s.d.ts +5 -3
- package/dist/lib/parsers/parse-i3s.d.ts.map +1 -1
- package/dist/lib/parsers/parse-i3s.js +37 -32
- package/dist/lib/utils/url-utils.d.ts +6 -6
- package/dist/lib/utils/url-utils.d.ts.map +1 -1
- package/dist/lib/utils/url-utils.js +5 -5
- package/dist/types.d.ts +289 -74
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +6 -1
- package/package.json +9 -9
- package/src/i3s-building-scene-layer-loader.ts +1 -1
- package/src/i3s-content-loader.ts +1 -1
- package/src/index.ts +3 -3
- package/src/lib/helpers/i3s-nodepages-tiles.ts +71 -55
- package/src/lib/parsers/constants.ts +2 -22
- package/src/lib/parsers/parse-i3s-tile-content.ts +74 -103
- package/src/lib/parsers/parse-i3s.ts +48 -37
- package/src/lib/utils/url-utils.ts +7 -7
- package/src/types.ts +302 -93
|
@@ -1,11 +1,36 @@
|
|
|
1
1
|
(() => {
|
|
2
|
+
var __create = Object.create;
|
|
2
3
|
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
3
8
|
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
|
|
9
|
+
var __commonJS = (cb, mod) => function __require() {
|
|
10
|
+
return mod || (0, cb[Object.keys(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
11
|
+
};
|
|
4
12
|
var __export = (target, all) => {
|
|
5
13
|
__markAsModule(target);
|
|
6
14
|
for (var name in all)
|
|
7
15
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
16
|
};
|
|
17
|
+
var __reExport = (target, module2, desc) => {
|
|
18
|
+
if (module2 && typeof module2 === "object" || typeof module2 === "function") {
|
|
19
|
+
for (let key of __getOwnPropNames(module2))
|
|
20
|
+
if (!__hasOwnProp.call(target, key) && key !== "default")
|
|
21
|
+
__defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
|
|
22
|
+
}
|
|
23
|
+
return target;
|
|
24
|
+
};
|
|
25
|
+
var __toModule = (module2) => {
|
|
26
|
+
return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
// (disabled):../worker-utils/src/lib/node/require-utils.node
|
|
30
|
+
var require_require_utils = __commonJS({
|
|
31
|
+
"(disabled):../worker-utils/src/lib/node/require-utils.node"() {
|
|
32
|
+
}
|
|
33
|
+
});
|
|
9
34
|
|
|
10
35
|
// ../loader-utils/src/lib/env-utils/assert.ts
|
|
11
36
|
function assert(condition, message) {
|
|
@@ -30,7 +55,7 @@
|
|
|
30
55
|
var nodeVersion = matches && parseFloat(matches[1]) || 0;
|
|
31
56
|
|
|
32
57
|
// ../worker-utils/src/lib/env-utils/version.ts
|
|
33
|
-
var DEFAULT_VERSION = "
|
|
58
|
+
var DEFAULT_VERSION = "latest";
|
|
34
59
|
var VERSION = typeof __VERSION__ !== "undefined" ? __VERSION__ : DEFAULT_VERSION;
|
|
35
60
|
if (typeof __VERSION__ === "undefined") {
|
|
36
61
|
console.error("loaders.gl: The __VERSION__ variable is not injected using babel plugin. Latest unstable workers would be fetched from the CDN.");
|
|
@@ -434,11 +459,14 @@
|
|
|
434
459
|
}
|
|
435
460
|
|
|
436
461
|
// ../worker-utils/src/lib/worker-api/get-worker-url.ts
|
|
437
|
-
var NPM_TAG = "
|
|
462
|
+
var NPM_TAG = "latest";
|
|
438
463
|
function getWorkerURL(worker, options = {}) {
|
|
439
464
|
const workerOptions = options[worker.id] || {};
|
|
440
465
|
const workerFile = `${worker.id}-worker.js`;
|
|
441
466
|
let url = workerOptions.workerUrl;
|
|
467
|
+
if (!url && worker.id === "compression") {
|
|
468
|
+
url = options.workerUrl;
|
|
469
|
+
}
|
|
442
470
|
if (options._workerType === "test") {
|
|
443
471
|
url = `modules/${worker.module}/dist/${workerFile}`;
|
|
444
472
|
}
|
|
@@ -465,7 +493,8 @@
|
|
|
465
493
|
}
|
|
466
494
|
|
|
467
495
|
// ../worker-utils/src/lib/library-utils/library-utils.ts
|
|
468
|
-
var
|
|
496
|
+
var node = __toModule(require_require_utils());
|
|
497
|
+
var LATEST = "latest";
|
|
469
498
|
var VERSION2 = typeof VERSION !== "undefined" ? VERSION : LATEST;
|
|
470
499
|
var loadLibraryPromises = {};
|
|
471
500
|
async function loadLibrary(libraryUrl, moduleName = null, options = {}) {
|
|
@@ -501,7 +530,11 @@
|
|
|
501
530
|
return await response2.arrayBuffer();
|
|
502
531
|
}
|
|
503
532
|
if (!isBrowser2) {
|
|
504
|
-
|
|
533
|
+
try {
|
|
534
|
+
return node && node.requireFromFile && await node.requireFromFile(libraryUrl);
|
|
535
|
+
} catch {
|
|
536
|
+
return null;
|
|
537
|
+
}
|
|
505
538
|
}
|
|
506
539
|
if (isWorker) {
|
|
507
540
|
return importScripts(libraryUrl);
|
|
@@ -1104,7 +1137,7 @@
|
|
|
1104
1137
|
}
|
|
1105
1138
|
|
|
1106
1139
|
// ../../node_modules/probe.gl/dist/esm/utils/hi-res-timestamp.js
|
|
1107
|
-
function
|
|
1140
|
+
function getHiResTimestamp() {
|
|
1108
1141
|
let timestamp;
|
|
1109
1142
|
if (isBrowser4 && window_3.performance) {
|
|
1110
1143
|
timestamp = window_3.performance.now();
|
|
@@ -1151,8 +1184,8 @@
|
|
|
1151
1184
|
}) {
|
|
1152
1185
|
this.id = id;
|
|
1153
1186
|
this.VERSION = VERSION3;
|
|
1154
|
-
this._startTs =
|
|
1155
|
-
this._deltaTs =
|
|
1187
|
+
this._startTs = getHiResTimestamp();
|
|
1188
|
+
this._deltaTs = getHiResTimestamp();
|
|
1156
1189
|
this.LOG_THROTTLE_TIMEOUT = 0;
|
|
1157
1190
|
this._storage = new LocalStorage("__probe-".concat(this.id, "__"), DEFAULT_SETTINGS);
|
|
1158
1191
|
this.userData = {};
|
|
@@ -1173,10 +1206,10 @@
|
|
|
1173
1206
|
return this._storage.config.level;
|
|
1174
1207
|
}
|
|
1175
1208
|
getTotal() {
|
|
1176
|
-
return Number((
|
|
1209
|
+
return Number((getHiResTimestamp() - this._startTs).toPrecision(10));
|
|
1177
1210
|
}
|
|
1178
1211
|
getDelta() {
|
|
1179
|
-
return Number((
|
|
1212
|
+
return Number((getHiResTimestamp() - this._deltaTs).toPrecision(10));
|
|
1180
1213
|
}
|
|
1181
1214
|
set priority(newPriority) {
|
|
1182
1215
|
this.level = newPriority;
|
|
@@ -1331,11 +1364,11 @@
|
|
|
1331
1364
|
assert3(method);
|
|
1332
1365
|
opts.total = this.getTotal();
|
|
1333
1366
|
opts.delta = this.getDelta();
|
|
1334
|
-
this._deltaTs =
|
|
1367
|
+
this._deltaTs = getHiResTimestamp();
|
|
1335
1368
|
const tag = opts.tag || opts.message;
|
|
1336
1369
|
if (opts.once) {
|
|
1337
1370
|
if (!cache[tag]) {
|
|
1338
|
-
cache[tag] =
|
|
1371
|
+
cache[tag] = getHiResTimestamp();
|
|
1339
1372
|
} else {
|
|
1340
1373
|
return noop;
|
|
1341
1374
|
}
|
|
@@ -5604,7 +5637,7 @@
|
|
|
5604
5637
|
}
|
|
5605
5638
|
|
|
5606
5639
|
// ../textures/src/lib/utils/version.ts
|
|
5607
|
-
var VERSION6 = typeof __VERSION__ !== "undefined" ? __VERSION__ : "
|
|
5640
|
+
var VERSION6 = typeof __VERSION__ !== "undefined" ? __VERSION__ : "latest";
|
|
5608
5641
|
|
|
5609
5642
|
// ../textures/src/lib/parsers/basis-module-loader.ts
|
|
5610
5643
|
var VERSION7 = typeof __VERSION__ !== "undefined" ? __VERSION__ : "beta";
|
|
@@ -5675,8 +5708,8 @@
|
|
|
5675
5708
|
});
|
|
5676
5709
|
}
|
|
5677
5710
|
|
|
5678
|
-
// ../textures/src/lib/gl-
|
|
5679
|
-
var
|
|
5711
|
+
// ../textures/src/lib/gl-extensions.ts
|
|
5712
|
+
var GL_EXTENSIONS_CONSTANTS = {
|
|
5680
5713
|
COMPRESSED_RGB_S3TC_DXT1_EXT: 33776,
|
|
5681
5714
|
COMPRESSED_RGBA_S3TC_DXT1_EXT: 33777,
|
|
5682
5715
|
COMPRESSED_RGBA_S3TC_DXT3_EXT: 33778,
|
|
@@ -5908,72 +5941,72 @@
|
|
|
5908
5941
|
|
|
5909
5942
|
// ../textures/src/lib/utils/ktx-format-helper.ts
|
|
5910
5943
|
var VULKAN_TO_WEBGL_FORMAT_MAP = {
|
|
5911
|
-
131:
|
|
5912
|
-
132:
|
|
5913
|
-
133:
|
|
5914
|
-
134:
|
|
5915
|
-
135:
|
|
5916
|
-
136:
|
|
5917
|
-
137:
|
|
5918
|
-
138:
|
|
5919
|
-
139:
|
|
5920
|
-
140:
|
|
5921
|
-
141:
|
|
5922
|
-
142:
|
|
5923
|
-
147:
|
|
5924
|
-
148:
|
|
5925
|
-
149:
|
|
5926
|
-
150:
|
|
5927
|
-
151:
|
|
5928
|
-
152:
|
|
5929
|
-
153:
|
|
5930
|
-
154:
|
|
5931
|
-
155:
|
|
5932
|
-
156:
|
|
5933
|
-
157:
|
|
5934
|
-
158:
|
|
5935
|
-
159:
|
|
5936
|
-
160:
|
|
5937
|
-
161:
|
|
5938
|
-
162:
|
|
5939
|
-
163:
|
|
5940
|
-
164:
|
|
5941
|
-
165:
|
|
5942
|
-
166:
|
|
5943
|
-
167:
|
|
5944
|
-
168:
|
|
5945
|
-
169:
|
|
5946
|
-
170:
|
|
5947
|
-
171:
|
|
5948
|
-
172:
|
|
5949
|
-
173:
|
|
5950
|
-
174:
|
|
5951
|
-
175:
|
|
5952
|
-
176:
|
|
5953
|
-
177:
|
|
5954
|
-
178:
|
|
5955
|
-
179:
|
|
5956
|
-
180:
|
|
5957
|
-
181:
|
|
5958
|
-
182:
|
|
5959
|
-
183:
|
|
5960
|
-
184:
|
|
5961
|
-
1000054e3:
|
|
5962
|
-
1000054001:
|
|
5963
|
-
1000066e3:
|
|
5964
|
-
1000066001:
|
|
5965
|
-
1000066002:
|
|
5966
|
-
1000066003:
|
|
5967
|
-
1000066004:
|
|
5968
|
-
1000066005:
|
|
5969
|
-
1000066006:
|
|
5970
|
-
1000066007:
|
|
5971
|
-
1000066008:
|
|
5972
|
-
1000066009:
|
|
5973
|
-
1000066010:
|
|
5974
|
-
1000066011:
|
|
5975
|
-
1000066012:
|
|
5976
|
-
1000066013:
|
|
5944
|
+
131: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT,
|
|
5945
|
+
132: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_S3TC_DXT1_EXT,
|
|
5946
|
+
133: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT1_EXT,
|
|
5947
|
+
134: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT,
|
|
5948
|
+
135: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT3_EXT,
|
|
5949
|
+
136: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,
|
|
5950
|
+
137: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT,
|
|
5951
|
+
138: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT,
|
|
5952
|
+
139: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RED_RGTC1_EXT,
|
|
5953
|
+
140: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_RED_RGTC1_EXT,
|
|
5954
|
+
141: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RED_GREEN_RGTC2_EXT,
|
|
5955
|
+
142: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT,
|
|
5956
|
+
147: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_ETC2,
|
|
5957
|
+
148: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ETC2,
|
|
5958
|
+
149: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2,
|
|
5959
|
+
150: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2,
|
|
5960
|
+
151: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA8_ETC2_EAC,
|
|
5961
|
+
152: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC,
|
|
5962
|
+
153: GL_EXTENSIONS_CONSTANTS.COMPRESSED_R11_EAC,
|
|
5963
|
+
154: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_R11_EAC,
|
|
5964
|
+
155: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RG11_EAC,
|
|
5965
|
+
156: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_RG11_EAC,
|
|
5966
|
+
157: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4x4_KHR,
|
|
5967
|
+
158: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR,
|
|
5968
|
+
159: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x4_KHR,
|
|
5969
|
+
160: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR,
|
|
5970
|
+
161: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x5_KHR,
|
|
5971
|
+
162: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR,
|
|
5972
|
+
163: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x5_KHR,
|
|
5973
|
+
164: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR,
|
|
5974
|
+
165: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x6_KHR,
|
|
5975
|
+
166: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR,
|
|
5976
|
+
167: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x5_KHR,
|
|
5977
|
+
168: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR,
|
|
5978
|
+
169: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x6_KHR,
|
|
5979
|
+
170: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR,
|
|
5980
|
+
171: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x8_KHR,
|
|
5981
|
+
172: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR,
|
|
5982
|
+
173: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x5_KHR,
|
|
5983
|
+
174: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR,
|
|
5984
|
+
175: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x6_KHR,
|
|
5985
|
+
176: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR,
|
|
5986
|
+
177: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x8_KHR,
|
|
5987
|
+
178: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR,
|
|
5988
|
+
179: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x10_KHR,
|
|
5989
|
+
180: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,
|
|
5990
|
+
181: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x10_KHR,
|
|
5991
|
+
182: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR,
|
|
5992
|
+
183: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x12_KHR,
|
|
5993
|
+
184: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR,
|
|
5994
|
+
1000054e3: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG,
|
|
5995
|
+
1000054001: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG,
|
|
5996
|
+
1000066e3: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4x4_KHR,
|
|
5997
|
+
1000066001: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x4_KHR,
|
|
5998
|
+
1000066002: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x5_KHR,
|
|
5999
|
+
1000066003: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x5_KHR,
|
|
6000
|
+
1000066004: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x6_KHR,
|
|
6001
|
+
1000066005: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x5_KHR,
|
|
6002
|
+
1000066006: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x6_KHR,
|
|
6003
|
+
1000066007: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x8_KHR,
|
|
6004
|
+
1000066008: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x5_KHR,
|
|
6005
|
+
1000066009: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x6_KHR,
|
|
6006
|
+
1000066010: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x8_KHR,
|
|
6007
|
+
1000066011: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x10_KHR,
|
|
6008
|
+
1000066012: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x10_KHR,
|
|
6009
|
+
1000066013: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x12_KHR
|
|
5977
6010
|
};
|
|
5978
6011
|
function mapVkFormatToWebGL(vkFormat) {
|
|
5979
6012
|
return VULKAN_TO_WEBGL_FORMAT_MAP[vkFormat];
|
|
@@ -6015,19 +6048,43 @@
|
|
|
6015
6048
|
});
|
|
6016
6049
|
}
|
|
6017
6050
|
|
|
6018
|
-
// ../textures/src/lib/parsers/parse-basis.
|
|
6051
|
+
// ../textures/src/lib/parsers/parse-basis.ts
|
|
6019
6052
|
var OutputFormat = {
|
|
6020
|
-
etc1: {
|
|
6053
|
+
etc1: {
|
|
6054
|
+
basisFormat: 0,
|
|
6055
|
+
compressed: true,
|
|
6056
|
+
format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_ETC1_WEBGL
|
|
6057
|
+
},
|
|
6021
6058
|
etc2: { basisFormat: 1, compressed: true },
|
|
6022
|
-
bc1: {
|
|
6023
|
-
|
|
6059
|
+
bc1: {
|
|
6060
|
+
basisFormat: 2,
|
|
6061
|
+
compressed: true,
|
|
6062
|
+
format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT
|
|
6063
|
+
},
|
|
6064
|
+
bc3: {
|
|
6065
|
+
basisFormat: 3,
|
|
6066
|
+
compressed: true,
|
|
6067
|
+
format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT
|
|
6068
|
+
},
|
|
6024
6069
|
bc4: { basisFormat: 4, compressed: true },
|
|
6025
6070
|
bc5: { basisFormat: 5, compressed: true },
|
|
6026
6071
|
"bc7-m6-opaque-only": { basisFormat: 6, compressed: true },
|
|
6027
6072
|
"bc7-m5": { basisFormat: 7, compressed: true },
|
|
6028
|
-
"pvrtc1-4-rgb": {
|
|
6029
|
-
|
|
6030
|
-
|
|
6073
|
+
"pvrtc1-4-rgb": {
|
|
6074
|
+
basisFormat: 8,
|
|
6075
|
+
compressed: true,
|
|
6076
|
+
format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_PVRTC_4BPPV1_IMG
|
|
6077
|
+
},
|
|
6078
|
+
"pvrtc1-4-rgba": {
|
|
6079
|
+
basisFormat: 9,
|
|
6080
|
+
compressed: true,
|
|
6081
|
+
format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG
|
|
6082
|
+
},
|
|
6083
|
+
"astc-4x4": {
|
|
6084
|
+
basisFormat: 10,
|
|
6085
|
+
compressed: true,
|
|
6086
|
+
format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4X4_KHR
|
|
6087
|
+
},
|
|
6031
6088
|
"atc-rgb": { basisFormat: 11, compressed: true },
|
|
6032
6089
|
"atc-rgba-interpolated-alpha": { basisFormat: 12, compressed: true },
|
|
6033
6090
|
rgba32: { basisFormat: 13, compressed: false },
|
|
@@ -6210,12 +6267,12 @@
|
|
|
6210
6267
|
DDPF_FOURCC: 4
|
|
6211
6268
|
};
|
|
6212
6269
|
var DDS_PIXEL_FORMATS = {
|
|
6213
|
-
DXT1:
|
|
6214
|
-
DXT3:
|
|
6215
|
-
DXT5:
|
|
6216
|
-
"ATC ":
|
|
6217
|
-
ATCA:
|
|
6218
|
-
ATCI:
|
|
6270
|
+
DXT1: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT,
|
|
6271
|
+
DXT3: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT3_EXT,
|
|
6272
|
+
DXT5: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT,
|
|
6273
|
+
"ATC ": GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_ATC_WEBGL,
|
|
6274
|
+
ATCA: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL,
|
|
6275
|
+
ATCI: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL
|
|
6219
6276
|
};
|
|
6220
6277
|
var getATCLevelSize = getDxt1LevelSize;
|
|
6221
6278
|
var getATCALevelSize = getDxtXLevelSize;
|
|
@@ -6282,33 +6339,75 @@
|
|
|
6282
6339
|
METADATA_SIZE_INDEX: 12
|
|
6283
6340
|
};
|
|
6284
6341
|
var PVR_PIXEL_FORMATS = {
|
|
6285
|
-
0: [
|
|
6286
|
-
1: [
|
|
6287
|
-
2: [
|
|
6288
|
-
3: [
|
|
6289
|
-
6: [
|
|
6290
|
-
7: [
|
|
6291
|
-
9: [
|
|
6292
|
-
11: [
|
|
6293
|
-
22: [
|
|
6294
|
-
23: [
|
|
6295
|
-
24: [
|
|
6296
|
-
25: [
|
|
6297
|
-
26: [
|
|
6298
|
-
27: [
|
|
6299
|
-
|
|
6300
|
-
|
|
6301
|
-
|
|
6302
|
-
|
|
6303
|
-
|
|
6304
|
-
|
|
6305
|
-
|
|
6306
|
-
|
|
6307
|
-
|
|
6308
|
-
|
|
6309
|
-
|
|
6310
|
-
|
|
6311
|
-
|
|
6342
|
+
0: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_PVRTC_2BPPV1_IMG],
|
|
6343
|
+
1: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG],
|
|
6344
|
+
2: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_PVRTC_4BPPV1_IMG],
|
|
6345
|
+
3: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG],
|
|
6346
|
+
6: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_ETC1_WEBGL],
|
|
6347
|
+
7: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT],
|
|
6348
|
+
9: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT3_EXT],
|
|
6349
|
+
11: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT],
|
|
6350
|
+
22: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_ETC2],
|
|
6351
|
+
23: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA8_ETC2_EAC],
|
|
6352
|
+
24: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2],
|
|
6353
|
+
25: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_R11_EAC],
|
|
6354
|
+
26: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RG11_EAC],
|
|
6355
|
+
27: [
|
|
6356
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4X4_KHR,
|
|
6357
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR
|
|
6358
|
+
],
|
|
6359
|
+
28: [
|
|
6360
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5X4_KHR,
|
|
6361
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR
|
|
6362
|
+
],
|
|
6363
|
+
29: [
|
|
6364
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5X5_KHR,
|
|
6365
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR
|
|
6366
|
+
],
|
|
6367
|
+
30: [
|
|
6368
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6X5_KHR,
|
|
6369
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR
|
|
6370
|
+
],
|
|
6371
|
+
31: [
|
|
6372
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6X6_KHR,
|
|
6373
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR
|
|
6374
|
+
],
|
|
6375
|
+
32: [
|
|
6376
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8X5_KHR,
|
|
6377
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR
|
|
6378
|
+
],
|
|
6379
|
+
33: [
|
|
6380
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8X6_KHR,
|
|
6381
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR
|
|
6382
|
+
],
|
|
6383
|
+
34: [
|
|
6384
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8X8_KHR,
|
|
6385
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR
|
|
6386
|
+
],
|
|
6387
|
+
35: [
|
|
6388
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X5_KHR,
|
|
6389
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR
|
|
6390
|
+
],
|
|
6391
|
+
36: [
|
|
6392
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X6_KHR,
|
|
6393
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR
|
|
6394
|
+
],
|
|
6395
|
+
37: [
|
|
6396
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X8_KHR,
|
|
6397
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR
|
|
6398
|
+
],
|
|
6399
|
+
38: [
|
|
6400
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X10_KHR,
|
|
6401
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR
|
|
6402
|
+
],
|
|
6403
|
+
39: [
|
|
6404
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12X10_KHR,
|
|
6405
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR
|
|
6406
|
+
],
|
|
6407
|
+
40: [
|
|
6408
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12X12_KHR,
|
|
6409
|
+
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR
|
|
6410
|
+
]
|
|
6312
6411
|
};
|
|
6313
6412
|
var PVR_SIZE_FUNCTIONS = {
|
|
6314
6413
|
0: pvrtc2bppSize,
|
|
@@ -6482,6 +6581,25 @@
|
|
|
6482
6581
|
}
|
|
6483
6582
|
};
|
|
6484
6583
|
|
|
6584
|
+
// src/types.ts
|
|
6585
|
+
var DATA_TYPE;
|
|
6586
|
+
(function(DATA_TYPE2) {
|
|
6587
|
+
DATA_TYPE2["UInt8"] = "UInt8";
|
|
6588
|
+
DATA_TYPE2["UInt16"] = "UInt16";
|
|
6589
|
+
DATA_TYPE2["UInt32"] = "UInt32";
|
|
6590
|
+
DATA_TYPE2["UInt64"] = "UInt64";
|
|
6591
|
+
DATA_TYPE2["Int16"] = "Int16";
|
|
6592
|
+
DATA_TYPE2["Int32"] = "Int32";
|
|
6593
|
+
DATA_TYPE2["Int64"] = "Int64";
|
|
6594
|
+
DATA_TYPE2["Float32"] = "Float32";
|
|
6595
|
+
DATA_TYPE2["Float64"] = "Float64";
|
|
6596
|
+
})(DATA_TYPE || (DATA_TYPE = {}));
|
|
6597
|
+
var HeaderAttributeProperty;
|
|
6598
|
+
(function(HeaderAttributeProperty2) {
|
|
6599
|
+
HeaderAttributeProperty2["vertexCount"] = "vertexCount";
|
|
6600
|
+
HeaderAttributeProperty2["featureCount"] = "featureCount";
|
|
6601
|
+
})(HeaderAttributeProperty || (HeaderAttributeProperty = {}));
|
|
6602
|
+
|
|
6485
6603
|
// src/lib/utils/url-utils.ts
|
|
6486
6604
|
function getUrlWithToken(url, token = null) {
|
|
6487
6605
|
return token ? `${url}?token=${token}` : url;
|
|
@@ -7105,20 +7223,6 @@
|
|
|
7105
7223
|
GPU_DISJOINT_EXT: 36795
|
|
7106
7224
|
};
|
|
7107
7225
|
|
|
7108
|
-
// src/types.ts
|
|
7109
|
-
var DATA_TYPE;
|
|
7110
|
-
(function(DATA_TYPE2) {
|
|
7111
|
-
DATA_TYPE2["UInt8"] = "UInt8";
|
|
7112
|
-
DATA_TYPE2["UInt16"] = "UInt16";
|
|
7113
|
-
DATA_TYPE2["UInt32"] = "UInt32";
|
|
7114
|
-
DATA_TYPE2["UInt64"] = "UInt64";
|
|
7115
|
-
DATA_TYPE2["Int16"] = "Int16";
|
|
7116
|
-
DATA_TYPE2["Int32"] = "Int32";
|
|
7117
|
-
DATA_TYPE2["Int64"] = "Int64";
|
|
7118
|
-
DATA_TYPE2["Float32"] = "Float32";
|
|
7119
|
-
DATA_TYPE2["Float64"] = "Float64";
|
|
7120
|
-
})(DATA_TYPE || (DATA_TYPE = {}));
|
|
7121
|
-
|
|
7122
7226
|
// src/lib/parsers/constants.ts
|
|
7123
7227
|
function getConstructorForDataFormat(dataType) {
|
|
7124
7228
|
switch (dataType) {
|
|
@@ -7133,7 +7237,7 @@
|
|
|
7133
7237
|
case DATA_TYPE.UInt64:
|
|
7134
7238
|
return Float64Array;
|
|
7135
7239
|
default:
|
|
7136
|
-
|
|
7240
|
+
throw new Error(`parse i3s tile content: unknown type of data: ${dataType}`);
|
|
7137
7241
|
}
|
|
7138
7242
|
}
|
|
7139
7243
|
var GL_TYPE_MAP = {
|
|
@@ -7143,22 +7247,6 @@
|
|
|
7143
7247
|
UInt32: esm_default2.UNSIGNED_INT,
|
|
7144
7248
|
UInt64: esm_default2.DOUBLE
|
|
7145
7249
|
};
|
|
7146
|
-
var I3S_NAMED_VERTEX_ATTRIBUTES = {
|
|
7147
|
-
position: "position",
|
|
7148
|
-
normal: "normal",
|
|
7149
|
-
uv0: "uv0",
|
|
7150
|
-
color: "color",
|
|
7151
|
-
region: "region"
|
|
7152
|
-
};
|
|
7153
|
-
var I3S_NAMED_GEOMETRY_ATTRIBUTES = {
|
|
7154
|
-
vertexAttributes: "vertexAttributes",
|
|
7155
|
-
featureAttributeOrder: "featureAttributeOrder",
|
|
7156
|
-
featureAttributes: "featureAttributes"
|
|
7157
|
-
};
|
|
7158
|
-
var I3S_NAMED_HEADER_ATTRIBUTES = {
|
|
7159
|
-
vertexCount: "vertexCount",
|
|
7160
|
-
featureCount: "featureCount"
|
|
7161
|
-
};
|
|
7162
7250
|
function sizeOf(dataType) {
|
|
7163
7251
|
switch (dataType) {
|
|
7164
7252
|
case DATA_TYPE.UInt8:
|
|
@@ -7175,7 +7263,7 @@
|
|
|
7175
7263
|
case DATA_TYPE.Float64:
|
|
7176
7264
|
return 8;
|
|
7177
7265
|
default:
|
|
7178
|
-
|
|
7266
|
+
throw new Error(`parse i3s tile content: unknown size of data: ${dataType}`);
|
|
7179
7267
|
}
|
|
7180
7268
|
}
|
|
7181
7269
|
var COORDINATE_SYSTEM;
|
|
@@ -7191,27 +7279,25 @@
|
|
|
7191
7279
|
var scratchVector5 = new Vector3([0, 0, 0]);
|
|
7192
7280
|
function getLoaderForTextureFormat(textureFormat) {
|
|
7193
7281
|
switch (textureFormat) {
|
|
7194
|
-
case "jpeg":
|
|
7195
|
-
case "png":
|
|
7196
|
-
return ImageLoader;
|
|
7197
7282
|
case "ktx-etc2":
|
|
7198
7283
|
case "dds":
|
|
7199
7284
|
return CompressedTextureLoader;
|
|
7200
7285
|
case "ktx2":
|
|
7201
7286
|
return BasisLoader;
|
|
7287
|
+
case "jpg":
|
|
7288
|
+
case "png":
|
|
7202
7289
|
default:
|
|
7203
|
-
return
|
|
7290
|
+
return ImageLoader;
|
|
7204
7291
|
}
|
|
7205
7292
|
}
|
|
7206
7293
|
var I3S_ATTRIBUTE_TYPE = "i3s-attribute-type";
|
|
7207
7294
|
async function parseI3STileContent(arrayBuffer, tile, tileset, options, context) {
|
|
7208
7295
|
tile.content = tile.content || {};
|
|
7209
7296
|
tile.content.featureIds = tile.content.featureIds || null;
|
|
7210
|
-
tile.content.featureData = constructFeatureDataStruct(tileset);
|
|
7211
7297
|
tile.content.attributes = {};
|
|
7212
7298
|
if (tile.textureUrl) {
|
|
7213
7299
|
const url = getUrlWithToken(tile.textureUrl, options?.i3s?.token);
|
|
7214
|
-
const loader = getLoaderForTextureFormat(tile.textureFormat)
|
|
7300
|
+
const loader = getLoaderForTextureFormat(tile.textureFormat);
|
|
7215
7301
|
const response = await fetch(url);
|
|
7216
7302
|
const arrayBuffer2 = await response.arrayBuffer();
|
|
7217
7303
|
if (options?.i3s.decodeTextures) {
|
|
@@ -7240,9 +7326,9 @@
|
|
|
7240
7326
|
if (tile.content.material) {
|
|
7241
7327
|
tile.content.texture = null;
|
|
7242
7328
|
}
|
|
7243
|
-
return await parseI3SNodeGeometry(arrayBuffer, tile, options);
|
|
7329
|
+
return await parseI3SNodeGeometry(arrayBuffer, tile, tileset, options);
|
|
7244
7330
|
}
|
|
7245
|
-
async function parseI3SNodeGeometry(arrayBuffer, tile, options) {
|
|
7331
|
+
async function parseI3SNodeGeometry(arrayBuffer, tile, tileset, options) {
|
|
7246
7332
|
if (!tile.content) {
|
|
7247
7333
|
return tile;
|
|
7248
7334
|
}
|
|
@@ -7251,6 +7337,7 @@
|
|
|
7251
7337
|
let vertexCount;
|
|
7252
7338
|
let byteOffset = 0;
|
|
7253
7339
|
let featureCount = 0;
|
|
7340
|
+
let indices;
|
|
7254
7341
|
if (tile.isDracoGeometry) {
|
|
7255
7342
|
const decompressedGeometry = await parse(arrayBuffer, DracoLoader2, {
|
|
7256
7343
|
draco: {
|
|
@@ -7258,7 +7345,7 @@
|
|
|
7258
7345
|
}
|
|
7259
7346
|
});
|
|
7260
7347
|
vertexCount = decompressedGeometry.header.vertexCount;
|
|
7261
|
-
|
|
7348
|
+
indices = decompressedGeometry.indices?.value;
|
|
7262
7349
|
const {
|
|
7263
7350
|
POSITION,
|
|
7264
7351
|
NORMAL,
|
|
@@ -7273,8 +7360,7 @@
|
|
|
7273
7360
|
color: COLOR_0,
|
|
7274
7361
|
uv0: TEXCOORD_0,
|
|
7275
7362
|
uvRegion,
|
|
7276
|
-
id: featureIndex
|
|
7277
|
-
indices
|
|
7363
|
+
id: featureIndex
|
|
7278
7364
|
};
|
|
7279
7365
|
updateAttributesMetadata(attributes, decompressedGeometry);
|
|
7280
7366
|
const featureIds = getFeatureIdsFromFeatureIndexMetadata(featureIndex);
|
|
@@ -7282,8 +7368,13 @@
|
|
|
7282
7368
|
flattenFeatureIdsByFeatureIndices(attributes, featureIds);
|
|
7283
7369
|
}
|
|
7284
7370
|
} else {
|
|
7285
|
-
const {
|
|
7286
|
-
|
|
7371
|
+
const {
|
|
7372
|
+
vertexAttributes,
|
|
7373
|
+
ordering: attributesOrder,
|
|
7374
|
+
featureAttributes,
|
|
7375
|
+
featureAttributeOrder
|
|
7376
|
+
} = tileset.store.defaultGeometrySchema;
|
|
7377
|
+
const headers = parseHeaders(tileset, arrayBuffer);
|
|
7287
7378
|
byteOffset = headers.byteOffset;
|
|
7288
7379
|
vertexCount = headers.vertexCount;
|
|
7289
7380
|
featureCount = headers.featureCount;
|
|
@@ -7307,7 +7398,7 @@
|
|
|
7307
7398
|
texCoords: attributes.uv0,
|
|
7308
7399
|
uvRegions: normalizeAttribute(attributes.uvRegion)
|
|
7309
7400
|
};
|
|
7310
|
-
content.indices =
|
|
7401
|
+
content.indices = indices || null;
|
|
7311
7402
|
if (attributes.id && attributes.id.value) {
|
|
7312
7403
|
tile.content.featureIds = attributes.id.value;
|
|
7313
7404
|
}
|
|
@@ -7345,41 +7436,25 @@
|
|
|
7345
7436
|
attribute.normalized = true;
|
|
7346
7437
|
return attribute;
|
|
7347
7438
|
}
|
|
7348
|
-
function
|
|
7349
|
-
const defaultGeometrySchema = tileset.store.defaultGeometrySchema;
|
|
7350
|
-
const featureData = defaultGeometrySchema;
|
|
7351
|
-
for (const geometryAttribute in I3S_NAMED_GEOMETRY_ATTRIBUTES) {
|
|
7352
|
-
for (const namedAttribute in I3S_NAMED_VERTEX_ATTRIBUTES) {
|
|
7353
|
-
const attribute = defaultGeometrySchema[geometryAttribute][namedAttribute];
|
|
7354
|
-
if (attribute) {
|
|
7355
|
-
const { byteOffset = 0, count = 0, valueType, valuesPerElement } = attribute;
|
|
7356
|
-
featureData[geometryAttribute][namedAttribute] = {
|
|
7357
|
-
valueType,
|
|
7358
|
-
valuesPerElement,
|
|
7359
|
-
byteOffset,
|
|
7360
|
-
count
|
|
7361
|
-
};
|
|
7362
|
-
}
|
|
7363
|
-
}
|
|
7364
|
-
}
|
|
7365
|
-
featureData.attributesOrder = defaultGeometrySchema.ordering;
|
|
7366
|
-
return featureData;
|
|
7367
|
-
}
|
|
7368
|
-
function parseHeaders(content, arrayBuffer) {
|
|
7439
|
+
function parseHeaders(tileset, arrayBuffer) {
|
|
7369
7440
|
let byteOffset = 0;
|
|
7370
7441
|
let vertexCount = 0;
|
|
7371
7442
|
let featureCount = 0;
|
|
7372
|
-
|
|
7443
|
+
for (const { property, type } of tileset.store.defaultGeometrySchema.header) {
|
|
7373
7444
|
const TypedArrayTypeHeader = getConstructorForDataFormat(type);
|
|
7374
|
-
|
|
7375
|
-
vertexCount
|
|
7376
|
-
|
|
7377
|
-
|
|
7378
|
-
|
|
7379
|
-
featureCount
|
|
7380
|
-
|
|
7445
|
+
switch (property) {
|
|
7446
|
+
case HeaderAttributeProperty.vertexCount:
|
|
7447
|
+
vertexCount = new TypedArrayTypeHeader(arrayBuffer, 0, 4)[0];
|
|
7448
|
+
byteOffset += sizeOf(type);
|
|
7449
|
+
break;
|
|
7450
|
+
case HeaderAttributeProperty.featureCount:
|
|
7451
|
+
featureCount = new TypedArrayTypeHeader(arrayBuffer, 4, 4)[0];
|
|
7452
|
+
byteOffset += sizeOf(type);
|
|
7453
|
+
break;
|
|
7454
|
+
default:
|
|
7455
|
+
break;
|
|
7381
7456
|
}
|
|
7382
|
-
}
|
|
7457
|
+
}
|
|
7383
7458
|
return {
|
|
7384
7459
|
vertexCount,
|
|
7385
7460
|
featureCount,
|
|
@@ -7396,7 +7471,7 @@
|
|
|
7396
7471
|
break;
|
|
7397
7472
|
}
|
|
7398
7473
|
const buffer = arrayBuffer.slice(byteOffset);
|
|
7399
|
-
let value
|
|
7474
|
+
let value;
|
|
7400
7475
|
if (valueType === "UInt64") {
|
|
7401
7476
|
value = parseUint64Values(buffer, count * valuesPerElement, sizeOf(valueType));
|
|
7402
7477
|
} else {
|
|
@@ -7433,7 +7508,7 @@
|
|
|
7433
7508
|
values.push(value);
|
|
7434
7509
|
offset += attributeSize;
|
|
7435
7510
|
}
|
|
7436
|
-
return values;
|
|
7511
|
+
return new Uint32Array(values);
|
|
7437
7512
|
}
|
|
7438
7513
|
function parsePositions(attribute, tile) {
|
|
7439
7514
|
const mbs = tile.mbs;
|
|
@@ -7500,7 +7575,9 @@
|
|
|
7500
7575
|
if (pbrMaterial.pbrMetallicRoughness && pbrMaterial.pbrMetallicRoughness.baseColorFactor) {
|
|
7501
7576
|
pbrMaterial.pbrMetallicRoughness.baseColorFactor = convertColorFormat(pbrMaterial.pbrMetallicRoughness.baseColorFactor);
|
|
7502
7577
|
}
|
|
7503
|
-
|
|
7578
|
+
if (texture) {
|
|
7579
|
+
setMaterialTexture(pbrMaterial, texture);
|
|
7580
|
+
}
|
|
7504
7581
|
return pbrMaterial;
|
|
7505
7582
|
}
|
|
7506
7583
|
function convertColorFormat(colorFactor) {
|
|
@@ -7562,11 +7639,11 @@
|
|
|
7562
7639
|
attributes.id.value = result;
|
|
7563
7640
|
}
|
|
7564
7641
|
function getFeatureIdsFromFeatureIndexMetadata(featureIndex) {
|
|
7565
|
-
return featureIndex
|
|
7642
|
+
return featureIndex?.metadata?.["i3s-feature-ids"]?.intArray;
|
|
7566
7643
|
}
|
|
7567
7644
|
|
|
7568
7645
|
// src/i3s-content-loader.ts
|
|
7569
|
-
var VERSION8 = typeof __VERSION__ !== "undefined" ? __VERSION__ : "
|
|
7646
|
+
var VERSION8 = typeof __VERSION__ !== "undefined" ? __VERSION__ : "latest";
|
|
7570
7647
|
var I3SContentLoader = {
|
|
7571
7648
|
name: "I3S Content (Indexed Scene Layers)",
|
|
7572
7649
|
id: "i3s-content",
|