Viktigt
Översättning är en gemenskapsinsats du kan gå med i. Den här sidan är för närvarande översatt till 100.00%.
10.1. Lektion: Karttjänster på webben
En Web Mapping Service (WMS) är en tjänst som finns på en fjärrserver. På samma sätt som en webbplats kan du komma åt den så länge du har en anslutning till servern. Med hjälp av QGIS kan du ladda en WMS direkt till din befintliga karta.
Från lektionen om plugins minns du säkert att det är möjligt att ladda en ny rasterbild från till exempel Google. Detta är dock en engångstransaktion: när du väl har laddat ner bilden ändras den inte. Ett WMS är annorlunda eftersom det är en live-tjänst som automatiskt uppdaterar sin vy om du panorerar eller zoomar på kartan.
Målet för den här lektionen: Att använda ett WMS och förstå dess begränsningar.
10.1.1. ★☆☆ Följ med: Ladda ett WMS-lager
För den här övningen kan du antingen använda den grundläggande karta som du skapade i början av kursen eller bara starta en ny karta och ladda in några befintliga lager i den. I det här exemplet använde vi en ny karta och laddade de ursprungliga skikten places, landuse och protected_areas och justerade symbologin:

Ladda in dessa lager i en ny karta eller använd din ursprungliga karta med endast dessa lager synliga.
Innan du börjar lägga till WMS-lagret, avaktivera projektionen ”on the fly” (:menyval:`Projekt --> Egenskaper... --> CRS`, markera No CRS (or unknown/non-Earth projection). Detta kan leda till att lagren inte längre överlappar varandra ordentligt, men oroa dig inte: vi åtgärdar det senare.
Lägg till WMS-lager genom att klicka på knappen
för att öppna dialogrutan Data Source Manager och aktivera fliken
WMS/WMTS.
Kom ihåg hur du anslöt till en SpatiaLite- eller GeoPackage-databas i början av kursen. Skikten landuse, buildings och roads lagras i en databas. För att använda dessa skikt måste du först ansluta till databasen. Användningen av ett WMS är likartad, med undantaget att skikten finns på en fjärrserver.
För att skapa en ny anslutning till ett WMS, klicka på knappen New.
Du behöver en WMS-adress för att fortsätta. Det finns flera gratis WMS-servrar tillgängliga på Internet. En av dessa är terrestris, som använder sig av OpenStreetMap dataset.
För att använda detta WMS, ställ in det i din nuvarande dialog, så här:
Värdet i fältet Name bör vara
terrestris
.Värdet i fältet URL bör vara
https://ows.terrestris.de/osm/service
.
Klicka på OK. Du bör se den nya WMS-servern listad:
Klicka på Connect. I listan nedan bör du nu se dessa nya poster laddade:
Det här är alla lager som finns på den här WMS-servern.
Klicka en gång på skiktet OSM-WMS. Detta kommer att visa standard Coordinate Reference System som används och antalet CRS som stöds av datasetet:
Eftersom vi inte använder
EPSG:4326 - WGS 84
för vår karta, låt oss hitta en som uppfyller våra behov.Klicka på knappen
Välj CRS. Du kommer att se en standard Coordinate Reference System Selector-dialogruta som visar alla CRS som data publiceras med.
Vi vill ha en projicerad CRS, så låt oss välja WGS 84 / Pseudo-Mercator med
EPSG:3857
. Du kan använda den översta widgetenFilter.
Klicka på OK. Det koordinatreferenssystem som är kopplat till posten har ändrats.
Klicka på Add för att ladda lagret i ditt projekt med hjälp av Layer name` (standard är OpenStreetMap WMS - by terrestris).
Stäng dialogrutan Data Source Manager om det inte görs automatiskt
I panelen Layers klickar du på den och drar den längst ned i listan.
Zooma ut för att få en global vy av lagren. Du kommer att märka att dina lager inte är korrekt placerade (nära väster om Afrika). Detta beror på att ”on the fly”-projektion är inaktiverad.
Låt oss aktivera omprojiceringen igen, men med samma projektion som skiktet OpenStreetMap WMS, som är WGS 84 / Pseudo Mercator.
Öppna
flikAvmarkera Ingen CRS (eller okänd/ej jordprojektion)
Välj WGS 84 / Pseudo Mercator från listan.
Klicka på OK.
Högerklicka nu på ett av dina egna lager i panelen Layers och klicka på Zoom to layer(s). Du bör se området Swellendam:
Notera hur WMS-skiktets gator och våra egna gator överlappar varandra. Det är ett gott tecken!
WMS:ets karaktär och begränsningar
Vid det här laget har du kanske märkt att det här WMS-skiktet faktiskt innehåller många funktioner. Det har gator, floder, naturreservat och så vidare. Dessutom, även om det ser ut som om det består av vektorer, verkar det vara ett raster, men du kan inte ändra dess symbologi. Varför är det så?
Så här fungerar ett WMS: det är en karta, som liknar en vanlig karta på papper, som du får som en bild. Det som vanligtvis händer är att du har vektorlager som QGIS renderar som en karta. Men om du använder ett WMS finns dessa vektorlager på WMS-servern, som renderar dem som en karta och skickar kartan till dig som en bild. QGIS kan visa den här bilden, men kan inte ändra dess symbologi, eftersom allt detta hanteras på servern.
Detta har flera fördelar, eftersom du inte behöver oroa dig för symbologin. Den är redan utarbetad och bör vara trevlig att titta på i alla kompetent utformade WMS.
Å andra sidan kan du inte ändra symbologin om du inte gillar den, och om saker ändras på WMS-servern kommer de också att ändras på din karta. Det är därför du ibland vill använda en Web Feature Service (WFS) istället, som ger dig vektorlager separat och inte som en del av en karta i WMS-stil.
Detta kommer dock att tas upp i nästa lektion. Låt oss först lägga till ett annat WMS-lager.
10.1.2. ★☆☆ Prova själv:
Lägg till
eAtlas
WMS-server på denna URL:https://maps.eatlas.org.au/maps/wms
Ladda ett World: Hillshading-lager till kartan.
Du kanske vill ställa in dess Encoding till JPEG och dess Tile size-alternativ till
200
av200
, så att den laddas snabbare.Din karta bör se ut så här (du kan behöva ändra ordningen på lagren och lägga till lite transparens):
Svar
Gå till Data Source Manager, fliken WMS / WMTS och skapa en ny anslutningspost
Använd textrutan
för att filtrera listan med lager och välj motsvarande lager
Kom ihåg att kontrollera/vända dess CRS till EPSG:3857 - WGS 84 / Pseudo Mercator som resten av kartan.
När lagret har laddats kan du ändra dess värde Opacity (under fliken Transparency properties)
10.1.3. ★★★★ Prova själv:
En del av svårigheten med att använda WMS är att hitta en bra (gratis) server.
Hitta ett nytt WMS på directory.spatineo.com (eller någon annanstans på nätet). Det får inte ha några tillhörande avgifter eller begränsningar och måste täcka studieområdet Swellendam.
Kom ihåg att det enda du behöver för att kunna använda ett WMS är dess URL (och helst någon form av beskrivning).
Svar
Spatineo är en av många platser där du kan söka efter OGC-data. Skriv in ett namn, nyckelord eller en plats av intresse i textfältet för att se om du får några fungerande resultat. För den här lektionen kanske du vill filtrera resultaten så att de bara omfattar WMS.
Du kanske märker att många WMS-servrar inte alltid är tillgängliga. Ibland är detta tillfälligt, ibland är det permanent. Ett exempel på en WMS-server som fungerade i skrivande stund är MapServer Demonstration Server WMS på https://demo.mapserver.org/cgi-bin/wms?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetCapabilities. Den kräver inga avgifter eller har åtkomstbegränsningar och den är global. Därför uppfyller den kraven. Tänk dock på att detta bara är ett exempel. Det finns många andra WMS-servrar att välja mellan.
10.1.4. ★★★★ Prova själv:
Lägg till skiktet bluemarble från MapServer Demonstration Server. Är det en lämplig dataset för vårt studieområde?
Svar
Dölj alla andra WMS-lager för att förhindra att de renderas i onödan i bakgrunden.
Använd samma metod som tidigare för att lägga till den nya servern och det lämpliga lagret som värd på den servern:
Om du zoomar in i området Swellendam ser du att den här datasetet har låg upplösning:
Därför är det bättre att inte använda dessa data för den aktuella kartan. Blue Marble-data är mer lämpliga på global eller nationell skala
10.1.5. Sammanfattningsvis
Med hjälp av ett WMS kan du lägga till inaktiva kartor som bakgrund till dina befintliga kartdata.
10.1.6. Ytterligare läsning
10.1.7. Vad händer härnäst?
Nu när du har lagt till en inaktiv karta som bakgrund kommer du att bli glad över att veta att det också är möjligt att lägga till funktioner (som de andra vektorlagren du lade till tidigare). Det går att lägga till funktioner från fjärrservrar med hjälp av en Web Feature Service (WFS). Det är ämnet för nästa lektion.