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

Восстановить намеренно искажённую СК

Добавлено: 28 май 2013, 17:25
Константин Силкин
Добрый день, коллеги!
В карте и слоях заказчиком намеренно установлена искажённая СК, которая при детальном рассмотрении оказалась МСК-48. Получается, что данные подготовлены в МСК-48, но потом многие параметры СК были обнулены. Понятно, что никакие трансформации не сработают. Надо просто подменить эту СК в слоях на МСК-48. Файл prj с параметрами МСК-48 имеется. Вопрос в том как это сделать средствами ArcGIS. Я сейчас делаю это путём экспорта слоя в shape-файл, подмены prj-файла и обратного импорта. Крайне хлопотное это дело. Особенно много рутины со слоем аннотаций. Хотелось бы узнать есть ли менее затратный способ

Re: Восстановить намеренно искажённую СК

Добавлено: 28 май 2013, 17:45
Slinger
путём экспорта слоя в shape-файл
А изначально где они у вас, в gdb ?

Re: Восстановить намеренно искажённую СК

Добавлено: 28 май 2013, 18:05
Константин Силкин
А изначально где они у вас, в gdb ?
Слои в lyr-файлах

Re: Восстановить намеренно искажённую СК

Добавлено: 28 май 2013, 18:07
Slinger
Эм, .lyr это ссылка на шейп, чаще всего. Содержит исключительно стилистику. В самом .lyr геометрии и семантики никогда не было.

Re: Восстановить намеренно искажённую СК

Добавлено: 28 май 2013, 18:13
Константин Силкин
Slinger писал(а):Эм, .lyr это ссылка на шейп, чаще всего. Содержит исключительно стилистику. В самом .lyr геометрии и семантики никогда не было.
Есть и mdb

Re: Восстановить намеренно искажённую СК

Добавлено: 28 май 2013, 19:17
Slinger
Ну это конечно хорошо, что у вас есть access'овская база, но что толку-то. Векторных данных в них нет, может быть только "семантика".

Выложите пример, что ли.

Re: Восстановить намеренно искажённую СК

Добавлено: 28 май 2013, 19:27
Константин Силкин
Slinger писал(а):Выложите пример, что ли.
Пример здесь
http://yadi.sk/d/byQe7IcA5GSek

Re: Восстановить намеренно искажённую СК

Добавлено: 28 май 2013, 20:01
dab
Константин, Вы же уже открыли тему с этим вопросом viewtopic.php?f=34&t=13711
Зачем дублировать то?

Re: Восстановить намеренно искажённую СК

Добавлено: 28 май 2013, 20:05
Константин Силкин
dab писал(а):Зачем дублировать то?
Там был общетеоретический вопрос. Я не собирался работать обязательно в ArcGIS. Здесь же я задал вопрос о том как решить возникшую проблему именно в этой системе, т.к. понял, что нормально, со всем форматированием экспортировать аннотации в shape-файл не смогу

Re: Восстановить намеренно искажённую СК

Добавлено: 28 май 2013, 22:05
Slinger
Хм, никогда не цеплял mdb, поэтому был уверен, что геометрии там быть не может. Мой косяк.

В любом случае решение простое. Открывайте ваш .mdb в Access'e, открывайте в нём таблицу GDB_SpatialRefs. Исправлять вам нужно шестую строчку (последнюю), вторую по счёту колонку "SRTEXT". Исправьте все цифири в соответствии с тем, как прописано в .prj, сохраняйте базу, закрывайте, открывайте ваши луры и они все будут в валидной проекции. Вернее проекция и так была нормальная, полноценная МСК, но теперь ещё и цифры правильные.

Re: Восстановить намеренно искажённую СК

Добавлено: 29 май 2013, 02:37
doujin
Зачем такие сложности, если есть корректный .prj файл. Задайте в своей базе каждому слою эту проекцию через инструмент Задать проекцию (Define Projection). Можно в пакетном режиме, что бы сразу всем.

Re: Восстановить намеренно искажённую СК

Добавлено: 29 май 2013, 08:17
Константин Силкин
Спасибо, Slinger и doujin! Ваши способы работают одинаково хорошо. Однако залезть в БД и подредактировать несколько записей в одной таблице оказалось значительно быстрее, чем пользоваться инструментом Define Projection, т.к. с пакетным режимом не разобрался