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

View file

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

View file

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