aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--main.js85
1 files changed, 85 insertions, 0 deletions
diff --git a/main.js b/main.js
index 16171d7..c9e270e 100644
--- a/main.js
+++ b/main.js
@@ -3252,6 +3252,83 @@ const layers = {
});
}),
},
+ 'nv.pagaende_naturreservatsbildning': {
+ popoverTitle: 'Pågående naturreservatsbildning',
+ popover: [
+ ['Objektnamn', 'NAMN'],
+ ['Senast justerat', 'GRANSJUST'], /* XXX unclear what "GRANSJUST" means, just a guess */
+ ['Areal', 'geom_area', { fn: 'area' }],
+ ],
+ style: [8, 16, 32, 32, 64, 64, 128, 128, 128, 256, 256, 256].map(function(width, z) {
+ const patternCanvas = document.createElement('canvas');
+ const patternContext = patternCanvas.getContext('2d');
+ patternCanvas.width = width;
+ patternCanvas.height = patternCanvas.width;
+ patternContext.fillStyle = 'transparent';
+ patternContext.setLineDash([width/4, width/4]);
+ patternContext.strokeStyle = 'rgba(7, 181, 7, 1)';
+ patternContext.lineWidth = z < 4 ? .5 : z <= 5 ? 1 : 2;
+ patternContext.beginPath();
+ patternContext.moveTo(width/4, 0);
+ patternContext.lineTo(width/4, patternCanvas.height);
+ patternContext.stroke();
+ patternContext.beginPath();
+ patternContext.lineDashOffset = width/4;
+ patternContext.moveTo(3*width/4, 0);
+ patternContext.lineTo(3*width/4, patternCanvas.height);
+ patternContext.stroke();
+
+ const canvas = document.createElement('canvas');
+ const context = canvas.getContext('2d');
+ return new Style({
+ zIndex: 10,
+ fill: new Fill({
+ color: context.createPattern(patternCanvas, 'repeat'),
+ }),
+ stroke: width === 0 ? undefined : new Stroke({
+ width: z < 2 ? 1 : z < 4 ? 2 : z <= 5 ? 3 : 4,
+ color: [7, 181, 7, 1],
+ lineDash: [width/8, width/4],
+ }),
+ });
+ }),
+ },
+ 'nv.snus': {
+ popoverTitle: 'Skyddsvärd statlig skog',
+ popover: [
+ ['Objektnamn', 'NAMN'],
+ ['År', 'AR'],
+ ['Naturgeografisk region', 'NATURGEOGR', { classes: ['feature-objid'] }],
+ ['Objektskategori', 'OBJEKTKATE', { classes: ['feature-objid'] }],
+ ['Markägare', 'MARKAGARE'],
+ ['Areal värdekärna', 'VARDEKARNA', { unit: 'ha' }],
+ ['Areal utvecklingsmark', 'UTV_MARK', { unit: 'ha' }],
+ ['Totalareal', 'TOTAL_AREA', { unit: 'ha' }],
+ ['Areal land', 'LAND', { unit: 'ha' }],
+ ['Areal vatten', 'VATTEN', { unit: 'ha' }],
+ ['Areal produktiv skogsmark', 'PROD_SKOG', { unit: 'ha' }],
+ ['Areal produktiv skogsmark ovanför fjällnära gräns', 'SKOG_O_FJG', { unit: 'ha' }],
+ ['Areal produktiv skogsmark nedanför fjällnära gräns', 'SKOG_N_FJG', { unit: 'ha' }],
+ ['Areal skyddszon', 'SKYDDSZON', { unit: 'ha' }],
+ ['Areal arronderingsmark', 'ARRO_MARK', { unit: 'ha' }],
+ ['Kriterier för urval', 'KRITERIER'],
+ ['Beskrivning av området', 'BESKRIVN'],
+ ['Länsstyrelsens bedömning', 'LST_BEDOMN'],
+ ['Källor', 'KALLOR'],
+ ],
+ style: [.5, 1, 1.5, 1.5, 2, 2, 2.5, 2.5, 3, 3.5, 4, 5].map(function(width, z) {
+ return new Style({
+ zIndex: 4,
+ fill: new Fill({
+ color: [168,168,0,.2],
+ }),
+ stroke: width === 0 ? undefined : new Stroke({
+ width: width,
+ color: [168,77,0,.75],
+ }),
+ });
+ }),
+ },
'ri.naturvard': {
popoverTitle: 'Riksintresse naturvård',
@@ -4134,6 +4211,14 @@ const layerHierarchy = [
layer: 'nv.sumpskog',
},
{
+ text: 'Pågående naturreservatsbildning',
+ layer: 'nv.pagaende_naturreservatsbildning',
+ },
+ {
+ text: 'Skyddsvärda statliga skogar',
+ layer: 'nv.snus',
+ },
+ {
text: 'Sannolikt och potentiell kontinuitetsskog',
children: [
{