Size: a a a

спбгеотех

2019 April 24

SB

Svetlana Bagrova in спбгеотех
Ребятки, так как тут обсуждают и рещают довольно разнообразные задачи, возможно кто-то сможет мне помочь...

Итак,
Дано: полигональный слой по СПб
источник

o

oneonwar in спбгеотех
источник

SB

Svetlana Bagrova in спбгеотех
площадок исследования.
Проекция в QGIS создавалась пользовательская с параметрами трансформации Proj4: +proj=tmerc +lat_0=0 +lon_0=30 +k=1 +x_0=95942.17 +y_0=-6552810.0 +ellps=krass +towgs84=23.57,-140.95,-79.8,0,0.35,0.79,-0.22 +units=m +no_defs
МСК-64 СПб

Задача: в атрибутивной таблице создать столбцы с xy центров площадок в мск и WGS84
источник

SB

Svetlana Bagrova in спбгеотех
Собственно для мск это было более чем просто:
виртуальное поле (местоположение может меняться) с выражением 'x='+to_string(round(( x(centroid($geometry))),0))+' '+'y='+to_string(round(( y(centroid($geometry))), 0))
на выходе x=123685 y=82605
источник

SB

Svetlana Bagrova in спбгеотех
А вот для wgs никак не получается. Функция transform не работает с пользовательскими проекциями.
transform( x(centroid($geometry)); 'USER:100032'; 'EPSG:4326')
USER:100032 - пользовательская проекция
источник

SB

Svetlana Bagrova in спбгеотех
! transform( x(centroid($geometry)), 'USER:100032', 'EPSG:4326')
так вернее
источник

EB

Evgeniy Baryshkov in спбгеотех
Раз тебе пока не отвечают:
Можно просто слой перепроецировать в 4326.
Можно накодить в консольке.

Более элегантных способов не знаю, но наверное они существуют
источник

EB

Evgeniy Baryshkov in спбгеотех
Да, это если проекция верно составлена
источник

EK

Eduard Kazakov in спбгеотех
Вместо crs_auth_id пробовала писать собственно определение проекции в proj?
источник

EK

Eduard Kazakov in спбгеотех
Я так понимаю, что нужно чтобы на лету рассчитывались центроиды сразу в МСК и в географии
источник

SB

Svetlana Bagrova in спбгеотех
Evgeniy Baryshkov
Раз тебе пока не отвечают:
Можно просто слой перепроецировать в 4326.
Можно накодить в консольке.

Более элегантных способов не знаю, но наверное они существуют
не получится, так как тогда будут проблемы с координатами в мск-64
источник

SB

Svetlana Bagrova in спбгеотех
Eduard Kazakov
Вместо crs_auth_id пробовала писать собственно определение проекции в proj?
т.е. вместо 'USER...' писать именно определение проекции?
источник

EK

Eduard Kazakov in спбгеотех
Ага, тоже в кавычках.
источник

SB

Svetlana Bagrova in спбгеотех
Увы, не помогло
источник

SB

Svetlana Bagrova in спбгеотех
Я еще думала создать дубль слоя в другой проекции (напр 28406) и там уже пересчитывать координаты, а потом ссылаться на него атрибутивно. Но не знаю как связать геометрии... Чтобы при изменении одного менялся и второй.
источник

o

oneonwar in спбгеотех
я что то не очень понял можнт быть я сильно тупенький
источник

o

oneonwar in спбгеотех
вам надо перерисовать один полигон из петербурга в другом месте в москве?
источник

SB

Svetlana Bagrova in спбгеотех
МСК - местная систеема координат. Для Питера она МСК-1964 или МСК-64.
источник

SB

Svetlana Bagrova in спбгеотех
Ну сейчас конечно 73г используют. Но заказчики верны привычкам.
источник

o

oneonwar in спбгеотех
а
источник