Если у меня есть
Linestring(1 2, 1 5, 1 9)
и
Point(1 3)
Есть ли какая-нибудь функция, которая может объединить линейную строку и точку, сохраняя порядок, чтобы результат был:
Linestring(1 2, 1 3, 1 5, 1 9)
postgis
point
linestring
merge
BorisT
источник
источник
Ответы:
Если LineString просто нужно разделить в позиции, ближайшей к данной точке, вы можете делать с ней все, что хотите (разбивает LineString в ближайшей точке к данной точке и впоследствии объединяет два сегмента)
Однако, если ваша точка не должна проецироваться на LineString, это не сработает.
источник
PostGIS имеет ST_AddPoint, который должен позволять вам делать это, хотя вам нужно будет указать, куда добавить точку.
Примеры:
источник