--- step-11/index.html 2023-07-02 13:20:09.119154723 +0000 +++ step-12/index.html 2023-07-02 13:20:09.119154723 +0000 @@ -1,6 +1,6 @@ <html> <head> - <title>Step 11: marker plus popup</title> + <title>Step 12: geometry layer</title> <script src="../OpenLayers.js"></script> <script src="../OpenStreetMap.js"></script> <script src="http://maps.google.com/maps/api/js?sensor=false"></script> @@ -71,6 +71,18 @@ map.setCenter(new OpenLayers.LonLat(lon, lat).transform(projLonLat,projMercator), zoom); overviewMap.maximizeControl(); + var layerGeometry = new OpenLayers.Layer.Vector("Gebiete",{projection: projMercator}); + map.addLayer(layerGeometry); + + var json_data = '{"type":"Polygon","coordinates":[[[946997.668901750002988,6804851.635990919545293],[947398.27435326797422,6805510.242152039892972],[947937.327855485025793,6806519.116099460050464],[947876.502885716035962,6806705.792200200259686],[948839.171578197972849,6807214.812279700301588],[948866.945791151025333,6806943.305583120323718],[948825.81323930202052,6806740.500387510284781],[948825.679655913030729,6806649.948161319829524],[948920.913480286952108,6806218.210386379621923],[949167.475020444951952,6805973.516733709722757],[949428.474698559031822,6805492.619279350154102],[949490.268147898023017,6805254.51523463986814],[949368.818583442945965,6804879.135642670094967],[949300.679923127987422,6804730.331076799891889],[949117.704076112015173,6804232.10446386039257],[948833.071270102052949,6803457.073904880322516],[948178.668511525029317,6803987.724127359688282],[947673.177835781942122,6804222.643158700317144],[946997.668901750002988,6804851.635990919545293]]]}'; + + var geojson_format = new OpenLayers.Format.GeoJSON(); + var geometry = geojson_format.read(json_data, 'Geometry'); + var vector = new OpenLayers.Feature.Vector(geometry); + layerGeometry.addFeatures(vector); + + map.zoomToExtent(layerGeometry.getDataExtent()); + markers = new OpenLayers.Layer.Markers("Markers"); map.addLayer(markers); @@ -98,12 +110,6 @@ }; marker.events.register("mousedown", feature, markerClick); markers.addMarker(marker); - - map.setCenter(new OpenLayers.LonLat(lon, lat).transform(projLonLat,projMercator), zoom); - - feature.popup = feature.createPopup(feature.closeBox); - map.addPopup(feature.popup); - feature.popup.hide(); } </script> </head>