Belangrijk

Vertalen is een inspanning van de gemeenschap waaraan u deel kunt nemen. Deze pagina is momenteel voor 100.00% vertaald.

10.2. Les: Web Feature Services

Een Web Feature Service (WFS) verschaft zijn gebruikers GIS-gegevens in indelingen die direct in QGIS kunnen worden geladen. Anders dan een WMS, die u alleen een kaart verschaft die u niet kunt bewerken, geeft een WFS u toegang tot de objecten zelf.

Het doel voor deze les: Een WFS gebruiken en begrijpen hoe die verschilt van een WMS.

10.2.1. ★☆☆ Volgen: Een WFS-laag laden

  1. Begin een nieuwe kaart. Deze is alleen om te demonstreren en wordt niet opgeslagen.

  2. Klik op de knop dataSourceManager Databronnen beheren openen.

  3. Schakel naar de tab wfs WFS / OGC API - objecten.

  4. Klik op de knop Nieuw.

  5. Voer, in het dialoogvenster dat verschijnt, de Naam in als nsidc.org en de URL als https://nsidc.org/cgi-bin/atlas_south?version=1.1.0`.

    ../../../_images/new_wfs_connection.png
  6. Klik op OK en de nieuwe verbinding zal verschijnen in uw Server-verbindingen.

  7. Klik op de knop Verbinden. Een lijst met beschikbare lagen zal verschijnen:

    ../../../_images/wfs_connection_layers.png
  8. Deselecteer de optie Alleen objecten bevragen die het huidige zichtbare bereik overlappen onder de lijst met lagen, omdat uw huidige kaartvenster niet ons interessegebied zou kunnen bedekken: Antarctica.

  9. Zoek naar de laag antarctica_country_border. U kunt het vak Filter bovenin gebruiken.

  10. Klik op de laag om die te selecteren:

  11. Zoek en selecteer ook de laag south_poles_wfs. U moet misschien Ctrl ingedrukt houden.

    ../../../_images/south_poles_wfs.png
  12. Klik op Toevoegen.

    Het kan even duren voordat de lagen zijn geladen. Als zij zijn geladen zullen zij verschijnen op de kaart, de omtrek van Antarctica en enkele punten daarop weergevend.

    ../../../_images/antarctica_border.png

    Waarin verschilt dit van een WMS-laag?

  13. Selecteer een willekeurige laag en u zult merken dat de gereedschappen voor het selecteren van objecten en van de attributentabel zijn ingeschakeld. Dit zijn vectorlagen.

  14. Selecteer de laag south_poles_wfs en open de attributentabel ervan. U zult dit zien:

    ../../../_images/poles_attribute_table.png

    Omdat de punten attributen hebben, kunnen we ze labelen, als ook hun symbologie wijzigen. Hier is een voorbeeld:

    ../../../_images/labelling_example.png

Verschillen met WMS-lagen

Een Web Feature Service geeft de laag zelf terug, niet slechts een daaruit gerenderde kaart. Dit geeft u directe toegang tot de gegevens, wat betekent dat u hun symbologie kunt wijzigen en analyse-functies erop kunt uitvoeren. Dat gaat echter ten koste van heel veel gegevens die moeten worden verzonden. Dit zal speciaal duidelijk zijn als de lagen die u laadt gecompliceerde vormen hebben, enorm veel attributen, of veel objecten; of zelfs als alleen maar veel lagen laadt. WFS-lagen hebben hierom sowieso veel tijd nodig om te laden.

10.2.2. ★★☆ Volgen: Een WFS-laag bevragen

Hoewel het mogelijk is een query uit te voeren op een WFS-laag nadat die is geladen, is het vaak efficiënter om de query uit te voeren voordat hij is geladen. Op die manier vraagt u alleen de objecten op die u wilt, wat betekent dat u veel minder bandbreedte gebruikt.

Op de server van WFS die we momenteel gebruiken is bijvoorbeeld een laag genaamd countries (excluding Antarctica). Laten we zeggen dat we willen weten waar Zuid-Afrika ligt, relatief ten opzichte van de laag south_poles_wfs (en misschien ook de laag antarctica_country_border) die al is geladen.

Er zijn twee manieren om dit te doen. U kunt de gehele laag countries … laden, en dan zoals gewoonlijk een query bouwen als hij is geladen. Echter, het verzenden van de gegevens voor alle landen in de wereld en dan alleen de gegevens voor Zuid-Afrika gebruiken lijkt een verspilling van bandbreedte. Afhankelijk van uw verbinding kan het enkele minuten duren om deze gegevensset te laden.

Het alternatief is om de query als een filter te bouwen vóór zelfs de laag te laden vanaf de server.

  1. Schakel naar de tab WFS / OGC API Objecten in het dialoogvenster Databronnen beheren

  2. Verbind met de server die we eerder hebben gebruikt en u zou de lijst met beschikbare lagen moeten zien.

  3. Zoek en dubbelklik op de laag countries (excluding Antarctica). De laagnaam is country_borders_excluding_antarctica. U kunt ook de laag selecteren en drukken op de knop Query maken aan de onderzijde van het dialoogvenster:

    ../../../_images/select_country_filter.png
  4. Typ, in het dialoogvenster dat verschijnt, de volgende query SELECT * FROM country_borders_excluding_antarctica WHERE "Countryeng" = 'South Africa' in het vak SQL-argument.

    ../../../_images/country_sa_builder.png
  5. Druk op OK.

  6. De gebruikte expressie zal verschijnen als de waarde Sql van de doellaag:

    ../../../_images/country_filter_enabled.png
  7. Klik op Toevoegen met de laag geselecteerd zoals hierboven. Alleen het land met de waarde Countryeng die South Africa is zal worden geladen vanuit die laag:

    ../../../_images/antarctica_sa.png

    Hebt u het pictogram indicatorFilter opgemerkt naast de laag country_borders_excluding_antarctica ? Het geeft aan dat de geladen laag is gefilterd en niet al zijn objecten weergeeft in het project.

  8. U hoeft het niet te doen, maar als u beide methoden heeft gebruikt, zult u merken dat dit een stuk sneller is dan het laden van alle landen vóórdat u ze gefilterd heeft!

Opmerkingen over de beschikbaarheid van WFS

Het is zeldzaam een host voor WFS te vinden die de objecten host die u nodig heeft, als u hele specifieke behoeften heeft. De reden waarom Web Feature Services relatief zeldzaam zijn is vanwege de grote hoeveelheden gegevens die moeten worden verzonden om een geheel object te beschrijven. Het is daarom niet erg kosteneffectief om een WFS te hosten in plaats van een WMS, dat alleen afbeeldingen verzendt.

Het meest voorkomende type WFS dat u daarom zult tegenkomen zal daarom waarschijnlijk op een lokaal netwerk staan of zelfs op uw eigen computer, in plaats van op het internet.

10.2.3. Conclusie

WFS-lagen hebben de voorkeur boven WMS-lagen als u directe toegang nodig heeft tot de attributen en geometrieën van de lagen. Echter de hoeveelheid gegevens in aanmerking nemende die moet worden gedownload (wat leidt tot problemen met de snelheid en ook een gebrek aan eenvoudig beschikbare publieke servers voor WFS) is het niet altijd mogelijk een WFS te gebruiken in plaats van een WMS.

10.2.4. Wat volgt?

Vervolgens zullen we u laten zien hoe u QGIS Server kunt gebruiken om services van OGC te verschaffen.