1. 程式人生 > 實用技巧 >GeoJSON擴充套件幾何圖形格式

GeoJSON擴充套件幾何圖形格式

Azure Maps 提供了一個功能強大的 Api 列表,用於在地理功能內進行搜尋。 這些 Api 遵循表示地理功能的標準 GeoJSON 規範

GeoJSON 規範僅支援以下幾何圖形:

  • GeometryCollection

  • LineString

  • MultiLineString

  • MultiPoint

  • MultiPolygon

  • Polygon

某些 Azure Maps Api 接受不屬於 GeoJSON 規範的幾何。例如, 幾何圖形內的搜尋 接受圓圈和多邊形。

本文提供了有關 Azure Maps 如何擴充套件 GeoJSON 規範來表示某些幾何圖形的詳細說明。

圓形

Circle GeoJSON 規範不支援該幾何圖形。我們使用 GeoJSON Point Feature 物件來表示圓。

Circle使用物件表示的幾何圖形 GeoJSON Feature 必須 包含以下座標和屬性:

  • Center

    圓的中心使用 GeoJSON Point 物件表示。

  • 半徑

    圓形的 radius 使用 GeoJSON Feature 的屬性表示。 半徑值以米為單位,並且其型別必須為 double

  • 子型別

    圓形幾何圖形還必須包含 subType 屬性。 此屬性必須是的屬性的一部分 GeoJSON Feature ,並且其值應為 圓圈

示例

下面是使用物件表示圓的方式 GeoJSON Feature

。 讓我們將圓圈置於緯度:47.639754 和經度:-122.126986,併為其分配一個等於100計量的半徑:

JSON複製

{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [-122.126986, 47.639754]
},
"properties": {
"subType": "Circle",
"radius": 100
}
}

矩形

Rectangle GeoJSON 規範不支援該幾何圖形。我們使用 GeoJSON Polygon Feature 物件來表示矩形。 矩形擴充套件主要由 Web SDK 的 "繪圖工具" 模組使用。

Rectangle使用物件表示的幾何圖形 GeoJSON Polygon Feature 必須 包含以下座標和屬性:

  • 內角

    使用物件的座標表示矩形的角 GeoJSON Polygon 。 應該有五個座標,每個角一個。 與第五個座標相同,用於關閉多邊形環。 假定這些座標對齊,開發人員可以根據需要對其進行旋轉。

  • 子型別

    矩形幾何圖形還必須包含 subType 屬性。 此屬性必須是的屬性的一部分 GeoJSON Feature ,並且其值應為 矩形

示例

JSON複製

{
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": [[[5,25],[14,25],[14,29],[5,29],[5,25]]]
},
"properties": {
"subType": "Rectangle"
}
}

轉自  https://docs.microsoft.com/zh-cn/azure/azure-maps/extend-geojson