Important
Traducerea este un efort al comunității, la care puteți să vă alăturați. În prezent, această pagină este tradusă 58.33%.
10.2. Lesson: Web Feature Services
Un Serviciu Web Feature (WFS) pune la dispoziție utilizatorilor date GIS în formate care pot fi încărcate direct în QGIS. Spre deosebire de un WMS, care oferă doar o hartă pe care nu o puteți edita, un WFS oferă acces direct la entități.
Scopul acestei lecții: De a folosi un WFS și de a-i înțelege cum diferă de un WMS.
10.2.1. ★☆☆ Follow Along: Loading a WFS Layer
Începeți o nouă hartă. Aceasta are scop demonstrativ și nu va fi salvată.
Clic pe butonul New.
În caseta de dialog care apare, introduceți
nsidc.org
la Nume șihttps://nsidc.org/cgi-bin/atlas_south?version=1.1.0
la URL.Clic OK, apoi noua conexiune va apărea în Conexiunile serverului.
Clic pe Connect. Va apărea o listă a straturilor disponibile:
Uncheck the Only request features overlapping the view extent option below the layers list, since your current map canvas may not cover our area of interest: Antarctica.
Find the layer antarctica_country_border. You can use the Filter box at the top.
Faceți clic pe strat pentru a-l selecta.
Find and select also the layer south_poles_wfs. You might need to hold Ctrl.
Clic pe Add.
It may take a while to load the layers. When they are loaded, they will appear in the map, showing the outlines of Antarctica and a few points over.
How is this different from having a WMS layer?
Select any of the layers and you’ll notice that feature selection and attribute table tools are enabled. These are vector layers.
Select the south_poles_wfs layer and open its attribute table. You should see this:
De vreme ce punctele au atribute, putem să le punem etichete și să le schimbăm simbolistica. Iată un exemplu:
Diferențe între straturile WMS
Un Serviciu Web Feature întoarce stratul însuși, nu doar o hartă redată pentru acesta. Asta vă dă acces direct la date, însemnând că puteți să schimbați simbologia și puteți rula funcții analitice. Cu toate acestea, costul este transmiterea unui volum mai mare de date. Asta va fi evident dacă straturile pe care le încărcați au forme complexe, multe atribute sau multe entități; sau chiar dacă doar încărcați multe straturi. Din această cauză straturile WFS au nevoie de regulă de mult timp pentru a se încărca.
10.2.2. ★★☆ Follow Along: Querying a WFS Layer
Deși este posibil să interogați un strat WFS după încărcare, este de regulă mai eficient să îl interogați înainte de a-l încărca. În felul acesta cereți doar entitățile pe care le doriți, ceea ce înseamnă că utilizați o bandă mai mică.
De exemplu, pe serverul WFS pe care îl utilizăm în acest moment, există un strat numit countries (excluding Antarctica). Să spunem că dorim să știm unde se află Africa de Sud față de stratul south_poles_wfs (și poate și față de antarctica_country_border layer) care a fost deja încărcat.
Există două metode. Puteți încărca tot stratul countries …, după care să construiți o interogare ca în mod normal după ce acesta s-a încărcat. Dar, transmițând datele pentru toate țările lumii și utilizând pe urmă doar datele pentru Africa de Sud pare a fi o irosire a lățimii de bandă. În funcție de conexiune, acest set de date poate necesita mai multe minute pentru a se încărca.
Alternativa este de a construi o interogare ca pe un filtru, chiar înainte de încărcarea stratului de pe server.
Enable the WFS / OGC API Features tab in the Data Source Manager dialog
Connect to the server we used before and you should see the list of available layers.
Find and double-click the countries (excluding Antarctica) layer. The layer name is
country_borders_excluding_antarctica
. You can also select the layer and press Build query button at the bottom of the dialog:In the dialog that appears, type the following
SELECT * FROM country_borders_excluding_antarctica WHERE "Countryeng" = 'South Africa'
query in the SQL Statement box.Press OK.
The expression used will appear as the Sql value of the target layer:
Click Add with the layer selected as above. Only the country with the
Countryeng
value ofSouth Africa
will load from that layer:Did you notice the icon next to the
country_borders_excluding_antarctica
layer? It indicates that the loaded layer is filtered and does not display in the project all of its features.Dacă ați încercat ambele metode, veți observa că această variantă este mult mai rapidă decât încărcarea tuturor țărilor înaintea filtrării!
Note cu privire la disponibilitatea WFS
Este o raritate să găsiți un WFS care să pună la dispoziție caracteristicile dorite dacă acestea sunt foarte specifice. Motivul pentru care cele mai multe servicii Web Feature sunt relativ rare este pentru că necesită transmiterea unui volum mare de date pentru a descrie complet o entitate. În concluzie nu este foarte rentabilă găzduirea unui WFS în comparație cu un WMS, care trimite doar imagini.
Cel mai comun tip de WFS pe care îl veți întâlni va fi deci probabil într-o rețea local sau chiar pe propriul calculator, mai degrabă decât in Internet.
10.2.3. În concluzie
Straturile WFS sunt de preferat față de straturile WMS dacă aveți nevoie de acces direct la atributele si geometriile acestora. Cu toate acestea, ținând cont de volumul de date care trebuie descărcat (ceea ce duce la probleme de viteză și de asemenea la lipsa de servere WFS disponibile publicului larg) nu este întotdeauna posibil să folosiți un WFS în loc de un WMS.
10.2.4. Ce urmează?
În continuare, vom vedea cum se utilizează QGIS Server pentru a furniza servicii OGC.