Viktigt
Översättning är en gemenskapsinsats du kan gå med i. Den här sidan är för närvarande översatt till 90.79%.
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 tillägg 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
For this exercise, you can either use the basic map you made at the start of
the course, or just start a new map and load some existing layers into it. For
this example, we used a new map and loaded the original places,
landuse and protected_areas layers and adjusted the
symbology:
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” (, 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.
Remember how you connected to a SpatiaLite or GeoPackage database at the beginning of the course. The
landuse,buildings, androadslayers are stored in a database. To use those layers, you first needed to connect to the database. Using a WMS is similar, with the exception that the layers are on a remote server.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.
Click once on the
OSM-WMSlayer. This will display the default Coordinate Reference System in use and the number of CRSes supported by the dataset:
Eftersom vi inte använder
EPSG:4326 - WGS 84fö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 widgeten
Filter.
Klicka på OK. Det koordinatreferenssystem som är kopplat till posten har ändrats.
Click Add to load the layer in your project using Layer name (default is
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.
Let’s enable the reprojection again, but using the same projection as the
OpenStreetMap WMSlayer, which is WGS 84 / Pseudo Mercator.Öppna flik
Avmarkera 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-lagrets 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-lagret 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
eAtlasWMS-server på denna URL:https://maps.eatlas.org.au/maps/wmsLoad a
World: Hillshadinglayer into the map.Du kanske vill ställa in dess Encoding till JPEG och dess Tile size-alternativ till
200av200, 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 lagerKom 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:
Add the
bluemarblelayer from the MapServer Demonstration Server. Is that a suitable dataset for our study area?
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.
