Поддерживает ли Cosmos Db мультиполигоны? - PullRequest
0 голосов
/ 12 марта 2020

В документации сказано, что Cosmos поддерживает Multipolygons, но когда я хочу сделать запрос, используя его, я не получаю ожидаемого результата. Если я изменю мультиполигон на полигон, запрос будет работать как положено.

Это результат ST_ISVALIDDETAILED с мультиполигоном

Неверная позиция. Позиция должна быть представлена ​​массивом чисел. В массиве должно быть как минимум два элемента.

Это доказательство того, что мультиполигон не работает. Кто-нибудь мог работать с мультиполигонами?

Примечание : я использовал мультиполигон в качестве примера в документации. Я создал пространственный индекс для свойства.

{"path": "/ Region / Area /?", "Types": ["Point", "LineString", "Polygon", "Мультиполигон"]}

1 Ответ

1 голос
/ 12 марта 2020

После исследования я обнаружил, что пример документации плохо сформирован. Это пример =>

{
    "type":"MultiPolygon",
    "coordinates":[ [
        [52.0, 12.0],
        [53.0, 12.0],
        [53.0, 13.0],
        [52.0, 13.0],
        [52.0, 12.0]
    ],
    [
        [50.0, 0.0],
        [51.0, 0.0],
        [51.0, 5.0],
        [50.0, 5.0],
        [50.0, 0.0]
    ] ]
}

и является недействительным.

Это правильный гео Json =>

{
    "type":"MultiPolygon",
    "coordinates":[ [[
        [52.0, 12.0],
        [53.0, 12.0],
        [53.0, 13.0],
        [52.0, 13.0],
        [52.0, 12.0]
    ]],
    [[
        [50.0, 0.0],
        [51.0, 0.0],
        [51.0, 5.0],
        [50.0, 5.0],
        [50.0, 0.0]
    ]]]
}
...