OpenLayers: analysiert GeoJSON Punkte immer anzeigen bei Koords(0 , 0)
dies ist das erste mal, wenn ich mit OpenLayers und ich verstehe nicht, was ich falsch mache.
Ich versuche anzeigen, um eine einfache Punkt-analysiert von GeoJSON. Die Daten zu sein scheint korrekt analysiert (ich habe mit der Konsole), aber was auch immer Punkt, den ich geben, es zeigt immer an einer position, die ich denke, werden LonLat(0,0) auf meiner Vektor-Ebene.
Was mache ich falsch ?
var map, basislayer, placesLayer, geojsonParser ; //Daten unten wurden vereinfacht und reformated um die Lesbarkeit zu verbessern var geojsonData = { "type":"Feature", "geometrie": { "type":"Point", "Koordinaten":[-4.0280599594116,5.3411102294922] }, "Eigenschaften": { "id":273, "name":"ABIDJAN" } }; $(document).bereit(Funktion(){ map = new OpenLayers.Map('map'); basislayer = new OpenLayers.Schicht.OSM(); placesLayer = new OpenLayers.Schicht.Vector(); geojsonParser = new OpenLayers.Format.GeoJSON(); placesLayer.addFeatures(geojsonParser.Lesen(geojsonData)); Karte.addLayers([basislayer,placesLayer]); Karte.setCenter( new OpenLayers.LonLat(-4, 5.3).transform( new OpenLayers.Projection("EPSG:4326"), Karte.getProjectionObject() ), 5 ); }); //Dokument bereit
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist die richtige Lösung:
Quelle: https://gist.github.com/1118357
Hallo, es klingt wie Sie brauchen, um zu transformieren, die long/lat coordinaites in die korrekte Anzeige der Koordinaten:
Können Sie entweder erklären, die Projektionen, und dann verwandeln Sie Ihre geometrie-feature:
Oder die Karte Holen Projektion "on the fly" more like this:
Natürlich, wenn Sie mit einer anderen Eingangs-Projektion von mir ändern "ESPG:4326" auf das, was Sie benötigen.
HTH
C
EDIT:
In Ihrem Fall würden Sie brauchen, um etwas zu schreiben wie: