.
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.
Un nombre croissant de spécifications décrivant les modèles de données géographiques sont développées par l’OGC pour servir des besoins spécifiques dans des situations nécessitant une interopérabilité et des technologies géospatiales, dont les SIG. Des informations supplémentaires peuvent être trouvées sur le site 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, il s’agira par exemple des formats JPEG ou 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 web pleinement déployé. De cette façon, vous pouvez copier les adresses générées par QGIS et les copier 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 serveurs WMS existants ayant chacun leur 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.
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 et 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:
Figure WMTS 1:
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.
1) In order to access a WMTS KVP service, a QGIS user must open the WMS/WMTS interface and add the following string to the URL of the WMTS tile service:
"?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
Ce format aide à reconnaître les adresses RESTful. Un service WMTS RESTful est accédé par QGIS en ajoutant simplement cette adresse dans la configuration de l’URL WMS. Voici un exemple de ce type d’adresse pour les cartes de l’Autriche: http://maps.wien.gv.at/basemap/1.0.0/WMTSCapabilities.xml.
Note
Vous pouvez encore trouver de vieux services nommés WMS-C. Ces services sont proches du WMTS (même objectif mais fonctionnement différent). Vous pouvez les gérer de la même manière que les services WMTS. Ajoutez seulement ?tiled=true à la fin de l’url. Consultez http://wiki.osgeo.org/wiki/Tile_Map_Service_Specification pour plus d’informations sur cette spécification.
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....
La fenêtre Ajouter des couches depuis un serveur pour ajouter des couches d’un serveur WMS s’ouvre. Vous pouvez ajouter des serveurs pour tester en cliquant le bouton [Ajouter les serveurs par défaut]. Cela ajoutera deux serveurs WMS de démonstration, celui de DM Solutions Group et celui de Lizardtech. Pour définir un nouveau serveur WMS, dans l’onglet Couches, cliquez sur le bouton [Nouveau] puis entrez les paramètres de connexion du serveur WMS désiré, comme listé dans le tableau table_OGC_1:
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.
Une fois que vous avez remplis les paramètres, vous pouvez utiliser le bouton [Connect] pour récupérer les propriétés du serveur sélectionné. Cela inclut l’encodage des images, les couches, les styles de couches et les projections. Étant donné qu’il s’agit d’une opération réseau, la vitesse de réponse dépend de la qualité de la connexion réseau au serveur WMS. Lorsque les données sont téléchargées depuis le serveur WMS, la progression du téléchargement est visible dans le coin inférieur gauche de la boîte de dialogue WMS.
Votre écran devrait maintenant ressembler à la figure_OGR_1, qui montre la réponse fournie par le serveur WMS du Portail Européen du Sol.
Figure OGR 1:
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.
Si vous sélectionnez un WMS depuis la liste, la projection par défaut, fournie par mapserver, apparaît. Si le bouton [Modifications...] est actif, vous pouvez cliquer dessus pour changer cette projection par défaut pour une autre, fournie par le serveur WMS.
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.
Pour choisir un SCR, cliquez sur le bouton [Modifications...] et une fenêtre similaire à la figure de la section Utiliser les projections apparaitra. La principale différence est qu’ici seules les projections gérées par le serveur seront listées.
Dans QGIS vous pouvez rechercher directement des serveurs WMS. La figure Figure_OGC_2 montre l’onglet Recherche de serveurs de la fenêtre Ajouter des couches d’un serveur.
Figure OGR 2:
Comme vous pouvez le voir, il est possible d’entrer une chaîne de recherche dans un champ texte puis cliquez sur le bouton [Chercher]. Après un court moment d’attente, le résultat de la recherche sera affiché sous le champ texte. Parcourez la liste et inspectez les résultats de la recherche dans le tableau. Pour visualiser le résultat, sélectionnez un serveur, cliquez sur le bouton [Ajoutez les lignes sélectionnées à la liste des serveurs WMS] et retournez sur l’onglet Couches. QGIS a automatiquement mis à jour votre liste de serveur et les résultats sélectionnés de la recherche sont déjà activés dans la liste des serveurs WMS sauvés. Vous n’avez plus qu’à interroger la liste des couches en cliquant sur le bouton [Connecter]. Cette option est pratique quand vous voulez chercher des couches par des mots clés spécifiques.
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 Paramètres ‣ Panneaux (Sous KDE et Windows) ou Vue ‣ Panneaux (Gnome et MacOSX) et en choisissante Echelle de tuile. Cela vous donne les échelles disponibles sur le serveur de tuile avec une juage 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.
Le fournisseur de données WMS de QGIS est capable d’afficher un graphique de légende dans la liste des couches ainsi que dans le composeur de cartes. La légende WMS sera affichée uniquement si le serveur dipose de l’option GetLegendGraphic et si la couche dispose de l’url getCapability pour que vous puissiez choisir un style popur cette couche.
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.
Dans le composeur de cartes, la légende sera intégrée à sa dimension originale (téléchargement). La résolution de la légende graphique peut être paramétrée dans les propriétés de l’objet sous Légende -> Graphique de légende WMS pour correspondre à vos besoins d’impression.
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
Si vous avez besoin d’accéder à des couches sécurisées avec des méthodes sécurisées autres que la simple authentification, vous pouvez utiliser InteProxy comme proxy transparent, qui gère plusieurs méthodes d’authentification. Vous pouvez trouver plus d’informations dans le manuel d’InteProxy que vous trouverez sur le site 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 contraîntes spatiales et d’autres critères de recherche.
QGIS dispose d’un fournisseur WCS natif qui gère les version 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.
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.
Cliquez sur [Nouveau].
Entrez ‘DM Solutions’ pour le nom.
Entrez l’URL (voir ci-dessus).
Cliquez sur le bouton [OK].
Choisisez ‘Solutions DM’ depuis la liste déroulante Connexions Serveur.
Cliquez sur [Connexion].
Attendez que la liste des couches soit complète.
Cliquez sur la couche Parks dans la liste.
Cliquez sur [Appliquer] pour ajouter la couche à la carte.
Il est à noter que tous paramètres de proxy que vous auriez renseignés dans vos options sont également reconnus.
Figure OGR 3:
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.
Seul le WFS 1.0.0 est géré. Pour le moment il n’y a pas eu de test pour les autres versions des services WFS des serveurs WFS. Si vous rencontrez des problèmes avec d’autres serveurs WFS, n’hésitez pas à contacter l’équipe de développement. Référez-vous à la section Aide et support pour plus d’informations sur les listes de diffusions.
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.