2013-03-18 5 views
4

У меня есть геометрия многоугольника типа, я вычисляю минимальное расстояние POINT, может быть внутри геометрии многоугольника (составлено из 360 точек как замкнутая геометрия) или вне геометрии многоугольника с ST_Distance метод postgis, я получаю точное расстояние, когда POINT находится вне геометрии, но получает 0 как расстояние, если POINT находится внутри геометрии, я хочу минимальное расстояние от точки с ближайшей точкой геометрии полигона, находится ли POINT внутри геометрии или снаружи геометрия.Postgis ST_Distance (минимальный расчет расстояния)

ответ

4

Похоже, вы хотите расстояние до оболочки многоугольника или наружного кольца. Если у вас есть ПОЛИГОН, попробуйте найти расстояние до ST_ExteriorRing(poly_geom). Для MULTIPOLYGONs см. manual page for ST_ExteriorRing.

2

Если ваша точка находится внутри полигона, то ее расстояние от нее равно нулю. Похоже, вы хотите рассчитать расстояние от края многоугольника.

В этом случае вы действительно хотите создать геометрию, которая является линией, а не полигоном, которая совпадает с границей многоугольника. Тогда ваш ST_Distance от вашей точки к этой строке будет результатом, который вы ищете.

Смежные вопросы