Lat Lon aus Nominatim in Openlayers nutzen
Geschrieben von ls-sim (Gast) am 07. Juli 2017 23:39:31: [flux]
Hallo zusammen,
ich habe eine Karte erstellt die eine Adresse anzeigen soll die ich mittels Nominatim auslese. Leider schaffe ich es nicht die Karte richtig zu zentrieren. Ich mutmasse dass dies an der Projektion liegt. Die Adresse wird aus einer MySQL Datenbank ausgelesen und in den Javatext eingefügt. Wenn ich z.B. die LatLon aus der GeoLocation des Browsers nutze Funktioniert das Script. So wie unten landet das Center in Afrika.
$(document).ready(function() {$("#daten").load("http://nominatim.openstreetmap.org/search?q=adresse&format=xml&polygon_svg=1&addressdetails=1", function() { var␣box=$("#daten").find("place").attr("boundingbox"); var␣lat=$("#daten").find("place").attr("lat"); var␣lon=$("#daten").find("place").attr("lon"); var␣esStyle␣=␣new␣ol.style.Style({ image:␣new␣ol.style.Icon(/**␣@type␣{olx.style.IconOptions}␣*/␣({ anchor:␣[13,␣16], anchorXUnits:␣'pixels', anchorYUnits:␣'pixels', src:␣'bg/es.png' })) }); var␣esIcon=new␣ol.Feature({ geometry:␣new␣ol.geom.Point(ol.proj.transform([lat,lon],'EPSG:4326','EPSG:3857')), name:␣'Test' }); esIcon.setStyle(esStyle); esIcon.setId("esIcon");
var␣esSource␣=␣new␣ol.source.Vector({ features:␣[esIcon] });
var␣esLayer␣=␣new␣ol.layer.Vector({ source:␣esSource }); var␣rasterLayer␣=␣new␣ol.layer.Tile({source:new␣ol.source.OSM()});
var␣map␣=␣new␣ol.Map({ layers:␣[rasterLayer,␣esLayer], target:␣document.getElementById('map'), view:␣new␣ol.View({ center:␣ol.proj.fromLonLat([lon,lat]), zoom:␣3 }), logo:logoElement });
}); });
Bin für jede Hilfe Dankbar!
Antworten:
- Re: Lat Lon aus Nominatim in Openlayers nutzen · wambacher (Gast) · 08.07.2017 01:11 [flux]
- Re: Lat Lon aus Nominatim in Openlayers nutzen · axelr (Gast) · 08.07.2017 02:40 [flux]
- Re: Lat Lon aus Nominatim in Openlayers nutzen · ls-sim (Gast) · 08.07.2017 11:26 [flux]