Конвертируйте напрямую multilinestring в UTM для упрощения в postgresql - PullRequest
0 голосов
/ 06 октября 2018

Представьте себе, у меня есть этот wkt:

MULTILINESTRING(
(59.6338836103678 36.3408616511151,59.6336405351758 36.3410074124113),
(59.648377513513 36.3329201331362,59.6481338515878 36.3326094998047,59.6478482801467 36.3322287937626)
)

Теперь я хочу упростить его, чтобы преобразовать его в UTM.

Возможно липреобразовать этот MULTILINESTRING непосредственно в PostgreSQL в UTM, а затем упростить его и, наконец, снова преобразовать в SRID=4326?

1 Ответ

0 голосов
/ 06 октября 2018

Должно работать без трансформации.Но если вы хотите сначала выполнить преобразование, то

select st_simplify(ST_Transform(ST_SetSRID(st_astext,4326),3857),1)

Объяснение: - преобразование st_transfrom из одного SRID в другое - st_geomfromtext - создание объекта геометрии, понятного для postGIS - Аргумент st_simplfy - это геометрия (geom) и допуск (большее значениеболее "простая" геометрия будет)

Если вы хотите вернуть объект как WKT, тогда используйте st_astext () или как st_asEWKT () - второй - с информацией SRID объекта.

Безтрансформация в метрическую SRID это было бы так

select st_simplify(ST_Transform(ST_SetSRID(st_astext,4326),3857),0.000001)
...