Haritaya GeoJSON çokgen göstermeye çalışıyorum. Aşağıdaki verilerle openlayers tarafından sağlanan örnek kullandım, fakat sadece ikinci çokgen görüntülenir:OpenLayers haritaında görüntülenmeyen GeoJSON özellik koordinatları
var geojsonObject = {
"type": "FeatureCollection",
"crs": {
"type": "name",
},
"features": [
{
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": [[[103.92240800000013,21.69931],[100.93664,21.66959500000013],[108.031899,18.67076]]]
}
},
{
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": [[[-5e6, -1e6], [-4e6, 1e6], [-3e6, -1e6]]]
}
}
]
};
Ben haritası gibidir üzere GeoJSON'a ayrıştırmak ve eklemek için kullanıyorum kod aşağıdakiler:
var vectorSource = new ol.source.Vector({
features: (new ol.format.GeoJSON()).readFeatures(geojsonObject)
});
var vectorLayer = new ol.layer.Vector({
source: vectorSource,
style: styleFunction
});
Farklı türde koordinatlar fark ettim. İkinci sette, koordinatlar, anlamadığım ve ilk sette e
ile [-5e6, -1e6]
olarak temsil edilir - bu işe yaramaz - [103.92240800000013, 21.69931]
gibi görünürler.
Bu, poligonumun görüntülenmemesinin olası bir sebebi mi?
5e6, 5 x 10^6 - veya 5000000 anlamına gelir. Bkz. Https://en.wikipedia.org/wiki/Scientific_notation – Sander
Elbette, bu iyi bir fikir olmalı. İlk yazımı güncelleyeceğim – Kamzz
İkinci alan yaklaşık 2.000.000 x 2.000.000 adet - birincisi 4 x 8 adet. Her iki özellik aynı harita üzerinde görüntüleniyorsa, ilki en iyi ihtimalle çok küçük (ve muhtemelen büyük olan tarafından gizlenmiş) olarak görünecektir. Büyük alanı koddan çıkarırsanız ne olur? – Sander