@loaders.gl/i3s 4.4.0-alpha.2 → 4.4.0-alpha.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/arcgis-webscene-loader.js +2 -1
- package/dist/arcgis-webscene-loader.js.map +1 -0
- package/dist/dist.dev.js +402 -298
- package/dist/dist.min.js +1 -1
- package/dist/i3s-attribute-loader.js +2 -1
- package/dist/i3s-attribute-loader.js.map +1 -0
- package/dist/i3s-building-scene-layer-loader.js +2 -1
- package/dist/i3s-building-scene-layer-loader.js.map +1 -0
- package/dist/i3s-content-loader.js +2 -1
- package/dist/i3s-content-loader.js.map +1 -0
- package/dist/i3s-content-worker-node.js +45 -45
- package/dist/i3s-content-worker-node.js.map +4 -4
- package/dist/i3s-content-worker.js +396 -159
- package/dist/i3s-loader.d.ts +13 -8
- package/dist/i3s-loader.d.ts.map +1 -1
- package/dist/i3s-loader.js +8 -7
- package/dist/i3s-loader.js.map +1 -0
- package/dist/i3s-node-page-loader.js +2 -1
- package/dist/i3s-node-page-loader.js.map +1 -0
- package/dist/i3s-slpk-loader.d.ts +6 -1
- package/dist/i3s-slpk-loader.d.ts.map +1 -1
- package/dist/i3s-slpk-loader.js +10 -4
- package/dist/i3s-slpk-loader.js.map +1 -0
- package/dist/index.cjs +35 -27
- package/dist/index.cjs.map +4 -4
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/helpers/i3s-nodepages-tiles.js +5 -4
- package/dist/lib/helpers/i3s-nodepages-tiles.js.map +1 -0
- package/dist/lib/parsers/constants.js +1 -0
- package/dist/lib/parsers/constants.js.map +1 -0
- package/dist/lib/parsers/parse-arcgis-webscene.js +1 -0
- package/dist/lib/parsers/parse-arcgis-webscene.js.map +1 -0
- package/dist/lib/parsers/parse-i3s-attribute.js +1 -0
- package/dist/lib/parsers/parse-i3s-attribute.js.map +1 -0
- package/dist/lib/parsers/parse-i3s-building-scene-layer.js +1 -0
- package/dist/lib/parsers/parse-i3s-building-scene-layer.js.map +1 -0
- 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 +1 -0
- package/dist/lib/parsers/parse-i3s-tile-content.js.map +1 -0
- package/dist/lib/parsers/parse-i3s.d.ts.map +1 -1
- package/dist/lib/parsers/parse-i3s.js +6 -4
- package/dist/lib/parsers/parse-i3s.js.map +1 -0
- package/dist/lib/parsers/parse-slpk/parse-slpk.d.ts +3 -3
- package/dist/lib/parsers/parse-slpk/parse-slpk.d.ts.map +1 -1
- package/dist/lib/parsers/parse-slpk/parse-slpk.js +4 -3
- package/dist/lib/parsers/parse-slpk/parse-slpk.js.map +1 -0
- package/dist/lib/parsers/parse-slpk/slpk-archieve.d.ts +3 -3
- package/dist/lib/parsers/parse-slpk/slpk-archieve.d.ts.map +1 -1
- package/dist/lib/parsers/parse-slpk/slpk-archieve.js +5 -4
- package/dist/lib/parsers/parse-slpk/slpk-archieve.js.map +1 -0
- package/dist/lib/utils/convert-i3s-obb-to-mbs.js +1 -0
- package/dist/lib/utils/convert-i3s-obb-to-mbs.js.map +1 -0
- package/dist/lib/utils/customize-colors.js +5 -2
- package/dist/lib/utils/customize-colors.js.map +1 -0
- package/dist/lib/utils/url-utils.js +1 -0
- package/dist/lib/utils/url-utils.js.map +1 -0
- package/dist/types.js +1 -0
- package/dist/types.js.map +1 -0
- package/dist/workers/i3s-content-worker-node.js +1 -0
- package/dist/workers/i3s-content-worker-node.js.map +1 -0
- package/dist/workers/i3s-content-worker.js +1 -0
- package/dist/workers/i3s-content-worker.js.map +1 -0
- package/package.json +18 -12
- package/src/i3s-loader.ts +15 -10
- package/src/i3s-slpk-loader.ts +8 -3
- package/src/lib/helpers/i3s-nodepages-tiles.ts +4 -4
- package/src/lib/parsers/parse-i3s-tile-content.ts +2 -2
- package/src/lib/parsers/parse-i3s.ts +7 -4
- package/src/lib/parsers/parse-slpk/parse-slpk.ts +7 -5
- package/src/lib/parsers/parse-slpk/slpk-archieve.ts +7 -10
- package/src/lib/utils/customize-colors.ts +4 -2
package/dist/i3s-loader.d.ts
CHANGED
|
@@ -1,9 +1,14 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { StrictLoaderOptions } from '@loaders.gl/loader-utils';
|
|
2
2
|
import type { I3STilesetHeader } from "./types.js";
|
|
3
3
|
import { COORDINATE_SYSTEM } from "./lib/parsers/constants.js";
|
|
4
4
|
import { I3SParseOptions } from "./types.js";
|
|
5
|
-
export type I3SLoaderOptions =
|
|
6
|
-
i3s?: I3SParseOptions
|
|
5
|
+
export type I3SLoaderOptions = StrictLoaderOptions & {
|
|
6
|
+
i3s?: I3SParseOptions & {
|
|
7
|
+
/** For I3SAttributeLoader */
|
|
8
|
+
attributeName?: string;
|
|
9
|
+
/** For I3SAttributeLoader */
|
|
10
|
+
attributeType?: string;
|
|
11
|
+
};
|
|
7
12
|
};
|
|
8
13
|
/**
|
|
9
14
|
* Loader for I3S - Indexed 3D Scene Layer
|
|
@@ -20,13 +25,13 @@ export declare const I3SLoader: {
|
|
|
20
25
|
readonly extensions: ["bin"];
|
|
21
26
|
readonly options: {
|
|
22
27
|
readonly i3s: {
|
|
23
|
-
readonly token:
|
|
28
|
+
readonly token: undefined;
|
|
24
29
|
readonly isTileset: "auto";
|
|
25
30
|
readonly isTileHeader: "auto";
|
|
26
|
-
readonly tile:
|
|
27
|
-
readonly tileset:
|
|
28
|
-
readonly _tileOptions:
|
|
29
|
-
readonly _tilesetOptions:
|
|
31
|
+
readonly tile: undefined;
|
|
32
|
+
readonly tileset: undefined;
|
|
33
|
+
readonly _tileOptions: undefined;
|
|
34
|
+
readonly _tilesetOptions: undefined;
|
|
30
35
|
readonly useDracoGeometry: true;
|
|
31
36
|
readonly useCompressedTextures: true;
|
|
32
37
|
readonly decodeTextures: true;
|
package/dist/i3s-loader.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i3s-loader.d.ts","sourceRoot":"","sources":["../src/i3s-loader.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAmB,
|
|
1
|
+
{"version":3,"file":"i3s-loader.d.ts","sourceRoot":"","sources":["../src/i3s-loader.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAmB,mBAAmB,EAAC,MAAM,0BAA0B,CAAC;AAEpF,OAAO,KAAK,EAAC,gBAAgB,EAAC,mBAAgB;AAG9C,OAAO,EAAC,iBAAiB,EAAC,mCAAgC;AAC1D,OAAO,EAAC,eAAe,EAAC,mBAAgB;AAaxC,MAAM,MAAM,gBAAgB,GAAG,mBAAmB,GAAG;IACnD,GAAG,CAAC,EAAE,eAAe,GAAG;QACtB,6BAA6B;QAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,6BAA6B;QAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,SAAS;uBACS,gBAAgB;wBAC1B,KAAK;;;;;;;;;;;;;;;;;;;;;;;CAwBsD,CAAC;AAEjF,iBAAe,QAAQ,CAAC,IAAI,KAAA,EAAE,OAAO,EAAE,gBAAgB,YAAK,EAAE,OAAO,KAAA,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAoChG"}
|
package/dist/i3s-loader.js
CHANGED
|
@@ -8,7 +8,7 @@ import { COORDINATE_SYSTEM } from "./lib/parsers/constants.js";
|
|
|
8
8
|
import { getUrlWithoutParams } from "./lib/utils/url-utils.js";
|
|
9
9
|
// __VERSION__ is injected by babel-plugin-version-inline
|
|
10
10
|
// @ts-ignore TS2304: Cannot find name '__VERSION__'.
|
|
11
|
-
const VERSION = typeof "4.4.0-alpha.
|
|
11
|
+
const VERSION = typeof "4.4.0-alpha.9" !== 'undefined' ? "4.4.0-alpha.9" : 'latest';
|
|
12
12
|
const TILESET_REGEX = /layers\/[0-9]+$/;
|
|
13
13
|
const LOCAL_SLPK_REGEX = /\.slpk$/;
|
|
14
14
|
const TILE_HEADER_REGEX = /nodes\/([0-9-]+|root)$/;
|
|
@@ -29,13 +29,13 @@ export const I3SLoader = {
|
|
|
29
29
|
extensions: ['bin'],
|
|
30
30
|
options: {
|
|
31
31
|
i3s: {
|
|
32
|
-
token:
|
|
32
|
+
token: undefined,
|
|
33
33
|
isTileset: 'auto',
|
|
34
34
|
isTileHeader: 'auto',
|
|
35
|
-
tile:
|
|
36
|
-
tileset:
|
|
37
|
-
_tileOptions:
|
|
38
|
-
_tilesetOptions:
|
|
35
|
+
tile: undefined,
|
|
36
|
+
tileset: undefined,
|
|
37
|
+
_tileOptions: undefined,
|
|
38
|
+
_tilesetOptions: undefined,
|
|
39
39
|
useDracoGeometry: true,
|
|
40
40
|
useCompressedTextures: true,
|
|
41
41
|
decodeTextures: true,
|
|
@@ -61,7 +61,7 @@ async function parseI3S(data, options = {}, context) {
|
|
|
61
61
|
isTileset = options.i3s.isTileset;
|
|
62
62
|
}
|
|
63
63
|
let isTileHeader;
|
|
64
|
-
if (options.isTileHeader === 'auto') {
|
|
64
|
+
if (options.i3s.isTileHeader === 'auto') {
|
|
65
65
|
isTileHeader = TILE_HEADER_REGEX.test(urlWithoutParams);
|
|
66
66
|
}
|
|
67
67
|
else {
|
|
@@ -102,3 +102,4 @@ function getMagicNumber(data) {
|
|
|
102
102
|
}
|
|
103
103
|
return null;
|
|
104
104
|
}
|
|
105
|
+
//# sourceMappingURL=i3s-loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i3s-loader.js","sourceRoot":"","sources":["../src/i3s-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// Copyright vis.gl contributors
|
|
4
4
|
// __VERSION__ is injected by babel-plugin-version-inline
|
|
5
5
|
// @ts-ignore TS2304: Cannot find name '__VERSION__'.
|
|
6
|
-
const VERSION = typeof "4.4.0-alpha.
|
|
6
|
+
const VERSION = typeof "4.4.0-alpha.9" !== 'undefined' ? "4.4.0-alpha.9" : 'latest';
|
|
7
7
|
/**
|
|
8
8
|
* Loader for I3S node pages
|
|
9
9
|
*/
|
|
@@ -24,3 +24,4 @@ export const I3SNodePageLoader = {
|
|
|
24
24
|
async function parseNodePage(data, options) {
|
|
25
25
|
return JSON.parse(new TextDecoder().decode(data));
|
|
26
26
|
}
|
|
27
|
+
//# sourceMappingURL=i3s-node-page-loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i3s-node-page-loader.js","sourceRoot":"","sources":["../src/i3s-node-page-loader.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,gCAAgC;AAMhC,yDAAyD;AACzD,qDAAqD;AACrD,MAAM,OAAO,GAAG,sBAAkB,KAAK,WAAW,CAAC,CAAC,iBAAa,CAAC,CAAC,QAAQ,CAAC;AAE5E;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,QAAQ,EAAE,IAA2B;IACrC,SAAS,EAAE,IAAa;IAExB,IAAI,EAAE,eAAe;IACrB,EAAE,EAAE,eAAe;IACnB,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,OAAO;IAChB,SAAS,EAAE,CAAC,kBAAkB,CAAC;IAC/B,KAAK,EAAE,aAAa;IACpB,UAAU,EAAE,CAAC,MAAM,CAAC;IACpB,OAAO,EAAE;QACP,GAAG,EAAE,EAAE;KACR;CACqE,CAAC;AAEzE,KAAK,UAAU,aAAa,CAAC,IAAiB,EAAE,OAAuB;IACrE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAa,CAAC;AAChE,CAAC"}
|
|
@@ -22,7 +22,12 @@ export declare const SLPKLoader: {
|
|
|
22
22
|
readonly version: any;
|
|
23
23
|
readonly mimeTypes: ["application/octet-stream"];
|
|
24
24
|
readonly extensions: ["slpk"];
|
|
25
|
-
readonly options: {
|
|
25
|
+
readonly options: {
|
|
26
|
+
readonly slpk: {
|
|
27
|
+
readonly path: "";
|
|
28
|
+
readonly pathMode: undefined;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
26
31
|
readonly parse: (data: ArrayBuffer, options?: SLPKLoaderOptions) => Promise<ArrayBuffer>;
|
|
27
32
|
};
|
|
28
33
|
//# sourceMappingURL=i3s-slpk-loader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i3s-slpk-loader.d.ts","sourceRoot":"","sources":["../src/i3s-slpk-loader.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,aAAa,EAAmB,MAAM,0BAA0B,CAAC;AAQ9E,qCAAqC;AACrC,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG;IAC9C,IAAI,CAAC,EAAE;QACL,mCAAmC;QACnC,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,uBAAuB;QACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;KAC3B,CAAC;CACH,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,UAAU;uBACQ,WAAW;wBACrB,KAAK
|
|
1
|
+
{"version":3,"file":"i3s-slpk-loader.d.ts","sourceRoot":"","sources":["../src/i3s-slpk-loader.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,aAAa,EAAmB,MAAM,0BAA0B,CAAC;AAQ9E,qCAAqC;AACrC,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG;IAC9C,IAAI,CAAC,EAAE;QACL,mCAAmC;QACnC,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,uBAAuB;QACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;KAC3B,CAAC;CACH,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,UAAU;uBACQ,WAAW;wBACrB,KAAK;;;;;;;;;;;;;2BAcJ,WAAW,YAAW,iBAAiB,KAAQ,OAAO,CAAC,WAAW,CAAC;CAIb,CAAC"}
|
package/dist/i3s-slpk-loader.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
// loaders.gl
|
|
2
2
|
// SPDX-License-Identifier: MIT
|
|
3
3
|
// Copyright vis.gl contributors
|
|
4
|
-
import {
|
|
4
|
+
import { DataViewReadableFile } from '@loaders.gl/zip';
|
|
5
5
|
import { parseSLPKArchive } from "./lib/parsers/parse-slpk/parse-slpk.js";
|
|
6
6
|
// __VERSION__ is injected by babel-plugin-version-inline
|
|
7
7
|
// @ts-ignore TS2304: Cannot find name '__VERSION__'.
|
|
8
|
-
const VERSION = typeof "4.4.0-alpha.
|
|
8
|
+
const VERSION = typeof "4.4.0-alpha.9" !== 'undefined' ? "4.4.0-alpha.9" : 'latest';
|
|
9
9
|
/**
|
|
10
10
|
* Loader for SLPK - Scene Layer Package (Archive I3S format)
|
|
11
11
|
* @todo - this reloads the entire archive for every tile, should be optimized
|
|
@@ -20,9 +20,15 @@ export const SLPKLoader = {
|
|
|
20
20
|
version: VERSION,
|
|
21
21
|
mimeTypes: ['application/octet-stream'],
|
|
22
22
|
extensions: ['slpk'],
|
|
23
|
-
options: {
|
|
23
|
+
options: {
|
|
24
|
+
slpk: {
|
|
25
|
+
path: '',
|
|
26
|
+
pathMode: undefined
|
|
27
|
+
}
|
|
28
|
+
},
|
|
24
29
|
parse: async (data, options = {}) => {
|
|
25
|
-
const archive = await parseSLPKArchive(new
|
|
30
|
+
const archive = await parseSLPKArchive(new DataViewReadableFile(new DataView(data)));
|
|
26
31
|
return archive.getFile(options.slpk?.path ?? '', options.slpk?.pathMode);
|
|
27
32
|
}
|
|
28
33
|
};
|
|
34
|
+
//# sourceMappingURL=i3s-slpk-loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i3s-slpk-loader.js","sourceRoot":"","sources":["../src/i3s-slpk-loader.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,gCAAgC;AAGhC,OAAO,EAAC,oBAAoB,EAAC,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAC,gBAAgB,EAAC,+CAA4C;AAErE,yDAAyD;AACzD,qDAAqD;AACrD,MAAM,OAAO,GAAG,sBAAkB,KAAK,WAAW,CAAC,CAAC,iBAAa,CAAC,CAAC,QAAQ,CAAC;AAY5E;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,QAAQ,EAAE,IAA8B;IACxC,SAAS,EAAE,IAAa;IAExB,IAAI,EAAE,gCAAgC;IACtC,EAAE,EAAE,MAAM;IACV,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,OAAO;IAChB,SAAS,EAAE,CAAC,0BAA0B,CAAC;IACvC,UAAU,EAAE,CAAC,MAAM,CAAC;IACpB,OAAO,EAAE;QACP,IAAI,EAAE;YACJ,IAAI,EAAE,EAAE;YACR,QAAQ,EAAE,SAAS;SACpB;KACF;IACD,KAAK,EAAE,KAAK,EAAE,IAAiB,EAAE,UAA6B,EAAE,EAAwB,EAAE;QACxF,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,IAAI,oBAAoB,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrF,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC3E,CAAC;CACyE,CAAC"}
|
package/dist/index.cjs
CHANGED
|
@@ -521,7 +521,7 @@ function getFeatureIdsFromFeatureIndexMetadata(featureIndex) {
|
|
|
521
521
|
}
|
|
522
522
|
|
|
523
523
|
// dist/i3s-content-loader.js
|
|
524
|
-
var VERSION = true ? "4.4.0-alpha.
|
|
524
|
+
var VERSION = true ? "4.4.0-alpha.9" : "latest";
|
|
525
525
|
var I3SContentLoader = {
|
|
526
526
|
dataType: null,
|
|
527
527
|
batchType: null,
|
|
@@ -558,7 +558,7 @@ var import_core3 = require("@loaders.gl/core");
|
|
|
558
558
|
var import_textures2 = require("@loaders.gl/textures");
|
|
559
559
|
|
|
560
560
|
// dist/i3s-node-page-loader.js
|
|
561
|
-
var VERSION2 = true ? "4.4.0-alpha.
|
|
561
|
+
var VERSION2 = true ? "4.4.0-alpha.9" : "latest";
|
|
562
562
|
var I3SNodePageLoader = {
|
|
563
563
|
dataType: null,
|
|
564
564
|
batchType: null,
|
|
@@ -698,7 +698,8 @@ var I3SNodePagesTiles = class {
|
|
|
698
698
|
let result = null;
|
|
699
699
|
const geometryDefinition = this.tileset.geometryDefinitions[meshGeometryData.definition];
|
|
700
700
|
let geometryIndex = -1;
|
|
701
|
-
|
|
701
|
+
const i3sOptions = this.options.i3s;
|
|
702
|
+
if (i3sOptions && typeof i3sOptions === "object" && i3sOptions.useDracoGeometry) {
|
|
702
703
|
geometryIndex = geometryDefinition.geometryBuffers.findIndex((buffer) => buffer.compressedAttributes && buffer.compressedAttributes.encoding === "draco");
|
|
703
704
|
}
|
|
704
705
|
if (geometryIndex === -1) {
|
|
@@ -792,7 +793,8 @@ var I3SNodePagesTiles = class {
|
|
|
792
793
|
*/
|
|
793
794
|
getSupportedTextureFormats() {
|
|
794
795
|
const formats = [];
|
|
795
|
-
|
|
796
|
+
const i3sOptions = this.options.i3s;
|
|
797
|
+
if (!i3sOptions || i3sOptions.useCompressedTextures) {
|
|
796
798
|
const supportedCompressedFormats = (0, import_textures2.getSupportedGPUTextureFormats)();
|
|
797
799
|
if (supportedCompressedFormats.has("etc2")) {
|
|
798
800
|
formats.push("ktx-etc2");
|
|
@@ -876,13 +878,12 @@ async function normalizeTilesetData(tileset, options, context) {
|
|
|
876
878
|
nodePagesTile = new I3SNodePagesTiles(tileset, url, options);
|
|
877
879
|
root = await nodePagesTile.formTileFromNodePages(0);
|
|
878
880
|
} else {
|
|
879
|
-
const parseOptions = options.i3s;
|
|
881
|
+
const parseOptions = options.i3s && typeof options.i3s === "object" ? options.i3s : {};
|
|
880
882
|
const rootNodeUrl = getUrlWithToken(`${url}/nodes/root`, parseOptions.token);
|
|
881
883
|
root = await (0, import_core4.load)(rootNodeUrl, I3SLoader, {
|
|
882
884
|
...options,
|
|
883
885
|
i3s: {
|
|
884
|
-
|
|
885
|
-
...options.i3s,
|
|
886
|
+
...parseOptions,
|
|
886
887
|
loadContent: false,
|
|
887
888
|
isTileHeader: true,
|
|
888
889
|
isTileset: false
|
|
@@ -904,7 +905,7 @@ async function normalizeTilesetData(tileset, options, context) {
|
|
|
904
905
|
}
|
|
905
906
|
|
|
906
907
|
// dist/i3s-loader.js
|
|
907
|
-
var VERSION3 = true ? "4.4.0-alpha.
|
|
908
|
+
var VERSION3 = true ? "4.4.0-alpha.9" : "latest";
|
|
908
909
|
var TILESET_REGEX = /layers\/[0-9]+$/;
|
|
909
910
|
var LOCAL_SLPK_REGEX = /\.slpk$/;
|
|
910
911
|
var TILE_HEADER_REGEX = /nodes\/([0-9-]+|root)$/;
|
|
@@ -922,13 +923,13 @@ var I3SLoader = {
|
|
|
922
923
|
extensions: ["bin"],
|
|
923
924
|
options: {
|
|
924
925
|
i3s: {
|
|
925
|
-
token:
|
|
926
|
+
token: void 0,
|
|
926
927
|
isTileset: "auto",
|
|
927
928
|
isTileHeader: "auto",
|
|
928
|
-
tile:
|
|
929
|
-
tileset:
|
|
930
|
-
_tileOptions:
|
|
931
|
-
_tilesetOptions:
|
|
929
|
+
tile: void 0,
|
|
930
|
+
tileset: void 0,
|
|
931
|
+
_tileOptions: void 0,
|
|
932
|
+
_tilesetOptions: void 0,
|
|
932
933
|
useDracoGeometry: true,
|
|
933
934
|
useCompressedTextures: true,
|
|
934
935
|
decodeTextures: true,
|
|
@@ -951,7 +952,7 @@ async function parseI3S(data, options = {}, context) {
|
|
|
951
952
|
isTileset = options.i3s.isTileset;
|
|
952
953
|
}
|
|
953
954
|
let isTileHeader;
|
|
954
|
-
if (options.isTileHeader === "auto") {
|
|
955
|
+
if (options.i3s.isTileHeader === "auto") {
|
|
955
956
|
isTileHeader = TILE_HEADER_REGEX.test(urlWithoutParams);
|
|
956
957
|
} else {
|
|
957
958
|
isTileHeader = options.i3s.isTileHeader;
|
|
@@ -988,7 +989,7 @@ function getMagicNumber(data) {
|
|
|
988
989
|
}
|
|
989
990
|
|
|
990
991
|
// dist/i3s-slpk-loader.js
|
|
991
|
-
var
|
|
992
|
+
var import_zip3 = require("@loaders.gl/zip");
|
|
992
993
|
|
|
993
994
|
// dist/lib/parsers/parse-slpk/parse-slpk.js
|
|
994
995
|
var import_zip2 = require("@loaders.gl/zip");
|
|
@@ -1043,7 +1044,7 @@ var SLPKArchive = class extends import_zip.IndexedArchive {
|
|
|
1043
1044
|
_md5Hash = new import_crypto.MD5Hash();
|
|
1044
1045
|
/**
|
|
1045
1046
|
* Constructor
|
|
1046
|
-
* @param fileProvider -
|
|
1047
|
+
* @param fileProvider - readable file handle for random access
|
|
1047
1048
|
* @param hashTable - pre-loaded hashTable. If presented, getFile will skip reading the hash file
|
|
1048
1049
|
* @param fileName - name of the archive. It is used to add to an URL of a loader context
|
|
1049
1050
|
*/
|
|
@@ -1120,11 +1121,11 @@ var SLPKArchive = class extends import_zip.IndexedArchive {
|
|
|
1120
1121
|
if (offset === void 0) {
|
|
1121
1122
|
return void 0;
|
|
1122
1123
|
}
|
|
1123
|
-
const localFileHeader = await (0, import_zip.parseZipLocalFileHeader)(offset, this.
|
|
1124
|
+
const localFileHeader = await (0, import_zip.parseZipLocalFileHeader)(offset, this.file);
|
|
1124
1125
|
if (!localFileHeader) {
|
|
1125
1126
|
return void 0;
|
|
1126
1127
|
}
|
|
1127
|
-
compressedFile = await this.
|
|
1128
|
+
compressedFile = await (0, import_zip.readRange)(this.file, localFileHeader.fileDataOffset, localFileHeader.fileDataOffset + localFileHeader.compressedSize);
|
|
1128
1129
|
} else {
|
|
1129
1130
|
try {
|
|
1130
1131
|
compressedFile = await this.getFileWithoutHash(path);
|
|
@@ -1150,14 +1151,14 @@ async function parseSLPKArchive(fileProvider, cb, fileName) {
|
|
|
1150
1151
|
throw new Error("corrupted SLPK");
|
|
1151
1152
|
}
|
|
1152
1153
|
const fileDataOffset = localFileHeader.fileDataOffset;
|
|
1153
|
-
const hashFile = await
|
|
1154
|
+
const hashFile = await (0, import_zip2.readRange)(fileProvider, fileDataOffset, fileDataOffset + localFileHeader.compressedSize);
|
|
1154
1155
|
hashTable = (0, import_zip2.parseHashTable)(hashFile);
|
|
1155
1156
|
}
|
|
1156
1157
|
return new SLPKArchive(fileProvider, hashTable, fileName);
|
|
1157
1158
|
}
|
|
1158
1159
|
|
|
1159
1160
|
// dist/i3s-slpk-loader.js
|
|
1160
|
-
var VERSION4 = true ? "4.4.0-alpha.
|
|
1161
|
+
var VERSION4 = true ? "4.4.0-alpha.9" : "latest";
|
|
1161
1162
|
var SLPKLoader = {
|
|
1162
1163
|
dataType: null,
|
|
1163
1164
|
batchType: null,
|
|
@@ -1167,10 +1168,15 @@ var SLPKLoader = {
|
|
|
1167
1168
|
version: VERSION4,
|
|
1168
1169
|
mimeTypes: ["application/octet-stream"],
|
|
1169
1170
|
extensions: ["slpk"],
|
|
1170
|
-
options: {
|
|
1171
|
+
options: {
|
|
1172
|
+
slpk: {
|
|
1173
|
+
path: "",
|
|
1174
|
+
pathMode: void 0
|
|
1175
|
+
}
|
|
1176
|
+
},
|
|
1171
1177
|
parse: async (data, options = {}) => {
|
|
1172
1178
|
var _a, _b;
|
|
1173
|
-
const archive = await parseSLPKArchive(new
|
|
1179
|
+
const archive = await parseSLPKArchive(new import_zip3.DataViewReadableFile(new DataView(data)));
|
|
1174
1180
|
return archive.getFile(((_a = options.slpk) == null ? void 0 : _a.path) ?? "", (_b = options.slpk) == null ? void 0 : _b.pathMode);
|
|
1175
1181
|
}
|
|
1176
1182
|
};
|
|
@@ -1236,7 +1242,7 @@ function parseStringsAttribute(arrayBuffer) {
|
|
|
1236
1242
|
}
|
|
1237
1243
|
|
|
1238
1244
|
// dist/i3s-attribute-loader.js
|
|
1239
|
-
var VERSION5 = true ? "4.4.0-alpha.
|
|
1245
|
+
var VERSION5 = true ? "4.4.0-alpha.9" : "latest";
|
|
1240
1246
|
var EMPTY_VALUE = "";
|
|
1241
1247
|
var REJECTED_STATUS = "rejected";
|
|
1242
1248
|
var I3SAttributeLoader = {
|
|
@@ -1376,7 +1382,7 @@ function parseSublayersTree(sublayers, url) {
|
|
|
1376
1382
|
}
|
|
1377
1383
|
|
|
1378
1384
|
// dist/i3s-building-scene-layer-loader.js
|
|
1379
|
-
var VERSION6 = true ? "4.4.0-alpha.
|
|
1385
|
+
var VERSION6 = true ? "4.4.0-alpha.9" : "latest";
|
|
1380
1386
|
var I3SBuildingSceneLayerLoader = {
|
|
1381
1387
|
dataType: null,
|
|
1382
1388
|
batchType: null,
|
|
@@ -1470,7 +1476,7 @@ async function checkSupportedIndexCRS(layer) {
|
|
|
1470
1476
|
}
|
|
1471
1477
|
|
|
1472
1478
|
// dist/arcgis-webscene-loader.js
|
|
1473
|
-
var VERSION7 = true ? "4.4.0-alpha.
|
|
1479
|
+
var VERSION7 = true ? "4.4.0-alpha.9" : "latest";
|
|
1474
1480
|
var ArcGISWebSceneLoader = {
|
|
1475
1481
|
dataType: null,
|
|
1476
1482
|
batchType: null,
|
|
@@ -1556,8 +1562,10 @@ async function loadFeatureAttributeData(attributeName, attributeUrls, attributeS
|
|
|
1556
1562
|
const objectIdAttributeUrl = getUrlWithToken(attributeUrls[attributeIndex], token);
|
|
1557
1563
|
const attributeType = getAttributeValueType(attributeStorageInfo[attributeIndex]);
|
|
1558
1564
|
const objectIdAttributeData = await (0, import_core8.load)(objectIdAttributeUrl, I3SAttributeLoader, {
|
|
1559
|
-
|
|
1560
|
-
|
|
1565
|
+
i3s: {
|
|
1566
|
+
attributeName,
|
|
1567
|
+
attributeType
|
|
1568
|
+
}
|
|
1561
1569
|
});
|
|
1562
1570
|
return objectIdAttributeData;
|
|
1563
1571
|
}
|