@loaders.gl/i3s 4.2.0-alpha.5 → 4.2.0-beta.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/arcgis-webscene-loader.d.ts +19 -2
- package/dist/arcgis-webscene-loader.d.ts.map +1 -1
- package/dist/arcgis-webscene-loader.js +3 -1
- package/dist/dist.dev.js +192 -144
- package/dist/dist.min.js +1 -1
- package/dist/i3s-attribute-loader.d.ts +14 -3
- package/dist/i3s-attribute-loader.d.ts.map +1 -1
- package/dist/i3s-attribute-loader.js +3 -1
- package/dist/i3s-building-scene-layer-loader.d.ts +15 -3
- package/dist/i3s-building-scene-layer-loader.d.ts.map +1 -1
- package/dist/i3s-building-scene-layer-loader.js +3 -1
- package/dist/i3s-content-loader.d.ts +18 -2
- package/dist/i3s-content-loader.d.ts.map +1 -1
- package/dist/i3s-content-loader.js +6 -1
- package/dist/i3s-content-worker-node.js +51 -51
- package/dist/i3s-content-worker-node.js.map +4 -4
- package/dist/i3s-content-worker.js +1722 -1702
- package/dist/i3s-loader.d.ts +30 -2
- package/dist/i3s-loader.d.ts.map +1 -1
- package/dist/i3s-loader.js +8 -2
- package/dist/i3s-node-page-loader.d.ts +17 -3
- package/dist/i3s-node-page-loader.d.ts.map +1 -1
- package/dist/i3s-node-page-loader.js +6 -1
- package/dist/i3s-slpk-loader.d.ts +13 -2
- package/dist/i3s-slpk-loader.d.ts.map +1 -1
- package/dist/i3s-slpk-loader.js +6 -1
- package/dist/index.cjs +43 -35
- package/dist/index.cjs.map +2 -2
- package/dist/lib/helpers/i3s-nodepages-tiles.d.ts.map +1 -1
- package/dist/lib/helpers/i3s-nodepages-tiles.js +11 -7
- package/dist/lib/parsers/parse-arcgis-webscene.js +1 -0
- package/dist/lib/parsers/parse-i3s-tile-content.d.ts.map +1 -1
- package/dist/lib/parsers/parse-i3s-tile-content.js +3 -25
- package/dist/lib/parsers/parse-slpk/slpk-archieve.js +5 -3
- package/package.json +12 -10
- package/src/arcgis-webscene-loader.ts +4 -6
- package/src/i3s-attribute-loader.ts +4 -2
- package/src/i3s-building-scene-layer-loader.ts +6 -6
- package/src/i3s-content-loader.ts +9 -2
- package/src/i3s-loader.ts +11 -3
- package/src/i3s-node-page-loader.ts +9 -2
- package/src/i3s-slpk-loader.ts +9 -2
- package/src/lib/helpers/i3s-nodepages-tiles.ts +1 -3
- package/src/lib/parsers/parse-i3s-tile-content.ts +7 -30
package/dist/i3s-loader.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { LoaderOptions } from '@loaders.gl/loader-utils';
|
|
2
2
|
import type { I3STilesetHeader } from "./types.js";
|
|
3
|
+
import { COORDINATE_SYSTEM } from "./lib/parsers/constants.js";
|
|
3
4
|
import { I3SParseOptions } from "./types.js";
|
|
4
5
|
export type I3SLoaderOptions = LoaderOptions & {
|
|
5
6
|
i3s?: I3SParseOptions;
|
|
@@ -7,5 +8,32 @@ export type I3SLoaderOptions = LoaderOptions & {
|
|
|
7
8
|
/**
|
|
8
9
|
* Loader for I3S - Indexed 3D Scene Layer
|
|
9
10
|
*/
|
|
10
|
-
export declare const I3SLoader:
|
|
11
|
+
export declare const I3SLoader: {
|
|
12
|
+
readonly dataType: I3STilesetHeader;
|
|
13
|
+
readonly batchType: never;
|
|
14
|
+
readonly name: "I3S (Indexed Scene Layers)";
|
|
15
|
+
readonly id: "i3s";
|
|
16
|
+
readonly module: "i3s";
|
|
17
|
+
readonly version: any;
|
|
18
|
+
readonly mimeTypes: ["application/octet-stream"];
|
|
19
|
+
readonly parse: typeof parseI3S;
|
|
20
|
+
readonly extensions: ["bin"];
|
|
21
|
+
readonly options: {
|
|
22
|
+
readonly i3s: {
|
|
23
|
+
readonly token: null;
|
|
24
|
+
readonly isTileset: "auto";
|
|
25
|
+
readonly isTileHeader: "auto";
|
|
26
|
+
readonly tile: null;
|
|
27
|
+
readonly tileset: null;
|
|
28
|
+
readonly _tileOptions: null;
|
|
29
|
+
readonly _tilesetOptions: null;
|
|
30
|
+
readonly useDracoGeometry: true;
|
|
31
|
+
readonly useCompressedTextures: true;
|
|
32
|
+
readonly decodeTextures: true;
|
|
33
|
+
readonly coordinateSystem: COORDINATE_SYSTEM.METER_OFFSETS;
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
declare function parseI3S(data: any, options: I3SLoaderOptions | undefined, context: any): Promise<I3STilesetHeader>;
|
|
38
|
+
export {};
|
|
11
39
|
//# sourceMappingURL=i3s-loader.d.ts.map
|
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":"
|
|
1
|
+
{"version":3,"file":"i3s-loader.d.ts","sourceRoot":"","sources":["../src/i3s-loader.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAmB,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAE9E,OAAO,KAAK,EAAC,gBAAgB,EAAC,mBAAgB;AAG9C,OAAO,EAAC,iBAAiB,EAAC,mCAAgC;AAC1D,OAAO,EAAC,eAAe,EAAC,mBAAgB;AAaxC,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG;IAC7C,GAAG,CAAC,EAAE,eAAe,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;CA0BuD,CAAC;AAE9E,iBAAe,QAAQ,CAAC,IAAI,KAAA,EAAE,OAAO,8BAAuB,EAAE,OAAO,KAAA,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAoChG"}
|
package/dist/i3s-loader.js
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
// loaders.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright vis.gl contributors
|
|
1
4
|
import { parse } from '@loaders.gl/core';
|
|
2
5
|
import { I3SContentLoader } from "./i3s-content-loader.js";
|
|
3
6
|
import { normalizeTileData, normalizeTilesetData } from "./lib/parsers/parse-i3s.js";
|
|
@@ -5,8 +8,9 @@ import { COORDINATE_SYSTEM } from "./lib/parsers/constants.js";
|
|
|
5
8
|
import { getUrlWithoutParams } from "./lib/utils/url-utils.js";
|
|
6
9
|
// __VERSION__ is injected by babel-plugin-version-inline
|
|
7
10
|
// @ts-ignore TS2304: Cannot find name '__VERSION__'.
|
|
8
|
-
const VERSION = typeof "4.2.0-alpha.
|
|
11
|
+
const VERSION = typeof "4.2.0-alpha.6" !== 'undefined' ? "4.2.0-alpha.6" : 'latest';
|
|
9
12
|
const TILESET_REGEX = /layers\/[0-9]+$/;
|
|
13
|
+
const LOCAL_SLPK_REGEX = /\.slpk$/;
|
|
10
14
|
const TILE_HEADER_REGEX = /nodes\/([0-9-]+|root)$/;
|
|
11
15
|
const SLPK_HEX = '504b0304';
|
|
12
16
|
const POINT_CLOUD = 'PointCloud';
|
|
@@ -14,6 +18,8 @@ const POINT_CLOUD = 'PointCloud';
|
|
|
14
18
|
* Loader for I3S - Indexed 3D Scene Layer
|
|
15
19
|
*/
|
|
16
20
|
export const I3SLoader = {
|
|
21
|
+
dataType: null,
|
|
22
|
+
batchType: null,
|
|
17
23
|
name: 'I3S (Indexed Scene Layers)',
|
|
18
24
|
id: 'i3s',
|
|
19
25
|
module: 'i3s',
|
|
@@ -49,7 +55,7 @@ async function parseI3S(data, options = {}, context) {
|
|
|
49
55
|
// auto detect file type based on url
|
|
50
56
|
let isTileset;
|
|
51
57
|
if (options.i3s.isTileset === 'auto') {
|
|
52
|
-
isTileset = TILESET_REGEX.test(urlWithoutParams);
|
|
58
|
+
isTileset = TILESET_REGEX.test(urlWithoutParams) || LOCAL_SLPK_REGEX.test(urlWithoutParams);
|
|
53
59
|
}
|
|
54
60
|
else {
|
|
55
61
|
isTileset = options.i3s.isTileset;
|
|
@@ -1,8 +1,22 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type { I3SLoaderOptions } from "./i3s-loader.js";
|
|
1
|
+
import type { LoaderOptions } from '@loaders.gl/loader-utils';
|
|
3
2
|
import type { NodePage } from "./types.js";
|
|
4
3
|
/**
|
|
5
4
|
* Loader for I3S node pages
|
|
6
5
|
*/
|
|
7
|
-
export declare const I3SNodePageLoader:
|
|
6
|
+
export declare const I3SNodePageLoader: {
|
|
7
|
+
readonly dataType: NodePage;
|
|
8
|
+
readonly batchType: never;
|
|
9
|
+
readonly name: "I3S Node Page";
|
|
10
|
+
readonly id: "i3s-node-page";
|
|
11
|
+
readonly module: "i3s";
|
|
12
|
+
readonly version: any;
|
|
13
|
+
readonly mimeTypes: ["application/json"];
|
|
14
|
+
readonly parse: typeof parseNodePage;
|
|
15
|
+
readonly extensions: ["json"];
|
|
16
|
+
readonly options: {
|
|
17
|
+
readonly i3s: {};
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
declare function parseNodePage(data: ArrayBuffer, options?: LoaderOptions): Promise<NodePage>;
|
|
21
|
+
export {};
|
|
8
22
|
//# sourceMappingURL=i3s-node-page-loader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i3s-node-page-loader.d.ts","sourceRoot":"","sources":["../src/i3s-node-page-loader.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"i3s-node-page-loader.d.ts","sourceRoot":"","sources":["../src/i3s-node-page-loader.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,aAAa,EAAmB,MAAM,0BAA0B,CAAC;AAE9E,OAAO,KAAK,EAAC,QAAQ,EAAC,mBAAgB;AAMtC;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;CAc0C,CAAC;AAEzE,iBAAe,aAAa,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,CAE1F"}
|
|
@@ -1,10 +1,15 @@
|
|
|
1
|
+
// loaders.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright vis.gl contributors
|
|
1
4
|
// __VERSION__ is injected by babel-plugin-version-inline
|
|
2
5
|
// @ts-ignore TS2304: Cannot find name '__VERSION__'.
|
|
3
|
-
const VERSION = typeof "4.2.0-alpha.
|
|
6
|
+
const VERSION = typeof "4.2.0-alpha.6" !== 'undefined' ? "4.2.0-alpha.6" : 'latest';
|
|
4
7
|
/**
|
|
5
8
|
* Loader for I3S node pages
|
|
6
9
|
*/
|
|
7
10
|
export const I3SNodePageLoader = {
|
|
11
|
+
dataType: null,
|
|
12
|
+
batchType: null,
|
|
8
13
|
name: 'I3S Node Page',
|
|
9
14
|
id: 'i3s-node-page',
|
|
10
15
|
module: 'i3s',
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { LoaderOptions
|
|
1
|
+
import type { LoaderOptions } from '@loaders.gl/loader-utils';
|
|
2
2
|
/** options to load data from SLPK */
|
|
3
3
|
export type SLPKLoaderOptions = LoaderOptions & {
|
|
4
4
|
slpk?: {
|
|
@@ -13,5 +13,16 @@ export type SLPKLoaderOptions = LoaderOptions & {
|
|
|
13
13
|
* @todo - this reloads the entire archive for every tile, should be optimized
|
|
14
14
|
* @todo - this should be updated to use `parseFile` and ReadableFile
|
|
15
15
|
*/
|
|
16
|
-
export declare const SLPKLoader:
|
|
16
|
+
export declare const SLPKLoader: {
|
|
17
|
+
readonly dataType: ArrayBuffer;
|
|
18
|
+
readonly batchType: never;
|
|
19
|
+
readonly name: "I3S SLPK (Scene Layer Package)";
|
|
20
|
+
readonly id: "slpk";
|
|
21
|
+
readonly module: "i3s";
|
|
22
|
+
readonly version: any;
|
|
23
|
+
readonly mimeTypes: ["application/octet-stream"];
|
|
24
|
+
readonly extensions: ["slpk"];
|
|
25
|
+
readonly options: {};
|
|
26
|
+
readonly parse: (data: ArrayBuffer, options?: SLPKLoaderOptions) => Promise<ArrayBuffer>;
|
|
27
|
+
};
|
|
17
28
|
//# 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":"
|
|
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;;;;;;;;;;2BAWD,WAAW,YAAW,iBAAiB,KAAQ,QAAQ,WAAW,CAAC;CAIb,CAAC"}
|
package/dist/i3s-slpk-loader.js
CHANGED
|
@@ -1,14 +1,19 @@
|
|
|
1
|
+
// loaders.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright vis.gl contributors
|
|
1
4
|
import { DataViewFile } from '@loaders.gl/loader-utils';
|
|
2
5
|
import { parseSLPKArchive } from "./lib/parsers/parse-slpk/parse-slpk.js";
|
|
3
6
|
// __VERSION__ is injected by babel-plugin-version-inline
|
|
4
7
|
// @ts-ignore TS2304: Cannot find name '__VERSION__'.
|
|
5
|
-
const VERSION = typeof "4.2.0-alpha.
|
|
8
|
+
const VERSION = typeof "4.2.0-alpha.6" !== 'undefined' ? "4.2.0-alpha.6" : 'latest';
|
|
6
9
|
/**
|
|
7
10
|
* Loader for SLPK - Scene Layer Package (Archive I3S format)
|
|
8
11
|
* @todo - this reloads the entire archive for every tile, should be optimized
|
|
9
12
|
* @todo - this should be updated to use `parseFile` and ReadableFile
|
|
10
13
|
*/
|
|
11
14
|
export const SLPKLoader = {
|
|
15
|
+
dataType: null,
|
|
16
|
+
batchType: null,
|
|
12
17
|
name: 'I3S SLPK (Scene Layer Package)',
|
|
13
18
|
id: 'slpk',
|
|
14
19
|
module: 'i3s',
|
package/dist/index.cjs
CHANGED
|
@@ -173,11 +173,7 @@ async function parseI3STileContent(arrayBuffer, tileOptions, tilesetOptions, opt
|
|
|
173
173
|
texture: null
|
|
174
174
|
};
|
|
175
175
|
if (tileOptions.textureUrl) {
|
|
176
|
-
const url = getUrlWithToken(
|
|
177
|
-
getInternalPathFromUrl(tileOptions.textureUrl),
|
|
178
|
-
// @ts-expect-error options is not properly typed
|
|
179
|
-
(_a = options == null ? void 0 : options.i3s) == null ? void 0 : _a.token
|
|
180
|
-
);
|
|
176
|
+
const url = getUrlWithToken(tileOptions.textureUrl, (_a = options == null ? void 0 : options.i3s) == null ? void 0 : _a.token);
|
|
181
177
|
const loader = getLoaderForTextureFormat(tileOptions.textureFormat);
|
|
182
178
|
const fetchFunc = (context == null ? void 0 : context.fetch) || fetch;
|
|
183
179
|
const response = await fetchFunc(url);
|
|
@@ -215,18 +211,6 @@ async function parseI3STileContent(arrayBuffer, tileOptions, tilesetOptions, opt
|
|
|
215
211
|
}
|
|
216
212
|
return await parseI3SNodeGeometry(arrayBuffer, content, tileOptions, tilesetOptions, options);
|
|
217
213
|
}
|
|
218
|
-
function getInternalPathFromUrl(url) {
|
|
219
|
-
const slpkUrlParts = url.split(".slpk");
|
|
220
|
-
let filename;
|
|
221
|
-
if (slpkUrlParts.length === 1) {
|
|
222
|
-
filename = url;
|
|
223
|
-
} else if (slpkUrlParts.length === 2) {
|
|
224
|
-
filename = slpkUrlParts[1].slice(1);
|
|
225
|
-
} else {
|
|
226
|
-
filename = url;
|
|
227
|
-
}
|
|
228
|
-
return filename;
|
|
229
|
-
}
|
|
230
214
|
async function parseI3SNodeGeometry(arrayBuffer, content, tileOptions, tilesetOptions, options) {
|
|
231
215
|
var _a, _b;
|
|
232
216
|
const contentByteLength = arrayBuffer.byteLength;
|
|
@@ -331,11 +315,11 @@ function parseHeaders(arrayBuffer, options) {
|
|
|
331
315
|
for (const { property, type } of options.store.defaultGeometrySchema.header) {
|
|
332
316
|
const TypedArrayTypeHeader = getConstructorForDataFormat(type);
|
|
333
317
|
switch (property) {
|
|
334
|
-
case HeaderAttributeProperty.vertexCount:
|
|
318
|
+
case HeaderAttributeProperty.vertexCount.toString():
|
|
335
319
|
vertexCount = new TypedArrayTypeHeader(arrayBuffer, 0, 4)[0];
|
|
336
320
|
byteOffset += sizeOf(type);
|
|
337
321
|
break;
|
|
338
|
-
case HeaderAttributeProperty.featureCount:
|
|
322
|
+
case HeaderAttributeProperty.featureCount.toString():
|
|
339
323
|
featureCount = new TypedArrayTypeHeader(arrayBuffer, 4, 4)[0];
|
|
340
324
|
byteOffset += sizeOf(type);
|
|
341
325
|
break;
|
|
@@ -533,8 +517,10 @@ function getFeatureIdsFromFeatureIndexMetadata(featureIndex) {
|
|
|
533
517
|
}
|
|
534
518
|
|
|
535
519
|
// dist/i3s-content-loader.js
|
|
536
|
-
var VERSION = true ? "4.2.0-alpha.
|
|
520
|
+
var VERSION = true ? "4.2.0-alpha.6" : "latest";
|
|
537
521
|
var I3SContentLoader = {
|
|
522
|
+
dataType: null,
|
|
523
|
+
batchType: null,
|
|
538
524
|
name: "I3S Content (Indexed Scene Layers)",
|
|
539
525
|
id: "i3s-content",
|
|
540
526
|
module: "i3s",
|
|
@@ -568,8 +554,10 @@ var import_core3 = require("@loaders.gl/core");
|
|
|
568
554
|
var import_textures2 = require("@loaders.gl/textures");
|
|
569
555
|
|
|
570
556
|
// dist/i3s-node-page-loader.js
|
|
571
|
-
var VERSION2 = true ? "4.2.0-alpha.
|
|
557
|
+
var VERSION2 = true ? "4.2.0-alpha.6" : "latest";
|
|
572
558
|
var I3SNodePageLoader = {
|
|
559
|
+
dataType: null,
|
|
560
|
+
batchType: null,
|
|
573
561
|
name: "I3S Node Page",
|
|
574
562
|
id: "i3s-node-page",
|
|
575
563
|
module: "i3s",
|
|
@@ -587,6 +575,16 @@ async function parseNodePage(data, options) {
|
|
|
587
575
|
|
|
588
576
|
// dist/lib/helpers/i3s-nodepages-tiles.js
|
|
589
577
|
var I3SNodePagesTiles = class {
|
|
578
|
+
tileset;
|
|
579
|
+
nodePages = [];
|
|
580
|
+
pendingNodePages = [];
|
|
581
|
+
nodesPerPage;
|
|
582
|
+
options;
|
|
583
|
+
lodSelectionMetricType;
|
|
584
|
+
textureDefinitionsSelectedFormats = [];
|
|
585
|
+
nodesInNodePages;
|
|
586
|
+
url;
|
|
587
|
+
textureLoaderOptions = {};
|
|
590
588
|
/**
|
|
591
589
|
* @constructs
|
|
592
590
|
* Create a I3SNodePagesTiles instance.
|
|
@@ -596,10 +594,6 @@ var I3SNodePagesTiles = class {
|
|
|
596
594
|
*/
|
|
597
595
|
constructor(tileset, url = "", options) {
|
|
598
596
|
var _a, _b;
|
|
599
|
-
this.nodePages = [];
|
|
600
|
-
this.pendingNodePages = [];
|
|
601
|
-
this.textureDefinitionsSelectedFormats = [];
|
|
602
|
-
this.textureLoaderOptions = {};
|
|
603
597
|
this.tileset = { ...tileset };
|
|
604
598
|
this.url = url;
|
|
605
599
|
this.nodesPerPage = ((_a = tileset.nodePages) == null ? void 0 : _a.nodesPerPage) || 64;
|
|
@@ -617,7 +611,7 @@ var I3SNodePagesTiles = class {
|
|
|
617
611
|
const pageIndex = Math.floor(id / this.nodesPerPage);
|
|
618
612
|
if (!this.nodePages[pageIndex] && !this.pendingNodePages[pageIndex]) {
|
|
619
613
|
const nodePageUrl = getUrlWithToken(
|
|
620
|
-
|
|
614
|
+
`${this.url}/nodepages/${pageIndex}`,
|
|
621
615
|
// @ts-expect-error this.options is not properly typed
|
|
622
616
|
(_a = this.options.i3s) == null ? void 0 : _a.token
|
|
623
617
|
);
|
|
@@ -906,12 +900,15 @@ async function normalizeTilesetData(tileset, options, context) {
|
|
|
906
900
|
}
|
|
907
901
|
|
|
908
902
|
// dist/i3s-loader.js
|
|
909
|
-
var VERSION3 = true ? "4.2.0-alpha.
|
|
903
|
+
var VERSION3 = true ? "4.2.0-alpha.6" : "latest";
|
|
910
904
|
var TILESET_REGEX = /layers\/[0-9]+$/;
|
|
905
|
+
var LOCAL_SLPK_REGEX = /\.slpk$/;
|
|
911
906
|
var TILE_HEADER_REGEX = /nodes\/([0-9-]+|root)$/;
|
|
912
907
|
var SLPK_HEX = "504b0304";
|
|
913
908
|
var POINT_CLOUD = "PointCloud";
|
|
914
909
|
var I3SLoader = {
|
|
910
|
+
dataType: null,
|
|
911
|
+
batchType: null,
|
|
915
912
|
name: "I3S (Indexed Scene Layers)",
|
|
916
913
|
id: "i3s",
|
|
917
914
|
module: "i3s",
|
|
@@ -945,7 +942,7 @@ async function parseI3S(data, options = {}, context) {
|
|
|
945
942
|
const urlWithoutParams = getUrlWithoutParams(url);
|
|
946
943
|
let isTileset;
|
|
947
944
|
if (options.i3s.isTileset === "auto") {
|
|
948
|
-
isTileset = TILESET_REGEX.test(urlWithoutParams);
|
|
945
|
+
isTileset = TILESET_REGEX.test(urlWithoutParams) || LOCAL_SLPK_REGEX.test(urlWithoutParams);
|
|
949
946
|
} else {
|
|
950
947
|
isTileset = options.i3s.isTileset;
|
|
951
948
|
}
|
|
@@ -1031,6 +1028,11 @@ var PATH_DESCRIPTIONS = [
|
|
|
1031
1028
|
}
|
|
1032
1029
|
];
|
|
1033
1030
|
var SLPKArchive = class extends import_zip.IndexedArchive {
|
|
1031
|
+
// Maps hex-encoded md5 filename hashes to bigint offsets into the archive
|
|
1032
|
+
hashTable;
|
|
1033
|
+
_textEncoder = new TextEncoder();
|
|
1034
|
+
_textDecoder = new TextDecoder();
|
|
1035
|
+
_md5Hash = new import_crypto.MD5Hash();
|
|
1034
1036
|
/**
|
|
1035
1037
|
* Constructor
|
|
1036
1038
|
* @param fileProvider - instance of a binary data reader
|
|
@@ -1039,9 +1041,6 @@ var SLPKArchive = class extends import_zip.IndexedArchive {
|
|
|
1039
1041
|
*/
|
|
1040
1042
|
constructor(fileProvider, hashTable, fileName) {
|
|
1041
1043
|
super(fileProvider, hashTable, fileName);
|
|
1042
|
-
this._textEncoder = new TextEncoder();
|
|
1043
|
-
this._textDecoder = new TextDecoder();
|
|
1044
|
-
this._md5Hash = new import_crypto.MD5Hash();
|
|
1045
1044
|
this.hashTable = hashTable;
|
|
1046
1045
|
}
|
|
1047
1046
|
/**
|
|
@@ -1150,8 +1149,10 @@ async function parseSLPKArchive(fileProvider, cb, fileName) {
|
|
|
1150
1149
|
}
|
|
1151
1150
|
|
|
1152
1151
|
// dist/i3s-slpk-loader.js
|
|
1153
|
-
var VERSION4 = true ? "4.2.0-alpha.
|
|
1152
|
+
var VERSION4 = true ? "4.2.0-alpha.6" : "latest";
|
|
1154
1153
|
var SLPKLoader = {
|
|
1154
|
+
dataType: null,
|
|
1155
|
+
batchType: null,
|
|
1155
1156
|
name: "I3S SLPK (Scene Layer Package)",
|
|
1156
1157
|
id: "slpk",
|
|
1157
1158
|
module: "i3s",
|
|
@@ -1227,10 +1228,12 @@ function parseStringsAttribute(arrayBuffer) {
|
|
|
1227
1228
|
}
|
|
1228
1229
|
|
|
1229
1230
|
// dist/i3s-attribute-loader.js
|
|
1230
|
-
var VERSION5 = true ? "4.2.0-alpha.
|
|
1231
|
+
var VERSION5 = true ? "4.2.0-alpha.6" : "latest";
|
|
1231
1232
|
var EMPTY_VALUE = "";
|
|
1232
1233
|
var REJECTED_STATUS = "rejected";
|
|
1233
1234
|
var I3SAttributeLoader = {
|
|
1235
|
+
dataType: null,
|
|
1236
|
+
batchType: null,
|
|
1234
1237
|
name: "I3S Attribute",
|
|
1235
1238
|
id: "i3s-attribute",
|
|
1236
1239
|
module: "i3s",
|
|
@@ -1365,8 +1368,10 @@ function parseSublayersTree(sublayers, url) {
|
|
|
1365
1368
|
}
|
|
1366
1369
|
|
|
1367
1370
|
// dist/i3s-building-scene-layer-loader.js
|
|
1368
|
-
var VERSION6 = true ? "4.2.0-alpha.
|
|
1371
|
+
var VERSION6 = true ? "4.2.0-alpha.6" : "latest";
|
|
1369
1372
|
var I3SBuildingSceneLayerLoader = {
|
|
1373
|
+
dataType: null,
|
|
1374
|
+
batchType: null,
|
|
1370
1375
|
name: "I3S Building Scene Layer",
|
|
1371
1376
|
id: "i3s-building-scene-layer",
|
|
1372
1377
|
module: "i3s",
|
|
@@ -1399,6 +1404,7 @@ var SUPPORTED_LAYERS_TYPES = [
|
|
|
1399
1404
|
var NO_AVAILABLE_SUPPORTED_LAYERS_ERROR = "NO_AVAILABLE_SUPPORTED_LAYERS_ERROR";
|
|
1400
1405
|
var NOT_SUPPORTED_CRS_ERROR = "NOT_SUPPORTED_CRS_ERROR";
|
|
1401
1406
|
var LayerError = class extends Error {
|
|
1407
|
+
details;
|
|
1402
1408
|
constructor(message, details) {
|
|
1403
1409
|
super(message);
|
|
1404
1410
|
this.details = details;
|
|
@@ -1456,8 +1462,10 @@ async function checkSupportedIndexCRS(layer) {
|
|
|
1456
1462
|
}
|
|
1457
1463
|
|
|
1458
1464
|
// dist/arcgis-webscene-loader.js
|
|
1459
|
-
var VERSION7 = true ? "4.2.0-alpha.
|
|
1465
|
+
var VERSION7 = true ? "4.2.0-alpha.6" : "latest";
|
|
1460
1466
|
var ArcGISWebSceneLoader = {
|
|
1467
|
+
dataType: null,
|
|
1468
|
+
batchType: null,
|
|
1461
1469
|
name: "ArcGIS Web Scene Loader",
|
|
1462
1470
|
id: "arcgis-web-scene",
|
|
1463
1471
|
module: "i3s",
|