Cette question est similaire à une question précédente sur l'affichage des données vectorielles dans une carte Web. Je veux avoir une interface Web de base qui utilise OpenLayers et peut afficher des données raster qui sont actuellement dans PostGIS, en utilisant un fond de carte tel que Google. J'ai installé PostGIS2.0 avec la bibliothèque raster et je vois dans la documentation qu'il existe plusieurs options pour sortir des données, telles que JPEG, GeoTIFF et PNG. Leur format est-il recommandé d'utiliser?
Pour afficher des données vectorielles, j'utilise actuellement javascript pour envoyer des coordonnées du navigateur de l'utilisateur à mon serveur, puis j'effectue une requête à l'aide de PHP / SQL sur PostGIS. Les résultats sont ensuite renvoyés sous forme de GeoJSON qui peut être superposé sur le fond de carte. Je me suis demandé si une approche similaire pouvait être appliquée à l'aide de rasters mais je ne sais pas quel format de raster est le meilleur, ou s'il y a d'autres contraintes que je devrais considérer.
J'ai vu beaucoup de références à GeoServer mais je ne sais pas si c'est nécessaire pour ce projet (je ne suis pas tout à fait sûr quand GeoServer devrait être utilisé ou non).
Mapserver prend en charge les rasters postgis et les instructions pour une configuration de base sont données ici (point 9.9).
Dans votre cas, vous devez configurer Mapserver pour qu'il fonctionne comme un serveur WMS afin qu'il renvoie les rasters Postgis en tant que couches WMS normales. Il est alors presque trivial d'ajouter les couches dans votre carte OpenLayers en utilisant un objet de couche WMS .
Ce type de solution est probablement votre meilleure option car elle est entièrement basée sur le logiciel OpenSource, c'est une pile éprouvée et ne nécessite pas de middleware étendu. Tous les besoins de mapserver sont un serveur web (l'apache que vous utilisez probablement déjà pour php est correct) qui peut exécuter des scripts cgi. Si les performances ne sont pas un problème critique, vous pouvez éviter d'utiliser un cache (tuile) et simplement demander à mapserver de rendre les couches à la volée à chaque fois.
Si vous souhaitez mettre en cache les tuiles pour minimiser la charge du serveur et améliorer les temps de réponse, envisagez d'utiliser mapcache ou tilecache . Mapcache est un projet sœur cadette de Mapserver, mais devrait surpasser tous les autres caches car il fonctionne comme un module apache.
Pour les utilisateurs d'Ubuntu, le moyen le plus simple d'installer les dépendances de Mapserver consiste à ajouter Ubuntu GIS PPA à votre système.
la source
Tout dépend. Taille d'image, mise en cache, bibliothèques disponibles (certains pilotes jp2k propriétaires par exemple).
Voici un lien vers un génial pdf , Geoserver sur les stéroïdes. Cela vous fera parcourir les différents formats, leurs avantages et leurs inconvénients ainsi qu'une configuration de base.
la source