fix hillshading visibility (#942)
Co-authored-by: Flomp <Flomp@users.noreply.github.com>
This commit is contained in:
@@ -115,6 +115,7 @@
|
||||
let hoveringTrail: boolean = false;
|
||||
|
||||
let mapLoaded: boolean = false;
|
||||
let terrainEnabled: boolean | null = null;
|
||||
|
||||
const trailColors = [
|
||||
"#3549bb", // blue
|
||||
@@ -289,6 +290,25 @@
|
||||
}
|
||||
}
|
||||
|
||||
function syncHillshadingVisibility() {
|
||||
if (!map?.getLayer("hillshading")) {
|
||||
terrainEnabled = null;
|
||||
return;
|
||||
}
|
||||
|
||||
const isTerrainEnabled = Boolean(map.getTerrain());
|
||||
if (isTerrainEnabled === terrainEnabled) {
|
||||
return;
|
||||
}
|
||||
|
||||
map.setLayoutProperty(
|
||||
"hillshading",
|
||||
"visibility",
|
||||
isTerrainEnabled ? "visible" : "none",
|
||||
);
|
||||
terrainEnabled = isTerrainEnabled;
|
||||
}
|
||||
|
||||
export function refreshElevationProfile() {
|
||||
if (activeTrail !== null && data[activeTrail]) {
|
||||
epc?.setData(data[activeTrail]!, waypoints);
|
||||
@@ -898,9 +918,14 @@
|
||||
page.data.settings?.terrain?.hillshading,
|
||||
),
|
||||
);
|
||||
syncHillshadingVisibility();
|
||||
}
|
||||
});
|
||||
|
||||
map.on("render", () => {
|
||||
syncHillshadingVisibility();
|
||||
});
|
||||
|
||||
map.on("moveend", (e) => {
|
||||
onmoveend?.(e.target);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user