OpenLayers voorbeelden: kaartlaag in grijstinten

Goedenavond,

Vandaag heb ik mijn verzameling OpenLayers voorbeelden uitgebreid met een kaartlaag in grijstinten.

Want soms wil je dat: een achtergrondkaart zonder kleur om je eigen (thematische) gegevens op te projecteren. (Ja, ik weet dat er een BRT Achtergrondkaart “Grijs” beschikbaar is via PDOK, maar persoonlijk vind ik dat deze kaartlaag wel erg veel kleurtjes bevat: groen, geel, blauw, oranje… Teveel kleur - naar mijn bescheiden mening - om de naam “Grijs” te rechtvaardigen.)

Maar goed, ik weet nu hoe ik zelf een kaartlaag grijs moet maken:

  1. ‘Kopieer’ een bestaande kaartlaag, door een lege kaartlaag aan te maken en deze - met .getProperties() - te vullen met de eigenschappen van een bestaande laag. Alleen even de titel aanpassen…

Dus, stap 1:

// add a grayscale layer
let openTopoAchtergrondkaartGrijsLayer = new TileLayer(openTopoAchtergrondkaartLayer.getProperties());

openTopoAchtergrondkaartGrijsLayer.set('title', 'OpenTopo Achtergrond (grijs)');
  1. Pas een functie toe die - 'postrender' - alle pixels in de kaart naar een grijstint vertaalt

Dus stap 2:

openTopoAchtergrondkaartGrijsLayer.on('postrender', function(event) {
  convertToGrayScale(event.context);
});

De volledige functie convertToGrayScale is hier te vinden, in mijn GitHub repository.

(Ik heb de functie in een aparte module ondergebracht, dus ook met het gebruik van npm heb ik in deze oefening nieuwe kennis en ervaring opgedaan. Zo ga ik elke dag een beetje minder dom slapen… :slight_smile:)

Het resultaat is hier te bekijken:
https://twiav.nl/nl/openlayers/ol-retain-mapstate-nl-basemaps/#map=11/162643/460928/3

En de broncode staat op GitHub (doe er mee wat je wil :slight_smile:):

Wat vinden jullie hiervan? Verbetersuggesties? Testresultaten? Laat maar horen.

Gelukkig Nieuwjaar,

Egge-Jan

2 likes

Je zou Luctfoto kunnen voorzien van de ontbrekende ‘h’ :slight_smile:

Ziet er wel goed uit, dat grijs. Met in het achterhoofd dat je dit als ondergrond gebruikt voor je eigen data. Zo zonder aanvullende lagen is het moeilijk te beoordelen, gevoelsmatig wat te donker. Maar als proof of concept is het wel geslaagd en de performance van het converteren lijkt ook prima.

Domme typo, en daar kijk ik dus al dagen naar zonder het te zien… → Aangepast

Dank voor de feedback. Ja, misschien niet zo zeer te donker als wel veel te druk, te veel detailinformatie. De OpenTopo Achtergrondkaart is natuurlijk al rustiger dan de OpenTopo zelf, maar er staat toch nog allerlei informatie op die je niet echt nodig hebt op een achtergrondkaart. Maar dat kun je niet oplossen door een eenvoudige omzetting naar grijstinten.

Wat ik zelf wel een mooie, rustige achtergrondkaart vind, is deze Lichtgrijze Canvas RD van Esri Nederland: https://www.arcgis.com/home/item.html?id=9ff6521e85d24df1aa9cd4aebfef748b

Zou PDOK niet ook zoiets aan moeten bieden?

Groet,

Egge-Jan

Dat is idd een mooie kaart.

Je kunt het vragen maar zo zal iedereen wel iets wensen. Je kunt kijken of je het converteren naar grijswaarden nog kunt aanpassen (of een andere, minder gevulde kaart gebruiken). Of zelf een kaart genereren in QGIS en als tileset exporteren.