cleanup terrain and elevation template flags

This commit is contained in:
Miko 2025-01-18 00:11:08 +01:00
parent f361bdb5b1
commit 2bba35ff41
3 changed files with 19 additions and 17 deletions

View file

@ -9,9 +9,9 @@
<link rel="stylesheet" type="text/css" href="{{public_url}}maplibre-gl-inspect.css{{&key_query}}" />
<script src="{{public_url}}maplibre-gl.js{{&key_query}}"></script>
<script src="{{public_url}}maplibre-gl-inspect.js{{&key_query}}"></script>
{{^isLight}}
{{^is_light}}
<script src="{{public_url}}elevation-control.js{{&key_query}}"></script>
{{/isLight}}
{{/is_light}}
<style>
body {background:#fff;color:#333;font-family:Arial, sans-serif;}
{{^is_terrain}}
@ -23,9 +23,9 @@
h1 {position:absolute;top:5px;right:0;width:240px;margin:0;line-height:20px;font-size:20px;}
#layerList {position:absolute;top:35px;right:0;bottom:0;width:240px;overflow:auto;}
#layerList div div {width:15px;height:15px;display:inline-block;}
{{^isLight}}
{{^is_light}}
.maplibre-ctrl-elevation { padding-left: 5px; padding-right: 5px; }
{{/isLight}}
{{/is_light}}
</style>
{{/use_maplibre}}
{{^use_maplibre}}
@ -139,13 +139,13 @@
})
);
{{^isLight}}
{{^is_light}}
map.addControl(
new ElevationInfoControl({
url: "{{public_url}}data/{{id}}/elevation/{z}/{x}/{y}"
})
);
{{/isLight}}
{{/is_light}}
{{/is_terrain}}
{{^is_terrain}}

View file

@ -124,9 +124,9 @@
{{/is_vector}}
{{^is_vector}}
<a class="btn" href="{{public_url}}data/{{@key}}/{{&../key_query}}{{viewer_hash}}">View</a>
{{#elevation_link}}
{{#is_terrain}}
<a class="btn" href="{{public_url}}data/preview/{{@key}}/{{&../key_query}}{{viewer_hash}}">Preview Terrain</a>
{{/elevation_link}}
{{/is_terrain}}
{{/is_vector}}
</div>
</div>

View file

@ -571,16 +571,18 @@ async function start(opts) {
data.is_vector = tileJSON.format === 'pbf';
if (!data.is_vector) {
if (
(tileJSON.encoding === 'terrarium' ||
tileJSON.encoding === 'mapbox') &&
!isLight
tileJSON.encoding === 'terrarium' ||
tileJSON.encoding === 'mapbox'
) {
if (!isLight) {
data.elevation_link = getTileUrls(
req,
tileJSON.tiles,
`data/${id}/elevation`,
)[0];
}
data.is_terrain = true;
}
if (center) {
const centerPx = mercator.px([center[0], center[1]], center[2]);
data.thumbnail = `${Math.floor(center[2])}/${Math.floor(
@ -698,7 +700,7 @@ async function start(opts) {
is_terrain: is_terrain,
is_terrainrgb: data.tileJSON.encoding === 'mapbox',
terrain_encoding: data.tileJSON.encoding,
isLight: isLight,
is_light: isLight,
};
});