Расширенные геометрические объекты GeoJSON
Azure Maps предоставляет список эффективных API для поиска в рамках географических функций или с их использованием. Эти API соответствуют стандартной спецификации GeoJSON, представляющей географические функции.
Спецификация GeoJSON поддерживает только следующие геометрические объекты:
- GeometryCollection
- LineString
- MultiLineString
- MultiPoint
- MultiPolygon
- Point
- Многоугольник
Некоторые API Azure Maps поддерживают геометрические объекты, которые не входят в состав спецификации GeoJSON. Например, API Поиск внутри геометрического объекта поддерживает круги и многоугольники.
В этой статье приводится подробное объяснение того, как Azure Maps расширяет спецификацию GeoJSON для представления определенных геометрических объектов.
Круг
Спецификация GeoJSON не поддерживает геометриюCircle
. Объект GeoJSON Point Feature
используется для представления круга.
Геометрический объект Circle
, представленный с помощью объекта GeoJSON Feature
, должен содержать следующие координаты и параметры:
Координата | Свойство |
---|---|
Центр | Центр круга представлен с помощью объекта 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
используется для представления прямоугольника. Расширение Rectangle в основном используется модулем инструментов рисования веб-пакета SDK.
Геометрический объект Rectangle
, представленный с помощью объекта GeoJSON Polygon Feature
, должен содержать следующие координаты и параметры:
Координата | Свойство |
---|---|
Углы | Углы прямоугольника представлены с помощью координат объекта GeoJSON Polygon . Должно быть пять координат: по одной для каждого угла. И пятая координата, совпадающая с первой координатой в целях замыкания контура многоугольника. Предполагается, что эти координаты выравниваются и что разработчик может повернуть их по мере необходимости. |
Подтип | Геометрический объект "прямоугольник" также должен содержать свойство subType . Это свойство должно быть частью GeoJSON Feature свойств, а его значение должно быть прямоугольником. |
Пример прямоугольника
{
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": [[[5,25],[14,25],[14,29],[5,29],[5,25]]]
},
"properties": {
"subType": "Rectangle"
}
}
Следующие шаги
Узнайте подробнее о данных GeoJSON в Azure Maps:
Ознакомьтесь с глоссарием распространенных технических терминов, связанных с Azure Maps и анализирующими расположение приложениями: