From 61f3306a2d6fadb838c87fb040d7872c5a3d3f50 Mon Sep 17 00:00:00 2001 From: Andrew Calcutt Date: Sat, 7 Oct 2023 13:49:21 -0400 Subject: [PATCH] fix: format, bounds, center Signed-off-by: Andrew Calcutt --- src/utils.js | 36 ++++++++++++++++++++++++++++++++---- 1 file changed, 32 insertions(+), 4 deletions(-) diff --git a/src/utils.js b/src/utils.js index 6654087..7a140a7 100644 --- a/src/utils.js +++ b/src/utils.js @@ -253,11 +253,39 @@ export const GetPMtilesInfo = async (pmtilesFile) => { const dec = new TextDecoder("utf-8"); var metadata = JSON.parse(dec.decode(decompressed)); - const bounds = [header.minLat, header.minLon, header.maxLat, header.maxLon] - const center = [header.centerLon, header.centerLat, header.centerLat] - metadata['bounds'] = header.bounds; - metadata['center'] = header.center; + var tileType + switch (header.tileType) { + case 0: + tileType = "Unknown" + break; + case 1: + tileType = "pbf" + break; + case 2: + tileType = "png" + break; + case 3: + tileType = "jpg" + break; + case 4: + tileType = "webp" + break; + case 5: + tileType = "avif" + break; + } + metadata['format'] = tileType; + + if(header.minLat != 0 && header.minLon != 0 && header.maxLat != 0 && header.maxLon != 0) { + const bounds = [header.minLat, header.minLon, header.maxLat, header.maxLon] + metadata['bounds'] = bounds; + } + if(header.centerLon != 0 && header.centerLat != 0) { + const center = [header.centerLon, header.centerLat, header.centerLat] + metadata['center'] = center; + } metadata['minzoom'] = header.minZoom; metadata['maxzoom'] = header.maxZoom; + return { header: header, metadata: metadata }; } \ No newline at end of file