` `
L’OGC (Open Geospatial Consortium) est une organisation internationale à laquelle participent plus de 300 organisations commerciales, gouvernementales, associatives et laboratoires de recherche à travers le monde. Ses membres développent et implémentent des standards pour les services et le contenu géospatial, le traitement de données SIG et les formats d’échange.
Describing a basic data model for geographic features, an increasing number of specifications are developed by OGC to serve specific needs for interoperable location and geospatial technology, including GIS. Further information can be found at http://www.opengeospatial.org/.
Les spécifications importantes de l’OGC prises en charge par QGIS sont :
Les services OGC sont de plus en plus utilisés pour échanger des données géospatiales entre différentes implémentations SIG et des fournisseurs de données. QGIS peut maintenant traiter les spécifications citées ci-dessus dont le SFS (via PostgreSQL / PostGIS, voir section Couches PostGIS).
QGIS peut actuellement agir comme client WMS pour les versions 1.1, 1.1.1 et 1.3 des serveurs WMS. Il a été tout particulièrement testé avec des serveurs accessibles publiquement comme ceux de DEMIS.
Un serveur WMS agit en fonction des requêtes envoyées par le client (par exemple QGIS) pour une carte raster avec une étendue donnée, un ensemble de couches, une sémiologie et une transparence. Le serveur WMS consulte alors ses sources de données locales, rasterise la carte et la renvoie au client dans un format raster. Pour QGIS, cela sera par exemple du JPEG ou du PNG.
Un WMS est de manière générale un service web mis en œuvre selon une architecture REST (Representational State Transfer) plutôt qu’un service RPC (Remote Procedure Call) pleinement déployé. De cette façon, vous pouvez copier les adresses générées par QGIS et les coller dans un navigateur internet pour retrouver les mêmes images que dans QGIS. Cela peut être très pratique pour résoudre des problèmes, car de fait il y a plusieurs modèles de serveur WMS sur le marché, chacun ayant son interprétation du standard WMS.
Des couches WMS peuvent être ajoutées assez simplement, du moment que vous connaissez l’URL pour accéder au serveur WMS, vous avez une connexion sous forme de service sur ce serveur, et celui-ci comprend le protocole HTTP comme mécanisme de transport.
Additionally, QGIS will cache your WMS responses (i.e. images) for 24h as long as the GetCapabilities request is not triggered. The GetCapabilities request is triggered everytime the [Connect] button in the [Add layer(s) from WMS(T)S Server] dialog is used to retrieve the WMS server capabilities. This is an automatic feature meant to optimize project loading time. If a project is saved with a WMS layer, the corresponding WMS tiles will be loaded from the cache the next time the project is opened as long as they are no older than 24H.
QGIS peut aussi agir comme client WMTS. WMTS est un standard OGC de diffusion des données cartographiques sous formes de tuiles prédéfinies. C’est un moyen de diffusion plus rapide et plus efficient que le standard WMS car les tuiles sont générées à l’avance et les requêtes clientes ne portent que sur la transmission des tuiles, non leur production. A contrario, une requête WMS implique à la fois la génération des données et leur transmission. Un exemple bien connu d’utilisation de données cartographiques tuilées, non conforme au standard OGC, est Google Maps.
Afin d’afficher des données à différentes échelles proches de celles souhaitées par l’utilisateur, les dalles WMTS sont produites à différents niveaux d’échelle et peuvent être demandées par une application SIG cliente.
Ce diagramme illustre le concept de tuiles prédéfinies:
Les deux types d’interfaces WMTS que QGIS gère sont les paires clef-valeurs (KVP) et RESTful. Ces deux interfaces sont différentes et vous devrez les paramétrer de manière différente dans QGIS.
Pour accéder à un service WMTS KVP, l’utilisateur doit ouvrir l’interfaces WMS/WMTS et ajouter la chaîne de caractères suivante à l’URL du service de tuile WMTS :
"?SERVICE=WMTS&REQUEST=GetCapabilities"
Un exemple de ce type d’adresse est
http://opencache.statkart.no/gatekeeper/gk/gk.open_wmts?\
service=WMTS&request=GetCapabilities
Pour les tests, la couche topo2 de ce WMTS fonctionne correctement. Ajouter cette chaîne indique que le service web WMTS est utilisé à la place du service WMS.
Le service RESTful WMTS prend la forme différente d’une URL classique. Le format recommandé par l’OGC est le suivant:
{WMTSBaseURL}/1.0.0/WMTSCapabilities.xml
This format helps you to recognize that it is a RESTful address. A RESTful WMTS is accessed in QGIS by simply adding its address in the WMS setup in the URL field of the form. An example of this type of address for the case of an Austrian basemap is http://maps.wien.gv.at/basemap/1.0.0/WMTSCapabilities.xml.
Note
You can still find some old services called WMS-C. These services are quite similar to WMTS (i.e., same purpose but working a little bit differently). You can manage them the same as you do WMTS services. Just add ?tiled=true at the end of the url. See http://wiki.osgeo.org/wiki/Tile_Map_Service_Specification for more information about this specification.
Lorsque vous lisez WMTS, vous pouvez également penser WMS-C.
La première fois que vous utilisez la fonctionnalité de services WMS dans QGIS, il n’y a aucun serveur défini.
Commencez par cliquer sur le bouton Ajoutez une couche WMS dans la barre d’outils ou via le menu Couche ‣ Ajoutez une couche WMS....
The dialog Add Layer(s) from a Server for adding layers from the WMS server appears. You can add some servers to play with by clicking the [Add default servers] button. This will add two WMS demo servers for you to use: the WMS servers of the DM Solutions Group and Lizardtech. To define a new WMS server in the Layers tab, select the [New] button. Then enter the parameters to connect to your desired WMS server, as listed in table_OGC_wms:
Table OGC 1 : Paramètres de connexion à un serveur WMS
Si vous devez configurer un serveur proxy pour pouvoir recevoir des services WMS à partir d’Internet, vous pouvez ajouter votre serveur proxy dans les options. Choisissez le menu Préférences ‣ Options et cliquez sur l’onglet Réseau. Vous pouvez alors ajouter votre configuration de proxy et l’activer en cochant la case Utiliser un proxy pour l’accès Internet. Assurez-vous que vous avez sélectionné le type de proxy correct dans la liste déroulante Type de proxy .
Une fois qu’une nouvelle connexion à un serveur WMS a été créée, elle sera sauvegardée pour les futures sessions de QGIS.
Astuce
À propos des URL des serveurs WMS
Assurez-vous, lorsque vous entrez l’URL du serveur WMS, d’avoir uniquement l’URL de base. Par exemple, vous ne devez pas avoir de paramètres tels que request=GetCapabilities ou version=1.0.0 dans votre URL.
Warning
Entering username and password in the Authentication tab will keep unprotected credentials in the connection configuration. Those credentials will be visible if, for instance, you shared the project file with someone. Therefore, it’s advisable to save your credentials in a Authentication configuration instead (configurations tab). See Système d’authentification for more details.
Once you have successfully filled in your parameters, you can use the [Connect] button to retrieve the capabilities of the selected server. This includes the image encoding, layers, layer styles and projections. Since this is a network operation, the speed of the response depends on the quality of your network connection to the WMS server. While downloading data from the WMS server, the download progress is visualized in the lower left of the WMS dialog.
Votre écran devrait maintenant ressembler à la figure_OGC_add_wms, qui montre la réponse fournie par le serveur WMS du Portail Européen du Sol.
Format d’image
La section Format d’image liste les formats qui sont gérés à la fois par le client et leur serveur. Choisissez en fonction de votre besoin de précision de l’image.
Astuce
Format d’image
Les serveurs WMS vous offriront typiquement le choix entre les formats d’image JPEG et PNG. Le JPEG est un format de compression avec perte alors que le PNG reproduit fidèlement les données raster brutes.
Utilisez le JPEG si vous vous attendez à ce que les données WMS soient de nature photographiques et/ou si vous acceptez une perte de qualité dans l’image. Ce compromis réduit généralement de cinq fois le temps de transfert des données par rapport au PNG.
Utilisez le PNG si vous voulez une représentation précise des données d’origine, et vous acceptez des temps de transfert des données plus longs.
Options
La zone Options de la fenêtre dispose d’un champ textuel où vous pouvez saisir le Nom de la couche WMS. Ce nom sera affiché dans la légende après le chargement de la couche.
Sous le nom de la couche vous pouvez définir la Taille de tuile (par exemple 256x256), si vous souhaitez diviser la requête WMS en plusieurs requêtes.
Limite d’entité de GetFeatureInfo permet de définir quelles entités requêter sur le serveur.
If you select a WMS from the list, a field with the default projection provided by the mapserver appears. If the [Change...] button is active, you can click on it and change the default projection of the WMS to another CRS provided by the WMS server.
Enfin, vous pouvez activer Utiliser la légende WMS contextuelle si le serveur WMS prend en charge cette fonctionnalité. Sera alors affichée une légende adaptée aux éléments présents dans l’extension courante de la carte, les éléments de légende qui correspondent à des éléments non affichés ne seront pas inclus dans la légende.
Ordre des couches
L’onglet Ordre des couches liste les couches sélectionnées disponibles pour le serveur WMS actuellement connecté. Certaines couches seront peut-être dépliables, cela signifie que différents styles sont disponibles pour cette couche.
Vous pouvez sélectionner plusieurs couches à la fois, mais seulement un style d’image par couche. Lorsque plusieurs couches sont sélectionnées, celles-ci seront combinées par le serveur WMS et transmises à QGIS en une seule fois.
Astuce
Ordonner les couches WMS
Les couches WMS sont superposées par le serveur dans l’ordre listé dans la section Couches, du haut vers le bas. Si vous souhaitez changer cet ordre, utilisez l’onglet Ordre des couches.
Transparence
Dans cette version de QGIS, le paramètre de Transparence globale de la fenêtre de Propriétés de la couche est codé en dur pour être toujours activé, si disponible.
Astuce
Transparence des couches WMS
La disponibilité de la transparence de l’image WMS dépend du format d’image utilisé : les formats PNG et GIF gèrent la transparence, tandis que le format JPEG ne le gère pas.
Système de Coordonnées de Référence
Un Système de Coordonnées de Référence de (SCR) est la terminologie de l’OGC pour désigner une projection QGIS.
Chaque couche WMS peut être représentée dans plusieurs projections (ou SCR), en fonction des possibilités du serveur WMS.
To choose a CRS, select [Change...] and a dialog similar to Fenêtre de SCR personnalisé will appear. The main difference with the WMS version of the dialog is that only those CRSs supported by the WMS server will be shown.
Dans QGIS vous pouvez rechercher directement des serveurs WMS. La figure Figure_OGC_search montre l’onglet Recherche de serveurs de la fenêtre Ajouter des couches d’un serveur.
As you can see, it is possible to enter a search string in the text field and hit the [Search] button. After a short while, the search result will be populated into the list below the text field. Browse the result list and inspect your search results within the table. To visualize the results, select a table entry, press the [Add selected row to WMS list] button and change back to the Layers tab. QGIS has automatically updated your server list, and the selected search result is already enabled in the list of saved WMS servers in the Layers tab. You only need to request the list of layers by clicking the [Connect] button. This option is quite handy when you want to search maps by specific keywords.
Fondamentalement cette option est un front end à l’API de http://geopole.org.
Lorsque vous utilisez des services WMTS (WMS en cache) tel que:
http://opencache.statkart.no/gatekeeper/gk/gk.open_wmts?\
service=WMTS&request=GetCapabilities
Vous pouvez naviguer dans l’onglet Jeux de tuiles fourni par le serveur. Cette table liste d’autres informations telles que la taille des tuiles, les formats et les SCR gérés. En combinaison avec cette fonctionnalité, vous pouvez utiliser la jauge d’échelle de tuile en sélectionnant Vue‣ Panneaux (sous KDE) ou Paramètres‣ Panneaux et en choisissant Échelle de tuile. Cela vous donne les échelles disponibles sur le serveur de tuile avec une jauge de sélection.
Une fois que vous avez ajouté un serveur WMS et si une couche du serveur WMS est interrogeable, vous pouvez utiliser l’outil Identifier pour sélectionner un pixel sur la carte. Une requête est envoyée au serveur WMS pour chaque sélection effectuée. Les résultats de la requête sont renvoyés au format texte. Le formatage de ce texte dépend du serveur WMS utilisé.
Sélection du format
Si le serveur gère plusieurs formats de sortie, une liste déroulante des format gérés est automatiquement ajoutée à la boîte de dialogue des résultats et le format sélectionné peut être stocké dans le fichier de projet pour la couche.
Support du format GML
L’outil d’identification gère les réponses des serveurs WMS (GetFeatureInfo) au format GML (intitulé Entité dans l’interface graphique de QGIS). Si le format “Entité est géré par le serveur et qu’il est sélectionné, les résultats de l’outil d’identification sont des entités vecteur, comme s’il s’agissait d’une couche vecteur normale. Lorsqu’une seule entité est sélectionnée dans l’arbre, elle est mise en valeur dans la carte et elle peut être copié dans le presse-papier et copiée dans une autre couche vecteur. Consultez l’exemple de gestion de GetFeatureInfor au format GML pour UMN Mapserver ci-dessous.
# in layer METADATA add which fields should be included and define geometry (example):
"gml_include_items" "all"
"ows_geometries" "mygeom"
"ows_mygeom_type" "polygon"
# Then there are two possibilities/formats available, see a) and b):
# a) basic (output is generated by Mapserver and does not contain XSD)
# in WEB METADATA define formats (example):
"wms_getfeatureinfo_formatlist" "application/vnd.ogc.gml,text/html"
# b) using OGR (output is generated by OGR, it is send as multipart and contains XSD)
# in MAP define OUTPUTFORMAT (example):
OUTPUTFORMAT
NAME "OGRGML"
MIMETYPE "ogr/gml"
DRIVER "OGR/GML"
FORMATOPTION "FORM=multipart"
END
# in WEB METADATA define formats (example):
"wms_getfeatureinfo_formatlist" "OGRGML,text/html"
Visualiser les propriétés
Une fois que vous avez ajouté un serveur WMS, vous pouvez voir ses propriétés en faisant un clic-droit sur la couche dans la légende et en sélectionnant Propriétés.
Onglet Métadonnées
L’onglet Métadonnées affiche la richesse des informations du serveur WMS, généralement collectées à partir de la requête capabilities renvoyée par le serveur. Beaucoup de définitions peuvent être obtenues par la lecture des normes WMS (voir OPEN-GEOSPATIAL-CONSORTIUM Bibliographie), mais en voici quelques-unes :
Propriétés du serveur
Version du WMS — La version de WMS gérée par le serveur.
Formats d’image — La liste des types MIME que le serveur peut renvoyer lors qu’il dessine la carte. QGIS gère tous les formats pour lesquelles la bibliothèque Qt en sous-couche a été compilée, qui sont à minima les types image/png et image/jpeg.
Formats de l’outil Identitier — La liste des types MIME auxquels le serveur peut répondre quand vous utilisez l’outil Identifier. Pour l’instant QGIS gère le type text-plain.
Propriétés de la couche
Selectionnée — Si la couche a été sélectionnée quand le serveur correspondant a été ajouté au projet.
Visible — Si cette couche a été sélectionnée comme visible dans la légende (pas encore utilisé dans cette version de QGIS).
Peut identifier — Si cette couche retournera des résultats quand l’outil Identifier est utilisé sur celle-ci.
Peut être transparente — Si cette couche peut être rendue avec une transparence. Cette version de QGIS utilisera toujours la transparence si cette option est à Oui et que le format d’image gère la transparence.
Peut zoomer — Si on peut zoomer sur cette couche avec le serveur. Cette version de QGIS suppose que toutes les couches WMS ont ce paramètre défini à Oui. Les couches déficientes seront peut-être rendues d’une manière étrange.
Décompte des cascades — Les serveurs WMS peuvent agir comme un proxy à d’autres serveurs WMS pour obtenir des données pour une couche. Cette entrée affiche le nombre de fois où la requête pour cette couche est redirigée vers un autre serveur WMS pour obtenir un résultat.
Largeur fixe, hauteur fixe — Si les pixels sources d’une couche ont des dimensions fixes. Cette version de QGIS suppose que toutes les couches WMS ont ce paramètre non fixé. Les couches déficientes seront peut-être rendues d’une manière étrange.
Emprise en WGS 84 — La limite du contour de la couche, en coordonnées WGS 84. Certains serveurs WMS ne définissent pas ceci correctement (par exemple, des coordonnées UTM sont utilisées à la place). Si cela est le cas, alors la vue initiale sera rendue avec une vue très étendue. Le webmaster du WMS doit être informé de cette erreur sur ce paramètre qui est certainement connu en tant qu’éléments XML du WMS LatLonBoundingBox, EX_GeographicBoundingBox ou the CRS:84 BoundingBox.
Disponibilité des SCR — Les projections que l’on peut utiliser via le serveur WMS. Elles sont listées dans le format natif du WMS.
Disponibilité des styles — Les styles d’images que le serveur WMS peut utiliser pour le rendu de cette couche.
The QGIS WMS data provider is able to display a legend graphic in the table of contents’ layer list and in the map composer. The WMS legend will be shown only if the WMS server has GetLegendGraphic capability and the layer has getCapability url specified, so you additionally have to select a styling for the layer.
Si une légende graphique est disponible, elle est affichée sous la couche. Elle est de faible taille et vous devez cliquer dessus pour l’afficher complètement (dû à une limite d’architecture de QgsLegendInterface). Cliquer sur la légende de la couche ouvrira une fenêtre avec la légende en pleine résolution.
In the print composer, the legend will be integrated at it’s original (downloaded) dimension. Resolution of the legend graphic can be set in the item properties under Legend –> WMS LegendGraphic to match your printing requirements
La légende affichera une information contextuelle basée sur l’échelle courante. La légende WMS sera affichée uniquement si le serveur WMS dispose de la fonction GetLegendGraphic et si la couche dispose d’une url getCapability pour pouvoir choisir son style.
Toutes les fonctionnalités d’un client WMS n’ont pas été intégrées dans cette version de QGIS. Les exceptions les plus notables sont présentées ci-après.
Éditer la configuration d’une couche WMS
Une fois que vous avez complété la procédure d’ Ajout de couches WMS, il n’y aucun moyen de modifier la configuration. Une solution de contournement consiste à supprimer la couche et recommencer.
Serveurs WMS nécessitant une authentification
Actuellement les serveurs WMS publics et sécurisés sont gérés. Les serveurs sécurisés sont accessibles via authentification publique. Vous pouvez ajouter ces informations d’authentification (optionnelles) au moment de l’ajout d’un serveur WMS. Voir la section Sélection des serveurs WMS/WMTS pour les détails.
Astuce
Accéder à des couches OGC sécurisées
If you need to access secured layers with secured methods other than basic authentication, you can use InteProxy as a transparent proxy, which does support several authentication methods. More information can be found in the InteProxy manual at http://inteproxy.wald.intevation.org.
Astuce
QGIS WMS Mapserver
Depuis la version 1.7.0, QGIS possède sa propre implémentation d’un Mapserver WMS 1.3.0. Référez vous à QGIS comme serveur de données OGC pour en savoir plus.
Un service Web Coverage (WCS) fournit un accès à des données raster sous une forme qui permet le rendu côté client, comme une entrée vers des modèles scientifiques. WCS peut être comparé à WFS et WMS. Comme ces services, WCS permet aux clients de choisir des portions de données issues du serveur basées sur des contraintes spatiales et d’autres critères de recherche.
QGIS dispose d’un fournisseur WCS natif qui gère les versions 1.0 et 1.1 (qui sont significativement différentes) mais la version 1.0 est privilégiée car la version 1.1 pose beaucoup de problèmes (chaque serveur l’implémente de manière différente avec beaucoup de particularités).
Le fournisseur WCS natif gère l’ensemble des requêtes réseau et utilise les paramètres réseau de QGIS (particulièrement le proxy). Il est également possible d’utiliser un mode cache (‘toujours en cache’, ‘préférer le cache’, ‘préférer le réseau’, ‘toujours le réseau’) et le fournisseur gère également la sélection dans le temps si un domaine de temps est fourni par le serveur.
Warning
Entering username and password in the Authentication tab will keep unprotected credentials in the connection configuration. Those credentials will be visible if, for instance, you shared the project file with someone. Therefore, it’s advisable to save your credentials in a Authentication configuration instead (configurations tab). See Système d’authentification for more details.
Dans QGIS, une couche WFS se comporte à peu près comme n’importe quelle autre couche vecteur. Vous pouvez identifier et sélectionner des objets et voir la table attributaire. Depuis QGIS 1.6, l’édition (WFS-T) est prise en charge si le serveur le propose.
Dans l’ensemble, l’ajout d’une couche WFS suit une procédure très similaire à celle des couches WMS. La différence est qu’il n’y a pas de serveur défini par défaut, nous allons donc devoir en ajouter un.
Charger une couche WFS
Pour notre exemple nous utiliserons le serveur WFS de DM Solutions et afficherons une couche. L’URL est : http://www2.dmsolutions.ca/cgi-bin/mswfs_gmap
Cliquez sur le bouton Ajouter une couche WFS de la barre d’outils Couches. La fenêtre Ajouter une couche WFS d’un serveur apparaît.
Entrez ‘DM Solutions’ pour le nom.
Entrez l’URL (voir ci-dessus).
Choisisez ‘Solutions DM’ depuis la liste déroulante Connexions Serveur.
Attendez que la liste des couches soit complète.
Cliquez sur la couche Parks dans la liste.
Il est à noter que tous paramètres de proxy que vous auriez renseignés dans vos options sont également reconnus.
Dans la boîte de dialogue des paramètres WFS, vous pouvez définir le nombre maximal d’entités’ téléchargées, mettre en place la version, forcer à: guilabel: `Ignorer l’orientation de l’axe (WFS 1.1 / WFS 2.0) et forcer à : guilabel: Inverser l’orientation de l’axe.
Warning
Entering username and password in the Authentication tab will keep unprotected credentials in the connection configuration. Those credentials will be visible if, for instance, you shared the project file with someone. Therefore, it’s advisable to save your credentials in a Authentication configuration instead (configurations tab). See Système d’authentification for more details.
Vous remarquerez que la progression du téléchargement est affichée en bas à gauche de la fenêtre principale de QGIS. Une fois que la couche est chargée, vous pouvez identifier et sélectionner une ou deux provinces et visualiser la table d’attributs.
Note
A propos des différences entre les versions WFS
WFS 1.0.0, 1.1.0 et 2.0 sont pris en charge. Le téléchargement en arrière-plan et le rendu progressif, la mise en cache sur disque des fonctions téléchargées et l’autodétection de version sont désormais pris en charge.
Seul le service WFS 2.0 prend en charge la pagination des requêtes GetFeature.
Astuce
Trouver des serveurs WFS
Vous trouverez d’autres serveurs WFS en cherchant dans votre moteur de recherche favori. Il existe de nombreuses listes d’URL publiques, plus ou moins à jour.