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:

../../../_images/new_map.png
  1. Ladda in dessa lager i en ny karta eller använd din ursprungliga karta med endast dessa lager synliga.

  2. Innan du börjar lägga till WMS-lagret, avaktivera projektionen ”on the fly” (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.

  3. Lägg till WMS-lager genom att klicka på knappen dataSourceManager för att öppna dialogrutan Data Source Manager och aktivera fliken addWmsLayer WMS/WMTS.

    ../../../_images/datasourcemanager_wms.png

    Remember how you connected to a SpatiaLite or GeoPackage database at the beginning of the course. The landuse, buildings, and roads layers 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.

  4. 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.

  5. För att använda detta WMS, ställ in det i din nuvarande dialog, så här:

    ../../../_images/new_wms_connection.png
    • 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.

  6. Klicka på OK. Du bör se den nya WMS-servern listad:

    ../../../_images/new_connection_listed.png
  7. Klicka på Connect. I listan nedan bör du nu se dessa nya poster laddade:

    ../../../_images/new_wms_entries.png

    Det här är alla lager som finns på den här WMS-servern.

  8. Click once on the OSM-WMS layer. This will display the default Coordinate Reference System in use and the number of CRSes supported by the dataset:

    ../../../_images/osm_wms_selected.png

    Eftersom vi inte använder EPSG:4326 - WGS 84 för vår karta, låt oss hitta en som uppfyller våra behov.

    1. Klicka på knappen setProjectionVälj CRS. Du kommer att se en standard Coordinate Reference System Selector-dialogruta som visar alla CRS som data publiceras med.

    2. 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 search Filter.

      ../../../_images/pseudo_mercator_selected.png
      1. Klicka på OK. Det koordinatreferenssystem som är kopplat till posten har ändrats.

  9. Click Add to load the layer in your project using Layer name (default is OpenStreetMap WMS - by terrestris).

  10. Stäng dialogrutan Data Source Manager om det inte görs automatiskt

  11. I panelen Layers klickar du på den och drar den längst ned i listan.

  12. 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.

    ../../../_images/reprojection_off.png
  13. Let’s enable the reprojection again, but using the same projection as the OpenStreetMap WMS layer, which is WGS 84 / Pseudo Mercator.

    1. Öppna Projekt ► Egenskaper… ► CRS flik

    2. Avmarkera Ingen CRS (eller okänd/ej jordprojektion)

    3. Välj WGS 84 / Pseudo Mercator från listan.

      ../../../_images/enable_projection.png
    4. Klicka på OK.

  14. 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:

    ../../../_images/wms_result.png

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:

  1. Lägg till eAtlas WMS-server på denna URL: https://maps.eatlas.org.au/maps/wms

  2. Load a World: Hillshading layer into the map.

  3. Du kanske vill ställa in dess Encoding till JPEG och dess Tile size-alternativ till 200 av 200, så att den laddas snabbare.

  4. Din karta bör se ut så här (du kan behöva ändra ordningen på lagren och lägga till lite transparens):

    ../../../_images/world_hillshading_result.png

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).

10.1.4. ★★★★ Prova själv:

  • Add the bluemarble layer from the MapServer Demonstration Server. Is that a suitable dataset for our study area?

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.