@RobinBobinBarabek

Объясните мне как работает st_snap в postgis??

Прочитал документацию, пробую сделать примеры, но не получается.
SELECT ST_AsText(
    ST_Snap(poly,line, ST_Distance(poly,line)*10)
  ) AS polysnapped
FROM (SELECT
  ST_GeomFromText('POLYGON((30.59280395507813 60.100456776182845,30.45547485351563 59.992118742381244,30.60104370117188 59.93300042374631,30.82901000976563 60.06209914960289,30.69442749023438 60.13466696253271,30.59280395507813 60.100456776182845))') As poly,
       ST_GeomFromText('LINESTRING(30.778198242187504 60.098403034443926,30.85372924804688 59.89995826181929)') As line
	) As foo

Почему он мне возвращает тот же полигон без привязки линии?
Что за параметры передаются в скобках? я так понимаю, первый - основной полигон, второй - линия, полигон, который я хочу привязать, третий - это радиус который учитывается при привязке?
Что значит as polysnapped, as foo?
Как мне привязать например, вместо линии, другой полигон?
  • Вопрос задан
  • 88 просмотров
Пригласить эксперта
Ответы на вопрос 1
freeExec
@freeExec
Участник OpenStreetMap
Почему он мне возвращает тот же полигон без привязки линии?

Потому что у вас геометрии пересекаются и следовательно их дистанция 0, хоть её на 10, хоть на 100 умножай, привязки не будет.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы