Skip to content

Commit f203cf9

Browse files
Add min zoom
1 parent 696dfc8 commit f203cf9

File tree

4 files changed

+6
-2
lines changed

4 files changed

+6
-2
lines changed

src/TopoMap.svelte

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@
4949
title={definition.name}
5050
prerender={definition.prerender}
5151
type={"overlay"}
52+
minZoom={definition.minZoom}
5253
visible={definition.defaultVisible}
5354
source={cachingSource(definition)} />
5455
{/each}

src/components/MapFeatures.svelte

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@
109109
<label>
110110
<input
111111
type="checkbox"
112-
checked={$fragment.featureLayers.includes(layer.get('id'))}
112+
checked={$fragment.featureLayers.includes(layer.get('id')) || layer.getVisible()}
113113
on:change={(e) =>
114114
setLayerVisible(layer, e.target['checked'])} />
115115
{layer.get('title')}

src/layers/layerDefinitions.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ export interface BaseLayerDefinition {
77
name: string;
88
description: string;
99
defaultVisible?: boolean;
10-
defaultCache?: boolean;
10+
minZoom?: number;
1111
}
1212

1313
export type TileLayerDefinition = BaseLayerDefinition & {
@@ -62,6 +62,7 @@ export const layerDefinitions: TileLayerDefinition[] = [
6262
type: 'overlay',
6363
defaultVisible: true,
6464
prerender: e => e.context.canvas.getContext('2d').globalCompositeOperation = 'multiply',
65+
minZoom: 10,
6566
url: 'https://tiles-cdn.koordinates.com/services;key=d0772bed2204423f87157f7fb1223389/tiles/v4/layer=50765/EPSG:3857/{z}/{x}/{y}.png'
6667
}
6768
]

src/ol/TileLayer.svelte

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,15 @@
1111
export let visible: boolean = true
1212
export let opacity = 1
1313
export let prerender: (e: RenderEvent) => void = undefined
14+
export let minZoom: number | undefined = undefined
1415
1516
const { addLayer, removeLayer } = getOlContext()
1617
const layer = new TileLayer({
1718
['id' as any]: title,
1819
['title' as any]: title,
1920
['type' as any]: type,
2021
['visible' as any]: visible,
22+
minZoom,
2123
opacity,
2224
source: typeof source === 'string' ? new XYZ({ url: source }) : source,
2325
})

0 commit comments

Comments
 (0)