@loaders.gl/3d-tiles
Version:
3D Tiles, an open standard for streaming massive heterogeneous 3D geospatial datasets.
41 lines • 1.23 kB
JavaScript
// loaders.gl
// SPDX-License-Identifier: MIT
// Copyright vis.gl contributors
import { Tiles3DLoader } from "./tiles-3d-loader.js";
import { getIonTilesetMetadata } from "./lib/ion/ion.js";
async function preload(url, options = {}) {
options = options['cesium-ion'] || {};
// @ts-ignore
const { accessToken } = options;
// @ts-ignore
let assetId = options.assetId;
if (!Number.isFinite(assetId)) {
const matched = url.match(/\/([0-9]+)\/tileset.json/);
assetId = matched && matched[1];
}
return getIonTilesetMetadata(accessToken, assetId);
}
/**
* Loader for 3D tiles from Cesium ION
*/
export const CesiumIonLoader = {
...Tiles3DLoader,
id: 'cesium-ion',
name: 'Cesium Ion',
// @ts-ignore
preload,
parse: async (data, options, context) => {
options = { ...options };
options['3d-tiles'] = options['cesium-ion'];
// @ts-ignore
options.loader = CesiumIonLoader;
return Tiles3DLoader.parse(data, options, context); // , loader);
},
options: {
'cesium-ion': {
...Tiles3DLoader.options['3d-tiles'],
accessToken: null
}
}
};
//# sourceMappingURL=cesium-ion-loader.js.map