#1 Mon 25 October 2010 10:30
- kantelise
- Juste Inscrit !
- Date d'inscription: 25 Oct 2010
- Messages: 1
Probleme d'affichage de carte avec mapserver/fusion
Bonjour,
Dans le cadre de mon sujet de mémoire, je dois mettre en place une application de webmapping. Apres mes recherches j'ai opté pour mapserver et fusion. Étant novice dans le domaine, j'ai voulu simplement affiché les cartes que j'avais a ma disposition en changeant le contenu d'un mapfile gmap75.map en ajoutant une couche limite_province_plateau. Mais la couche ne s'affiche pas. Je ne sais s'il y a des traitement spécifiques a faire pour que je puisse afficher cette couche.
Voici le contenu du mapfile:
Code:
MAP NAME GMAP_DEMO STATUS ON SIZE 400 300 SYMBOLSET ../etc/symbols.txt EXTENT -2200000 -712631 3072800 3840000 UNITS METERS SHAPEPATH "../data" IMAGECOLOR 255 255 255 FONTSET ../etc/fonts.txt # # Start of web interface definition # WEB MINSCALE 2000000 MAXSCALE 50000000 # # On Windows systems, /tmp and /tmp/ms_tmp/ should be created at the root # of the drive where the .MAP file resides. # IMAGEPATH "/ms4w/tmp/ms_tmp/" IMAGEURL "/ms_tmp/" END # # Start of reference map # REFERENCE IMAGE images/keymap.png EXTENT -2200000 -712631 3072800 3840000 STATUS ON COLOR -1 -1 -1 OUTLINECOLOR 255 0 0 SIZE 120 90 END # # Start of legend # LEGEND KEYSIZE 18 12 LABEL TYPE BITMAP SIZE MEDIUM COLOR 0 0 89 END STATUS ON END # # Start of scalebar # SCALEBAR IMAGECOLOR 255 255 255 LABEL COLOR 0 0 0 SIZE SMALL END SIZE 150 5 COLOR 255 255 255 BACKGROUNDCOLOR 0 0 0 OUTLINECOLOR 0 0 0 UNITS kilometers INTERVALS 5 STATUS ON END QUERYMAP STYLE HILITE COLOR 255 0 0 END # # Start of layer definitions # LAYER NAME bathymetry METADATA "DESCRIPTION" "Elevation/Bathymetry" END TYPE RASTER STATUS ON DATA bath_mapserver.tif END LAYER NAME land_fn METADATA "DESCRIPTION" "Foreign Lands" END TYPE POLYGON STATUS ON DATA land_fn CLASS NAME "Foreign Lands" STYLE COLOR 240 240 240 OUTLINECOLOR 199 199 199 END END END # layer LAYER # la couche qui ne s'affiche pas NAME limite_province_plateau METADATA "DESCRIPTION" "limite" END TYPE POLYGON STATUS ON DATA limite_province_plateau CLASS NAME "Limite province" STYLE COLOR 240 240 240 OUTLINECOLOR 199 199 199 END END END # layer END # Map File
Pouvez vous m'aider?
Hors ligne
#2 Mon 25 October 2010 23:57
Re: Probleme d'affichage de carte avec mapserver/fusion
Bonjour,
Vous devriez trouver un peu plus d'aide ici
Bonne chance,
Bruno
Hors ligne
#3 Tue 26 October 2010 21:49
- HansTrapp68
- Participant occasionnel
- Lieu: Lautenbach
- Date d'inscription: 21 Jan 2009
- Messages: 31
- Site web
Re: Probleme d'affichage de carte avec mapserver/fusion
Bonsoir,
La syntaxe du mapfile est correcte du moins au niveau du layer qui ne veut pas s'afficher. Il n'y a pas un problème du coté de l'extent ? Vos couches se superposent correctement ? (faire un test sous QGis par exemple)
Après, je suppose qu'il faut également déclarer le calque sous Fusion...
Bonne continuation
PS Bruno: vous avez du oublier de poster le lien qui va bien :-)
Dernière modification par HansTrapp68 (Tue 26 October 2010 21:51)
L'intelligence artificielle n'a aucune chance face à la stupidité naturelle
Hors ligne
#4 Thu 01 December 2011 16:56
- Sefoun
- Participant actif
- Date d'inscription: 17 Aug 2010
- Messages: 61
Re: Probleme d'affichage de carte avec mapserver/fusion
Bonjour, je deterre ce sujet car il s'approche de mon problème.
Tout comme Kantelise, j'ai voulu voir ce que pouvais donner une application comme fusion sur un affichage de carte simple, quitte à essayer de rajouter de widget par la suite si besoin.
J'ai donc suivi le tuto que j'ai trouvé à cette adresse : http://trac.osgeo.org/fusion/wiki/MapServerTutorialFr sans cherché à remplacer le mapfile du tuto par le miens.
J'ai donc copié les dossiers demandés dans une arborescence similaire à celui indiqué dans le tuto dans mon serveur local (j'ai installé ms4w).
Dans le fichier ApplicationDefinition.xml j'ai modifié le chemin du mapfile pour que cela corresponde à mon arborescence, bref j'ai tout fait comme il fallait (selon moi).
Mais en essayant d'affiché le résultat dans mon navigateur ça coince... il y a les cadres où doivent s'insérer la carte, la légende, et les outils qui s'affichent bien mais il n'y à rien dedans...
En utilisant l'outil de developpement de IE9 et son outil de débogage pour les scripts, ça m'annonce une erreur dans le fichier Map.js de Fusion:
SCRIPT5007: Impossible d’obtenir la valeur de la propriété « maps » : objet null ou non défini
Map.js, Ligne 149 Caractère 23
dans le détails :
Code:
146 //create the 'Map' layer widgets defined in the MapGroup 147 this.aMaps = []; 148 this.mapGroup = mapGroup; 149 for (var i=0; i<mapGroup.maps.length; ++i) { 150 var mapTag = mapGroup.maps[i]; 151 if (Fusion.Maps[mapTag.type]) { 152 this.aMaps[i] = eval("new Fusion.Maps."+mapTag.type+"(this,mapTag)"); 153 this.layerRoot.addGroup(this.aMaps[i].layerRoot); 154 155 } else { 156 //TODO: we can add more OpenLayers layers ... 157 } 158 }
Pour moi 2 explications :
- j'ai mal défini le chemin du mapfile dans le fichier ApplicationDefinition.xml ce qui expliquerais pourquoi l'objet "maps" est non défini ou null...
Code:
<?xml version="1.0" encoding="UTF-8"?> <ApplicationDefinition xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xsi:noNamespaceSchemaLocation="ApplicationDefinition-1.0.0.xsd"> <MapSet xsi:type="MapSetType">x <MapGroup id="mapserver" xsi:type="MapType"> <Map xsi:type="MapLayerType"> <Type>MapServer</Type> <SingleTile>true</SingleTile> <Extension> <MapFile>/ms4w/Apache/htdocs/gmap/htdocs/gmap75.map</MapFile> </Extension> </Map> </MapGroup> </MapSet>
C'est le cas ?
/ms4w/Apache/htdocs/ est le répertoire web pour Apache.
- Ou alors il y a carrement un soucis avec le fichier Map.js qui se trouve dans le dossier lib de fusion mais alors je ne sais pas lequel puisque je n'y ai pas touché.
Si vous avez une idée je suis preneur parceque à part revérifié le chemin du mapfile je tourne un peu en rond, mes connaissances en javascript sont trop limités.
Dernière modification par Sefoun (Thu 01 December 2011 16:58)
Hors ligne
#5 Mon 05 December 2011 16:34
- Sefoun
- Participant actif
- Date d'inscription: 17 Aug 2010
- Messages: 61
Re: Probleme d'affichage de carte avec mapserver/fusion
Re bonjour,
Petit up, il n'y a pas de webmappers aguerris dans les parages qui pourraient ne serait-ce que donner un début de solution à mon problème ?
Please !
Hors ligne
#6 Tue 06 December 2011 08:26
- Laurent Jégou
- Participant assidu
- Lieu: Toulouse
- Date d'inscription: 5 Sep 2005
- Messages: 447
- Site web
Re: Probleme d'affichage de carte avec mapserver/fusion
Je vous conseille d'utiliser les outils de débogage de Firefox (firebug) ou de Chrome (developpers tools), qui vous indiqueront si les fichiers js sont bien tous chargés et la source du déclenchement d'erreur.
Enseignant-Chercheur en Géomatique
UT2J - Dept Géo / CNRS UMR LISST-Cieu / Master Sigma - Revue Mappemonde
Hors ligne
#7 Tue 06 December 2011 17:19
- Sefoun
- Participant actif
- Date d'inscription: 17 Aug 2010
- Messages: 61
Re: Probleme d'affichage de carte avec mapserver/fusion
L'outil de développement de IE9 n'est pas équivalent à l'outil de débogage de Firefox ou de Chrome ?
Dans le doute j'ai quand même installé Chrome et inspecter le code, resultat rien de neuf... il déclare la même erreur que j'ai indiqué dans mon 1er message, idem pour l'extension Firebug sous chrome.
A priori tous les scripts se chargent, enfin moi dans mon "template" pour fusion index.html je n'appel que le script fusion.js, c'est celui-ci qui doit appeler ensuite tous les autres dont Map.js où se situe visiblement le problème...
Hors ligne
#8 Wed 07 December 2011 11:43
- Laurent Jégou
- Participant assidu
- Lieu: Toulouse
- Date d'inscription: 5 Sep 2005
- Messages: 447
- Site web
Re: Probleme d'affichage de carte avec mapserver/fusion
Non, tous les outils de développement ne se valent pas, celui de Chrome permet par exemple un suivi des appels multiples de fonctions, pour remonter à la source du pb.
Enseignant-Chercheur en Géomatique
UT2J - Dept Géo / CNRS UMR LISST-Cieu / Master Sigma - Revue Mappemonde
Hors ligne