@loaders.gl/i3s 4.0.0-alpha.4 → 4.0.0-alpha.5
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.d.ts +2 -0
- package/dist/bundle.d.ts.map +1 -0
- package/dist/dist.min.js +10374 -0
- package/dist/i3s-attribute-loader.d.ts +14 -0
- package/dist/i3s-attribute-loader.d.ts.map +1 -0
- package/dist/i3s-attribute-loader.js +1 -1
- package/dist/i3s-building-scene-layer-loader.d.ts +6 -0
- package/dist/i3s-building-scene-layer-loader.d.ts.map +1 -0
- package/dist/i3s-building-scene-layer-loader.js +1 -1
- package/dist/i3s-content-loader.d.ts +6 -0
- package/dist/i3s-content-loader.d.ts.map +1 -0
- package/dist/i3s-content-loader.js +1 -1
- package/dist/i3s-content-worker.js +391 -270
- package/dist/i3s-loader.d.ts +6 -0
- package/dist/i3s-loader.d.ts.map +1 -0
- package/dist/i3s-loader.js +1 -1
- package/dist/i3s-node-page-loader.d.ts +6 -0
- package/dist/i3s-node-page-loader.d.ts.map +1 -0
- package/dist/i3s-node-page-loader.js +1 -1
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/helpers/i3s-nodepages-tiles.d.ts +73 -0
- package/dist/lib/helpers/i3s-nodepages-tiles.d.ts.map +1 -0
- package/dist/lib/helpers/i3s-nodepages-tiles.js +33 -23
- package/dist/lib/helpers/i3s-nodepages-tiles.js.map +1 -1
- package/dist/lib/parsers/constants.d.ts +40 -0
- package/dist/lib/parsers/constants.d.ts.map +1 -0
- package/dist/lib/parsers/constants.js +54 -38
- package/dist/lib/parsers/constants.js.map +1 -1
- package/dist/lib/parsers/parse-i3s-attribute.d.ts +10 -0
- package/dist/lib/parsers/parse-i3s-attribute.d.ts.map +1 -0
- package/dist/lib/parsers/parse-i3s-building-scene-layer.d.ts +9 -0
- package/dist/lib/parsers/parse-i3s-building-scene-layer.d.ts.map +1 -0
- package/dist/lib/parsers/parse-i3s-building-scene-layer.js +2 -0
- package/dist/lib/parsers/parse-i3s-building-scene-layer.js.map +1 -1
- package/dist/lib/parsers/parse-i3s-tile-content.d.ts +4 -0
- package/dist/lib/parsers/parse-i3s-tile-content.d.ts.map +1 -0
- package/dist/lib/parsers/parse-i3s-tile-content.js +76 -79
- package/dist/lib/parsers/parse-i3s-tile-content.js.map +1 -1
- package/dist/lib/parsers/parse-i3s.d.ts +6 -0
- package/dist/lib/parsers/parse-i3s.d.ts.map +1 -0
- package/dist/lib/parsers/parse-i3s.js +40 -25
- package/dist/lib/parsers/parse-i3s.js.map +1 -1
- package/dist/lib/utils/convert-i3s-obb-to-mbs.d.ts +2 -0
- package/dist/lib/utils/convert-i3s-obb-to-mbs.d.ts.map +1 -0
- package/dist/lib/utils/url-utils.d.ts +22 -0
- package/dist/lib/utils/url-utils.d.ts.map +1 -0
- package/dist/lib/utils/url-utils.js +2 -3
- package/dist/lib/utils/url-utils.js.map +1 -1
- package/dist/types.d.ts +643 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +20 -1
- package/dist/types.js.map +1 -1
- package/dist/workers/i3s-content-worker.d.ts +2 -0
- package/dist/workers/i3s-content-worker.d.ts.map +1 -0
- package/package.json +12 -12
- package/src/index.ts +3 -3
- package/src/lib/helpers/i3s-nodepages-tiles.ts +71 -55
- package/src/lib/parsers/constants.ts +67 -54
- package/src/lib/parsers/parse-i3s-building-scene-layer.ts +2 -1
- package/src/lib/parsers/parse-i3s-tile-content.ts +150 -146
- package/src/lib/parsers/parse-i3s.ts +48 -37
- package/src/lib/utils/url-utils.ts +7 -7
- package/src/types.ts +412 -73
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/lib/parsers/parse-i3s.ts"],"names":["OrientedBoundingBox","Ellipsoid","load","TILE_TYPE","TILE_REFINEMENT","TILESET_TYPE","I3SNodePagesTiles","generateTileAttributeUrls","getUrlWithToken","normalizeTileData","tile","options","context","url","
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/parsers/parse-i3s.ts"],"names":["OrientedBoundingBox","Ellipsoid","load","TILE_TYPE","TILE_REFINEMENT","TILESET_TYPE","I3SNodePagesTiles","generateTileAttributeUrls","getUrlWithToken","normalizeTileData","tile","options","context","url","contentUrl","geometryData","href","textureUrl","textureData","attributeUrls","attributeData","normalizeTileNonUrlData","isDracoGeometry","boundingVolume","mbs","sphere","WGS84","cartographicToCartesian","slice","obb","box","center","halfSize","quaternion","fromCenterHalfSizeQuaternion","boundingSphere","getBoundingSphere","radius","lodMetricType","lodSelection","metricType","lodMetricValue","maxError","transformMatrix","transform","type","MESH","refine","REPLACE","normalizeTilesetData","tileset","nodePages","nodePagesTile","root","formTileFromNodePages","rootNodeUrl","i3s","token","loader","loadContent","isTileHeader","isTileset","basePath","I3S"],"mappings":"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","sourcesContent":["import {OrientedBoundingBox} from '@math.gl/culling';\nimport {Ellipsoid} from '@math.gl/geospatial';\nimport {load} from '@loaders.gl/core';\nimport {TILE_TYPE, TILE_REFINEMENT, TILESET_TYPE} from '@loaders.gl/tiles';\nimport I3SNodePagesTiles from '../helpers/i3s-nodepages-tiles';\nimport {generateTileAttributeUrls, getUrlWithToken} from '../utils/url-utils';\nimport {\n I3STilesetHeader,\n I3STileHeader,\n Mbs,\n I3SMinimalNodeData,\n Node3DIndexDocument\n} from '../../types';\nimport type {LoaderOptions, LoaderContext} from '@loaders.gl/loader-utils';\n\nexport function normalizeTileData(tile : Node3DIndexDocument, options : LoaderOptions, context: LoaderContext): I3STileHeader {\n const url: string = context.url || '';\n let contentUrl: string | undefined;\n if (tile.geometryData) {\n contentUrl = `${url}/${tile.geometryData[0].href}`;\n }\n\n let textureUrl: string | undefined;\n if (tile.textureData) {\n textureUrl = `${url}/${tile.textureData[0].href}`;\n }\n\n let attributeUrls: string[] | undefined;\n if (tile.attributeData) {\n attributeUrls = generateTileAttributeUrls(url, tile);\n }\n\n return normalizeTileNonUrlData({\n ...tile,\n url,\n contentUrl,\n textureUrl,\n attributeUrls,\n isDracoGeometry: false\n });\n}\n\nexport function normalizeTileNonUrlData(tile : I3SMinimalNodeData): I3STileHeader {\n const boundingVolume: {box?: number[]; sphere?: number[]} = {};\n let mbs: Mbs = [0, 0, 0, 1];\n if (tile.mbs) {\n mbs = tile.mbs;\n boundingVolume.sphere = [\n ...Ellipsoid.WGS84.cartographicToCartesian(tile.mbs.slice(0, 3)), // cartesian center of sphere\n tile.mbs[3] // radius of sphere\n ] as Mbs;\n } else if (tile.obb) {\n boundingVolume.box = [\n ...Ellipsoid.WGS84.cartographicToCartesian(tile.obb.center), // cartesian center of box\n ...tile.obb.halfSize, // halfSize\n ...tile.obb.quaternion // quaternion\n ];\n const obb = new OrientedBoundingBox().fromCenterHalfSizeQuaternion(\n boundingVolume.box.slice(0, 3),\n tile.obb.halfSize,\n tile.obb.quaternion\n );\n const boundingSphere = obb.getBoundingSphere();\n boundingVolume.sphere = [...boundingSphere.center , boundingSphere.radius] as Mbs;\n mbs = [...tile.obb.center, boundingSphere.radius] as Mbs;\n }\n\n const lodMetricType = tile.lodSelection?.[0].metricType;\n const lodMetricValue = tile.lodSelection?.[0].maxError;\n const transformMatrix = tile.transform;\n const type = TILE_TYPE.MESH;\n /**\n * I3S specification supports only REPLACE\n */\n const refine = TILE_REFINEMENT.REPLACE;\n\n return {...tile, mbs, boundingVolume, lodMetricType, lodMetricValue, transformMatrix, type, refine};\n}\n\nexport async function normalizeTilesetData(tileset : I3STilesetHeader, options : LoaderOptions, context: LoaderContext) {\n tileset.url = context.url;\n\n if (tileset.nodePages) {\n tileset.nodePagesTile = new I3SNodePagesTiles(tileset, options);\n tileset.root = await tileset.nodePagesTile.formTileFromNodePages(0);\n } else {\n const rootNodeUrl = getUrlWithToken(`${tileset.url}/nodes/root`, options.i3s?.token);\n // eslint-disable-next-line no-use-before-define\n tileset.root = await load(rootNodeUrl, tileset.loader, {\n i3s: {loadContent: false, isTileHeader: true, isTileset: false}\n });\n }\n\n // base path that non-absolute paths in tileset are relative to.\n tileset.basePath = tileset.url;\n tileset.type = TILESET_TYPE.I3S;\n\n // populate from root node\n tileset.lodMetricType = tileset.root.lodMetricType;\n tileset.lodMetricValue = tileset.root.lodMetricValue;\n}\n"],"file":"parse-i3s.js"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convert-i3s-obb-to-mbs.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/convert-i3s-obb-to-mbs.ts"],"names":[],"mappings":"AAGA,wBAAgB,kBAAkB,CAAC,GAAG,KAAA,SAgBrC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Node3DIndexDocument } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* Generates url with token if it is exists.
|
|
4
|
+
* @param url
|
|
5
|
+
* @param token
|
|
6
|
+
* @returns
|
|
7
|
+
*/
|
|
8
|
+
export declare function getUrlWithToken(url: string, token?: string | null): string;
|
|
9
|
+
/**
|
|
10
|
+
* Generates attribute urls for tile.
|
|
11
|
+
* @param tile
|
|
12
|
+
* @returns list of attribute urls
|
|
13
|
+
*/
|
|
14
|
+
export declare function generateTileAttributeUrls(url: string, tile: Node3DIndexDocument): string[];
|
|
15
|
+
/**
|
|
16
|
+
* Generates attribute urls for tileset based on tileset and resource
|
|
17
|
+
* @param {Object} tileset
|
|
18
|
+
* @param {number} resource
|
|
19
|
+
* @returns {Array}
|
|
20
|
+
*/
|
|
21
|
+
export declare function generateTilesetAttributeUrls(tileset: any, resource: any): string[];
|
|
22
|
+
//# sourceMappingURL=url-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"url-utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/url-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,mBAAmB,EAAC,MAAM,aAAa,CAAC;AAEhD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,GAAE,MAAM,GAAG,IAAW,GAAG,MAAM,CAEhF;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,GAAG,MAAM,EAAE,CAU1F;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,OAAO,KAAA,EAAE,QAAQ,KAAA,YAU7D"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
export function getUrlWithToken(url, token = null) {
|
|
2
2
|
return token ? "".concat(url, "?token=").concat(token) : url;
|
|
3
3
|
}
|
|
4
|
-
export function generateTileAttributeUrls(tile) {
|
|
4
|
+
export function generateTileAttributeUrls(url, tile) {
|
|
5
5
|
const {
|
|
6
|
-
|
|
7
|
-
attributeData
|
|
6
|
+
attributeData = []
|
|
8
7
|
} = tile;
|
|
9
8
|
const attributeUrls = [];
|
|
10
9
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/lib/utils/url-utils.ts"],"names":["getUrlWithToken","url","token","generateTileAttributeUrls","tile","attributeData","attributeUrls","index","length","attributeUrl","href","replace","push","generateTilesetAttributeUrls","tileset","resource","attributeStorageInfo","fileName","key"],"mappings":"AAQA,OAAO,SAASA,eAAT,CAAyBC,GAAzB,
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/utils/url-utils.ts"],"names":["getUrlWithToken","url","token","generateTileAttributeUrls","tile","attributeData","attributeUrls","index","length","attributeUrl","href","replace","push","generateTilesetAttributeUrls","tileset","resource","attributeStorageInfo","fileName","key"],"mappings":"AAQA,OAAO,SAASA,eAAT,CAAyBC,GAAzB,EAAsCC,KAAoB,GAAG,IAA7D,EAA2E;AAChF,SAAOA,KAAK,aAAMD,GAAN,oBAAmBC,KAAnB,IAA6BD,GAAzC;AACD;AAOD,OAAO,SAASE,yBAAT,CAAmCF,GAAnC,EAAgDG,IAAhD,EAAqF;AAC1F,QAAM;AAACC,IAAAA,aAAa,GAAG;AAAjB,MAAuBD,IAA7B;AACA,QAAME,aAAuB,GAAG,EAAhC;;AAEA,OAAK,IAAIC,KAAK,GAAG,CAAjB,EAAoBA,KAAK,GAAGF,aAAa,CAACG,MAA1C,EAAkDD,KAAK,EAAvD,EAA2D;AACzD,UAAME,YAAY,GAAGJ,aAAa,CAACE,KAAD,CAAb,CAAqBG,IAArB,CAA0BC,OAA1B,CAAkC,IAAlC,EAAwC,EAAxC,CAArB;AACAL,IAAAA,aAAa,CAACM,IAAd,WAAsBX,GAAtB,cAA6BQ,YAA7B;AACD;;AAED,SAAOH,aAAP;AACD;AAQD,OAAO,SAASO,4BAAT,CAAsCC,OAAtC,EAA+CC,QAA/C,EAAyD;AAC9D,QAAMT,aAAuB,GAAG,EAAhC;AACA,QAAM;AAACU,IAAAA,oBAAD;AAAuBf,IAAAA;AAAvB,MAA8Ba,OAApC;;AAEA,OAAK,IAAIP,KAAK,GAAG,CAAjB,EAAoBA,KAAK,GAAGS,oBAAoB,CAACR,MAAjD,EAAyDD,KAAK,EAA9D,EAAkE;AAChE,UAAMU,QAAQ,GAAGD,oBAAoB,CAACT,KAAD,CAApB,CAA4BW,GAA7C;AACAZ,IAAAA,aAAa,CAACM,IAAd,WAAsBX,GAAtB,oBAAmCc,QAAnC,yBAA0DE,QAA1D;AACD;;AAED,SAAOX,aAAP;AACD","sourcesContent":["import {Node3DIndexDocument} from '../../types';\n\n/**\n * Generates url with token if it is exists.\n * @param url\n * @param token\n * @returns\n */\nexport function getUrlWithToken(url: string, token: string | null = null): string {\n return token ? `${url}?token=${token}` : url;\n}\n\n/**\n * Generates attribute urls for tile.\n * @param tile\n * @returns list of attribute urls\n */\nexport function generateTileAttributeUrls(url: string, tile: Node3DIndexDocument): string[] {\n const {attributeData = []} = tile;\n const attributeUrls: string[] = [];\n\n for (let index = 0; index < attributeData.length; index++) {\n const attributeUrl = attributeData[index].href.replace('./', '');\n attributeUrls.push(`${url}/${attributeUrl}`);\n }\n\n return attributeUrls;\n}\n\n/**\n * Generates attribute urls for tileset based on tileset and resource\n * @param {Object} tileset\n * @param {number} resource\n * @returns {Array}\n */\nexport function generateTilesetAttributeUrls(tileset, resource) {\n const attributeUrls: string[] = [];\n const {attributeStorageInfo, url} = tileset;\n\n for (let index = 0; index < attributeStorageInfo.length; index++) {\n const fileName = attributeStorageInfo[index].key;\n attributeUrls.push(`${url}/nodes/${resource}/attributes/${fileName}/0`);\n }\n\n return attributeUrls;\n}\n"],"file":"url-utils.js"}
|