MySQL ST_Buffer минимальный радиус

У меня есть серия полигонов, хранящихся в таблице MySQL, которые мне нужно вернуть как разнесенные полигоны, которые находятся на минимальном расстоянии от оригинала.

ST_Buffer Функция выполняет функцию, очень похожую на ту, которую я выполняю, однако расстояние между этим полигоном и оригиналом должно быть не меньше указанного значения расстояния.

В руководстве говорится:

ST_Buffer Возвращает геометрию, которая представляет все точки, чье расстояние от значения геометрии g равно меньше или равно на расстоянии d

Проблема, с которой я сталкиваюсь, заключается в том, что функция ST_Buffer возвращает полигоны, которые местами разрываются только на 2,6 нм вместо минимального расстояния 3 нм, которое я установил.

SELECT ST_AsGeoJSON(ST_Buffer(ST_ExteriorRing(boundary),0.05')) AS `extended_boundary` from boundaries'

Есть ли подобная функция, которая гарантирует минимальное расстояние? Неважно, если он пройдёт на небольшую величину, но он должен быть не меньше указанного расстояния.

EDIT / Решение: В итоге я создал базу данных Postgres, чтобы решить эту проблему с помощью библиотеки PostGIS и типа данных географии. Это кажется излишним — запускать его только для одной таблицы и запроса, но библиотеке MySQL не хватает необходимой функциональности.

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]