Bonjour à tous,
Je souhaite afficher le contenu d'un shapefile en utilisant MapServer avec Openlayers. J'ai réussit à le faire dans le cas où le type du layer est POLYGON mais je n'arrive pas à le faire quand le type du layer est LINE.
Voici les infos du fichier shape à afficher:
Voici le contenu du mapfile que j'ai écrit:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 INFO: Open of `C:\ms4w\Apache\htdocs\my_shape_files\shape_ams\EXP_SEGMENT_FONCTIONNEL.shp' using driver `ESRI Shapefile' successful. Layer name: EXP_SEGMENT_FONCTIONNEL Geometry: Line String Feature Count: 6 Extent: (633527.743437, 2517184.387950) - (669562.958005, 2556945.272294) Layer SRS WKT: (unknown) ID_SEGMENT: Real (24.5) ID_RESEAU: Real (24.5) TYPE_ETB_O: String (5.0) ID_ETB_ORI: Real (24.5) TYPE_ETB_E: String (5.0) ID_ETB_EXT: Real (24.5) CODE_OUVRA: String (30.0) ID_RAMONAB: Real (24.5) CLASSIFICA: String (80.0) LONGUEUR_S: Real (24.5) PME: Real (24.5) EXPL_DEGS_: String (80.0) COMMENTAIR: String (255.0) PK_INIT: Real (24.5) ID_ENTITE_: String (30.0) STATUT_CON: String (1.0) AUTEUR: String (80.0) DATE_DERNI: Date (10.0)
et enfin voici le contenu du fichier .html cotenant le code javascript de openlayers:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 MAP IMAGETYPE PNG EXTENT 633527.743437 2517184.387950 669562.958005 2556945.272294 SIZE 400 300 SHAPEPATH "/ms4w/Apache/htdocs/my_shape_files/shape_ams" IMAGECOLOR 255 255 255 LAYER NAME EXP_SEGMENT_FONCTIONNEL DATA EXP_SEGMENT_FONCTIONNEL TYPE Line STATUS DEFAULT CLASS NAME "AMS Example" STYLE COLOR 232 232 232 OUTLINECOLOR 32 32 32 END END END END
Quelqu'un a-t-il une idée de ce qui ne va pas ici dans mon code?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>MapServer Layer: AMS Example</title> <script src="../../lib/OpenLayers.js"></script> <script type="text/javascript"> var map, layer, mybounds; function init(){ map = new OpenLayers.Map("map"); layer = new OpenLayers.Layer.MapServer( "Exemple AMS", "http://localhost:8081/cgi-bin/mapserv.exe?map=/ms4w/Apache/htdocs/my_examples_MS/ams_exp.map", {layers: "EXP_SEGMENT_FONCTIONNEL", format: 'image/png', isBaseLayer: false, opacity: 1}); map.addLayer(layer); mybounds = new OpenLayers.Bounds(633527.743437,2517184.387950,669562.958005,2556945.272294); map.zoomToExtent(mybounds); map.addControl( new OpenLayers.Control.LayerSwitcher() ); } </script> </head> <body onload="init()"> <div id="title">MapServer Layer: AMS Example</div> <div id="map"></div> </body> </html>
Merci
Partager