[英]Convert a newly created polygon to GeoJSON in Leaflet
我通過在Web應用程序中單擊一個按鈕來創建不同大小的多邊形。
我還在對象內部添加了一些值作為嵌套對象,例如{properties:{status:'active'}}
。 然后,我運行多邊形的toGeoJSON()
方法,並獲得具有properties
和geometry
對象的對象。 properties
對象為空。
我的問題是如何將值添加到對象中,以便在轉換時將其傳遞給GeoJSON對象?
為它創建GeoJSON對象時,多邊形上的所有“額外”數據都會丟失。 只有多邊形的坐標才被帶入GeoJSON對象。 請參閱Leaflet源中layer / GeoJSON.js中的第213和171行。 在171行上,您可以看到創建了一個新對象,並且該對象具有一個稱為“屬性”的屬性,但該屬性與您的多邊形上與任何名為“屬性”的屬性無關。
創建GeoJSON對象后,您可以通過執行以下操作將屬性從“多邊形”復制到GeoJSON對象上的屬性對象中。 但是-我不確定GeoJSON規范中“屬性”對象的具體含義(如果有)。
var json = polygon.toGeoJSON();
L.extend(json.properties, polygon.properties)
InPursuits答案肯定對我有用...
var rect = L.rectangle(bounds).toGeoJSON();
L.extend(rect.properties, {
itemIndex: v.itemIndex
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.