Страница 1 из 1

Как скопировать часть линии с одного слоя в другой

Добавлено: 17 ноя 2020, 11:20
Tereha
Уважаемые Гуру!
Есть 2 слоя дорог multiLineString - дороги и ремонтыДорог(). Как вырезать участок дороги с 1-10 км из первого слоя и вставить в geom второго слоя?
Спасибо!

Re: Как скопировать часть линии с одного слоя в другой

Добавлено: 19 ноя 2020, 17:25
Svility
Tereha писал(а):
17 ноя 2020, 11:20
Уважаемые Гуру!
Есть 2 слоя дорог multiLineString - дороги и ремонтыДорог(). Как вырезать участок дороги с 1-10 км из первого слоя и вставить в geom второго слоя?
Спасибо!
Если на скорую руку, то можно так:

Код: Выделить всё

SELECT id_road, name, ST_Line_SubString(linestring, km_start, km_end) as geom 
FROM (SELECT ST_Transform(ST_LineMerge(geom),32637) as linestring, 
	1/st_length_spheroid(geom, 'SPHEROID["WGS84",6378137,298.25728]') as km_start, 
	10000/st_length_spheroid(geom, 'SPHEROID["WGS84",6378137,298.25728]')  as km_end, 
id_road, name
FROM "public".road_linestring
WHERE id_road=20000644644
) as foo

Re: Как скопировать часть линии с одного слоя в другой

Добавлено: 30 ноя 2020, 16:57
Tereha
Спасибо, огромное!