2016-04-28 5 views
1

Die Frage ist am nächsten dazu post. Aber es scheint, dass es nicht gelöst wurde (und ich kann dazu nichts sagen), ich würde gerne mehr Informationen geben.Openlayers Angularjs zeigt immer GeoJSON Point bei [0,0]

Erstens, ich bin mit Inline GeoJSON, versuchen einige zufällige Punkte zu vergeben, zB:

{ 
     "type": "Feature", 
     "properties": {}, 
     "geometry": { 
      "type": "Point", 
      "coordinates": [ 
         99.140625, 
         9.44906182688142 
         ] 
     } 
}; 

Das Ergebnis ist immer auf [0,0]. Es hat nichts mit Längen- und Breitengrad zu tun.

Übrigens ist das Beispiel vom Autor eine Grenze, die nach dem Test auch nicht angezeigt wird. Aber hier würde ich gerne zuerst einen einzelnen Punkt testen.

Was habe ich vermisst?

Antwort

0
"source": { 
"type": "GeoJSON", 
"geojson": { 
    "object": { 
    "type": "FeatureCollection", 
    "features": [ 
     { 
     "type": "Feature", 
     "id": "op", 
     "properties": { 
      "name": "aaa" 
     }, 
     "geometry": { 
      "type": "Point", 
      "coordinates": [ 
      -9.520376, 
      38.231155 
      ] 
     } 
     } 
    ] 
    }, 
    "projection": "EPSG:4326" 
} 

Offenbar hat es mit dem Vorsprung Sie auf der Karte zu tun asign, ist es notwendig, die Projektionsinformationen angeben! Dank pavlos als sein Code Hinweise etw.

0

Ich weiß nicht, was der Rest Ihres Codes ist, aber die Geojson, die Sie bereitstellen, funktioniert gut.

Check diese Schnipsel

var format = new ol.format.GeoJSON(); 
var myGeoJsonFeatures = format.readFeatures(
myGeoJson, 
{featureProjection: 'EPSG:3857'} 
); 
vector.getSource().addFeatures(myGeoJsonFeatures); 

und eine Arbeits Geige fiddle.

Vielleicht

+0

Hallo, der normale OpenLayers funktioniert. Meine Frage betrifft Openlayers in AngularJS. – zeroflaw

+0

Hallo pavlos, danke für deinen Code übrigens. Ich poste die Antwort. Die Projektionsinfo ist mit anzugeben! – zeroflaw

Verwandte Themen