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

Вернуть в MapInfo оригинальную систему координат

Добавлено: 10 дек 2015, 14:45
tishsh
Добрый день!
Конвертирую в MapInfo формат TAB векторный слой, созданный с использованием ArcGis. Данным была присвоена СК95. При конвертации с помощью FME вылезла ошибка - MapInfo не знает такую систему координат. Я собиралась стереть информацию о присвоенной ск, сконвертировать данные без упоминаний о ск, открыть таблицу с проекцией "план-схема" и сохранить копию с указанием проекции.
Попробовала это порядок действий с данными в СК 42 - все закончилось не очень ))). Похоже я не понимаю принцип работы Mapinfo с системами координат. Может быть, кто-нибудь подскажет правильный алгоритм или скинет ссылку, где почитать? Спасибо!

Re: Вернуть в MapInfo оригинальную систему координат

Добавлено: 10 дек 2015, 15:44
paleogis
Часть ответа на Ваш вопрос есть в этой статье www.mapbasic.ru/mskprj

[ Сообщение с мобильного устройства ]

Re: Вернуть в MapInfo оригинальную систему координат

Добавлено: 10 дек 2015, 16:01
nadiopt
так а не проще перепроецировать шейп в какую-нибудь известную мапе СК? или прописать в mapinfow параметры нужной СК

Re: Вернуть в MapInfo оригинальную систему координат

Добавлено: 10 дек 2015, 16:19
tishsh
Дело в том, что я и собиралась прописать в mapinfow.prj пользовательскую систему координат, так как 7 параметров у меня есть. Но сначала хотела сконвертировать с неизвестной системой, а потом присвоить созданную пользовательскую. Навскидку, я не знаю как объяснить конвертеру, что этой пользовательской системе координат ArcGis соответствует такая-то пользовательская система координат MapInfo.
Но MI открывает файлы без прописанной прекции как схема-метры, что не соответствует неизвестной системе координат. Соответственно, мой вариант не подходит.

Re: Вернуть в MapInfo оригинальную систему координат

Добавлено: 10 дек 2015, 16:40
Донецков
А не проще в MapInfo открыть shp, при его открытии указать СК из перечня MapInfo, и уже потом его сохранить как tab ?

Re: Вернуть в MapInfo оригинальную систему координат

Добавлено: 10 дек 2015, 19:02
tishsh
Всем спасибо за ответы! Решение, как поступить с уже сконвертированным файлом, нашла в комментариях к данной статье http://www.mapbasic.ru/mskprj. Стандартными средствами присвоить таблице с ск "план-схема" пользовательскую ск нельзя, советуют использовать утилиту Transcoor.
Открытие напрямую shp в MapInfo также решит проблему, но я использую FME так как он позволяет пакетно конвертировать в tab из формата ESRI File Geodatabase.

Re: Вернуть в MapInfo оригинальную систему координат

Добавлено: 11 дек 2015, 08:33
Донецков
Стандартными средствами присвоить таблице с ск "план-схема" пользовательскую ск нельзя
- если использовать не tab, а mif, то самым "стандартным" и давно известным методом изменения план-схемы на проекцию является редактирование в любом текстовом редакторе по замене строки с описание координат на нужную, просто, но не совсем удобно, а для удобства и придумали утилиты типа Transcoor ...

Re: Вернуть в MapInfo оригинальную систему координат

Добавлено: 14 дек 2015, 17:39
Boris
tishsh писал(а): Открытие напрямую shp в MapInfo также решит проблему, но я использую FME так как он позволяет пакетно конвертировать в tab из формата ESRI File Geodatabase.
FME гораздо лучше конвертирует в MIF поскольку, если не указывать специально, то не делает никаких "лишних" преобразований координат, и не округляет, и не пересчитывает. Пишет один в один. В FME так же можно указать пользовательские системы координат, только муторно немного.
И MIF проще потом поправить пакетно, и еще раз прогнать через FME. Получится дольше, но он же все равно считает пакетно.
Но лучше и быстрее всего запустить ORG2ORG в пакетном режиме. Тем более, что начиная с 2.0 систему координат можно задавать напрямую:
Starting with GDAL 2.0, it is possible to override those bounds through two mechanisms.

specify a user-defined file that contain projection definitions with bounds. The name of this file must be specified with the MITAB_BOUNDS_FILE configuration option. This allows users to override the default bounds for existing projections, and to define bounds for new projections not listed in the hard-coded table in the driver. The format of the file is a simple text file with one CoordSys string per line. The CoordSys lines should follow the MIF specs, and MUST include the optional Bounds definition at the end of the line, e.g.

# Lambert 93 French bounds
CoordSys Earth Projection 3, 33, "m", 3, 46.5, 44, 49.00000000002, 700000, 6600000 Bounds (75000, 6000000) (1275000, 7200000)

It is also possible to establish a mapping between a source CoordSys and a target CoordSys with bounds. Such a mapping is specified by adding a line starting with "Source = " followed by a CoordSys (spaces before or after the equal sign do not matter). The following line should start with "Destination = " followed by a CoordSys with bounds, e.g.

# Map generic Lambert 93 to French Lambert 93, Europe bounds
Source = CoordSys Earth Projection 3, 33, "m", 3, 46.5, 44, 49, 700000, 6600000
Destination = CoordSys Earth Projection 3, 33, "m", 3, 46.5, 44, 49.00000000001, 700000, 6600000 Bounds (-792421, 5278231) (3520778, 9741029)