So legen Sie die Projektion für GeoJSON in openlayers3?
Meine Absicht ist zum laden von GeoJSON-Daten und zeigt Sie auf der Karte. Koordinaten des features angegeben in GeoJSON sind normal lon/lat. Aus irgendeinem Grund openlayers ist, wodurch Sie mit der Projektion verwendet, die von der Karte und ohne Konvertierung.
//Underlying sat layer.
var world = new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
});
//GeoJSON data.
var geojsonObject = {
'type': 'FeatureCollection',
'features': [
{
'type': 'Feature',
'geometry': {
'coordinates': [ 50.07539747, 19.76809501 ],
'type': 'Point'
},
}
]
};
var vectorSource = new ol.source.Vector({
features: (new ol.format.GeoJSON()).readFeatures(geojsonObject)
});
var vectorLayer = new ol.layer.Vector({
source: vectorSource
});
//Map.
map = new ol.Map({
target: 'map',
layers: [world, vectorLayer],
view: new ol.View({
center: ol.proj.transform([37.41, 8.82], 'EPSG:4326', 'EPSG:3857'),
zoom: 2
})
});
Den Punkt gerendert wird in der Mitte der Karte. Indem Sie mehrere Punkte, die ich festgestellt, dass Sie sind in der Tat relativ zueinander verschieben, aber durch eine kleine Menge, die führt mich zu glauben, dass die aus irgendeinem Grund die Karte verwendet ein anderes Koordinatensystem für Sie.
Was ich versucht habe:
Einstellung crs
im GeoJSON, bietet defaultDataProjection
option zum formatieren. Ich benutze openlayers v3.8.2 und alle Lösungen, die ich online gefunden haben, sind sehr veraltet (und soweit ich sehen kann die API verwendet werden, um so besser, vielleicht sollte ich einfach wechseln Sie zu einem alten version).
Du musst angemeldet sein, um einen Kommentar abzugeben.
Einfach ein
featureProjection
zu Lesen features wie:UPDATE:
Beim Lesen der features von url ist sogar noch einfacher, OL ermöglicht die Konvertierung intern für Sie:
Demo - http://plnkr.co/edit/GvdVNE?p=preview
url
parameter, nehme ich an, dass ich zum download der Daten auf meine eigene, und es ist nicht möglich, nur die Projektion in die Quelle?