Skip to Content

Présentation des changements de la version 4.10 de Mapserver


UMN MapServer est un serveur cartographique prenant en charge un grand nombre de formats de fichier. Il est possible de l’utiliser en mode CGI ou à travers des langages de script tels que PHP, Ruby, Java, C, etc à l’aide de mapScript. MapServer constitue donc un environnement de développement d’outils plus qu’un outil en lui même prêt à être installé et à être utilisé directement.

Cet article présente les nouveautés de la version 4.10 de UMN MapServer.

Date des sorties :
  • Sortie finale : 5-10-2006
  • Version RC : 27-09-2006
  • Versions béta : 17-08-2006, 29-09-2006, 6-09-2006
  • Prochaine version 5.0, début 2007.
RFC : RFC9

Une balise item pour les modèles de requêtes. Pour l’instant le processus d’affichage des attributs dans les modèles des requêtes est limité à quelques formes d’échappement. Cela est trop limité. Il est plus intéressant d’appliquer un format à un attribut (par exemple, tronquer les décimals ou ajouter un préfixe) ou détecter lorsqu’il est NULL ou vide et affiche une présentation alternative.

RFC : RFC11

Une des fonctionnalités les plus demandées est la possibilité d’avoir des étiquettes qui suivent la courbe d’une ligne. Le paramètre ANGLE a été étendu et possède une valeur supplémentaire : FOLLOW. Exemple :

 

Exemple d'étiquette courbe

Mapserveur : étiquette courbe

RFC : RFC13

Sensor Observation Service (SOS) fournit une API pour cartographier la gestion de sondes déployées et récupérer leur données. Ceci est une partie du standard SWE de l’OGC : http://www.opengeospatial.org/functional/?page=swe

RFC : RFC14

Des coordonnées relatives pour les objets graphiques INLINE. Pour l’instant, il est possible de gérer des objets dont les coordonnées sont en pixels et de les dessiner en paramètrant TRANSFORM FALSE dans un objet LAYER. Cependant, les coordonnées sont relatives au coin en haut à gauche de l’image (0,0) ce qui ne permet pas d’afficher un copyright par exemple, en bas à droite d’une image si l’image change (par WMS par exemple). La solution est d’utiliser les valeurs ll, ul, ... pour le paramètre TRANSFORM. Par exemple, avec le code suivant :

  LAYER
    NAME 'copyright'
    TYPE POINT
    TRANSFORM LL
    FEATURE
      POINTS 10 -10 END
      TEXT 'Copyright YJA 2006'
    END
    CLASS
      NAME "class"
      STYLE
        COLOR 50 50 255
        OUTLINECOLOR 255 50 50
      END
      LABEL
        TYPE TRUETYPE
        FONT "Vera"
        SIZE 10
        COLOR 0 0 0
        POSITION ur
        BACKGROUNDCOLOR 245 235 235
        BACKGROUNDSHADOWCOLOR 55 55 55
        BACKGROUNDSHADOWSIZE 1 1
      END
    END
  END
Mapserver : ajout d'un texte en bas de l'image
 
RFC : RFC16

Les services WxS (WMS, WFS, ...) dans MapScript. Le but est de pouvoir définir des services WMS, WFS à l’aide de php-mapscript.

RFC : RFC18

Les mots de passe cryptés dans le mapfile. Cela fournit un mécanisme pour protéger les mots de passe de connexion à une base de données dans le mapfile en les cryptant au lieu de les écrire en texte brut. Le mot de passe est créé à l’aide d’un nouvel outil fournit avec MapServer : msencrypt. il permet de créer la clé :

msencrypt -keygen /path/to/mykey.txt

et de créer un mot de passe :

msencrypt -key /path/to/mykey.txt <string_to_encrypt>

Ce mot de passe est utilisé directement dans le mapfile entre accolade : {}. Exemple :

CONFIG MS_ENCRYPTION_KEY "/var/www/html/test/cartoweb3/keygen.txt"
  CONNECTIONTYPE POSTGIS
  CONNECTION "host=localhost dbname=edit_db user=postgres password={8C8D223CB7CDD9B3} port=5432"

Ceci permet d’inclure un mapfile dans un autre mapfile soit pour utiliser ses symboles, soit pour utiliser ses couches. Exemple :

  MAP
   NAME 'include'
   EXTENT 0 0 500 500
   SIZE 250 250
   INCLUDE "include_symbols.map"
   INCLUDE "include_layer.map"
  END

Divers

 

  • Réécriture de GEOS pour utiliser l’API en C et de nouvelles méthodes ;
  • Les méthodes GEOS portées dans PHP MapScript (seulement dans SWIG MapScript auparavant) ;
  • Support de Web Map Context (WMC) 1.1.

 


Site officiel : La page des RFC
Site officiel : La planification des sorties
Site officiel : La page de téléchargement des versions béta
Site officiel : L'historique des corrections de bugs
Site officiel : Comment migrer d'une version 4.8.x à la version 4.10

Commentaires

Poster un nouveau commentaire

Le contenu de ce champ sera maintenu privé et ne sera pas affiché publiquement.