擴充的 GeoJSON 幾何

Azure 地圖服務提供許多強大的 API,能夠在地理特徵之內/依循地理特徵進行搜尋。 這些 API 遵守代表地理特徵的 GeoJSON 規格 標準。

GeoJSON 規格 僅支援下列幾何項目:

  • GeometryCollection
  • LineString
  • MultiLineString
  • MultiPoint
  • MultiPolygon
  • Point
  • Polygon

某些 Azure 地圖服務 API 接受不屬於 GeoJSON 規格的幾何。例如,搜尋內部幾何 API 會接受 Circle 和 Polygon。

本文詳細說明 Azure 地圖服務如何延伸 GeoJSON 規格來代表特定的幾何。

圓圈

GeoJSON 規格不支援 Circle 幾何。 使用 GeoJSON Point Feature 物件代表圓形。

使用 GeoJSON Feature 物件代表的 Circle 幾何必須包含下列座標和屬性:

座標 屬性
置中 圓形的中心是以 GeoJSON Point 物件表示。
半徑 圓形的 radius 是以 GeoJSON Feature 的屬性表示。 半徑值的單位是公尺,而且必須屬於型別 double
子類型 圓形幾何也必須包含 subType 屬性。 此屬性必須屬於 GeoJSON Feature 的屬性,其值應該是 Circle

圓形範例

以下是您如何使用 GeoJSON Feature 物件來代表圓形。 讓我們將圓形中央置於緯度:47.639754 和經度:-122.126986,並將半徑指派為等於 100 公尺:

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

矩形

GeoJSON 規格不支援 Rectangle 幾何。 使用 GeoJSON Polygon Feature 物件代表矩形。 矩形擴充主要是由 Web SDK 的繪圖工具模組所使用。

使用 GeoJSON Polygon Feature 物件代表的 Rectangle 幾何必須包含下列座標和屬性:

座標 屬性
邊角 矩形的邊角會使用 GeoJSON Polygon 物件的座標來表示。 座標應有五個,每個邊角一個座標。 且第五個座標會與第一個座標相同,才能封閉多邊環形。 假設這些座標是對齊的,且開發人員可能會視需求旋轉這些座標。
子類型 矩形幾何也必須包含 subType 屬性。 此屬性必須屬於 GeoJSON Feature 的屬性,它的值應該是矩形

矩形範例

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

下一步

深入了解 Azure 地圖服務中的 GeoJSON 資料:

檢閱與 Azure 地圖服務和位置智慧應用程式相關聯的常見技術詞彙: