#1 Mon 30 April 2012 16:09
- diouckk
- Juste Inscrit !
- Date d'inscription: 30 Apr 2012
- Messages: 5
Openlayers Mapserver
Bonjour
Je suis debutant dans le webmapping. Je voudrai afficher des pop up sur openlayers j ai pas d erreur mais ca m affiche rien quand je click sur la carte. Est ce que quelqu un pourrait m aider svp?
j'ai peu t etre un code qui beug
voici le code
<head>
<style type="text/css">
#map {
width: 800px;
height: 475px;
border: 1px solid black;
}
</style>
<title>OpenLayers opup</title>
<script src="../lib/OpenLayers-2.11/OpenLayers.js"></script>
<script type="text/javascript">
//============================================================================
// <!--Debut du code JS-->
//Fonctionnalités de la carte : Ajout des contrôles classiques---->
// options graph, zoom + apercu
//============================================================================
var map, layer;
function load() {
map = new OpenLayers.Map("map", {
controls:[
new OpenLayers.Control.Navigation(),
new OpenLayers.Control.PanZoomBar(),
new OpenLayers.Control.Permalink(),
new OpenLayers.Control.ScaleLine({geodesic: true}),
new OpenLayers.Control.Permalink('permalink'),
new OpenLayers.Control.MousePosition(),
new OpenLayers.Control.Attribution(),
new OpenLayers.Control.PanZoomBar(),
new OpenLayers.Control.OverviewMap(),
new OpenLayers.Control.MousePosition(),
new OpenLayers.Control.LayerSwitcher()],
projection: 'EPSG:4326',
displayProjection: new OpenLayers.Projection("EPSG:2154"),
maxExtent: new OpenLayers.Bounds(257408.019880,6696351.951313,437613.880120,6838856.848687),
maxResolution: 'auto',
units: 'm'
//numZoomLevels: 12,
});
//============================================================================
// Choix des couches & servers
//============================================================================
//var osmLayer = new OpenLayers.Layer.OSM("OpenStreetMap");
//map.addLayer(osmLayer);
commune = new OpenLayers.Layer.MapServer("commune", "http://localhost/cgi-bin/mapserv?map=/var/www/mapserver/mapfile/commune1.map&",
{layers:"commune",
projection: new OpenLayers.Projection("EPSG:2154"),
"transparent": false,
visibility: true});
map.addLayer(commune);
//============================================================================
// Fonction POP UP
//============================================================================
info = new OpenLayers.Control.WMSGetFeatureInfo({
url: "/cgi-bin/mapserv",
maxFeatures: 1,
title: 'Identify features by clicking',
queryVisible: true,
layers: [commune],
vendorParams: {
map: "commune.map",
},
eventListeners: {
getfeatureinfo: function(event) {
map.addPopup(new OpenLayers.Popup.FramedCloud(
"chicken",
map.getLonLatFromPixel(event.xy),
null,
event.text,
null,
true
)); //map.addPopup
} // getfeatureinfo
} // eventListeners
});
map.addControl(info);
info.activate();
//============================================================================
// ZOOM initial de l'étendue de la carte
//============================================================================
//map.setCenter(new OpenLayers.LonLat(-1,47), 8);
map.zoomToMaxExtent();
//============================================================================
// FIN du init
//============================================================================
};
</script>
</head>
<body onload="load()">
<div id='map' style='width: 50%; height: 75%;'>
</body>
</html>
Hors ligne
#2 Mon 30 April 2012 18:56
Hors ligne