Значительно количество таблиц ГИС MapInfo, виденных мною, были созданы в проекции
- работа с протяженным объектом, расположенном в нескольких зонах местной системы координат (МСК);
- необходимость перевода картографического материала, например, в
WGS-84 ; - принятие государственными органами власти решения о переходе на иную местную систему координат.
Конечно, существует целый ряд способов решения перечисленных проблем, но наиболее простой и корректный, с моей точки зрения — использование файла описаний систем координат mapinfow.prj. Укажу сразу первоисточники информации — это, естественно, Руководство пользователя MapInfo:
- для версии 8.5 это Глава 13 «Работа с системами координат и проекциями»;
- для версии 10.5 это Глава 14 «Работа с системами координат и проекциями».
Итак, mapinfow.prj это обычный текстовый файл, расположенный в каталоге MapInfo. Возьму в качестве примера три описания системы координат (СК), то есть три строки из файла mapinfow.prj.
- «Долгота / Широта (WGS 84)», 1, 104
«Долгота / Широта (WGS 84)» — название СК, отображаемое в окне интерфейса MapInfo «Выбор проекции»
1 — проекция «Долгота/Широта»
104 — топоцентрическая СК «World Geodetic System 1984 (WGS 84)» - «
План-схема (метры)», 0, 7
«План-схема (метры)» — название СК, отображаемое в окне интерфейса MapInfo «Выбор проекции»
0 — способ отображения объектов, при котором координаты объектов не привязаны к координатой системе Земли
7 — единица измерения «метры» - «МСК 02 — зона 1», 8, 1001, 7, 55.03333333333, 0, 1, 1300000, -5409414.70
«МСК 02 — зона 1» — название СК, отображаемое в окне интерфейса MapInfo «Выбор проекции»
8 — тип проекции «Поперечная Меркатора»
1001 — регион «Pulkovo 1942, Germany, Krassovsky»
7 — единица измерения «метр»
55.03333333333 — нулевая долгота «55 градусов 2 минуты»
0 — нулевая широта «0 градусов»
1 — масштабный множитель «1»
1300000 — восточное смещение «1300000 метров»
-5409414.70 — северное смещение «-5409414.70 метров»
Внимание! Следующей строки нет в стандартном файле mapinfow.prj.
Таким образом, если ваша таблица имеет любую топоцентрическую СК (Пулково 1942 — зона 10, или Долгота/Широта) и в mapinfow.prj имеется строка описания МСК «МСК 02 — зона 1» вы легко можете как отображать карту в координатах данной МСК, так и сохранить копию таблицы в координатах МСК. В меню MapInfo «Файл» => «Сохранить копию…» => «Проекция…»
При работе программы на MapBasic, вы можете динамически переключаться между различными СК, работая с одной и той же таблицей или картой. Ещё раз оговорюсь — при условии что ваши таблицы имеют топоцентрическую СК, а не «

Всё перечисленное выше актуально и для таблиц с координатами растровых изображений. Простой пример — если ваш растр зарегистрирован в координатах «Пулково 1942 зона 10» СК
С использованием указанной технологии, необходимым условием для работы с таблицами и картами в региональных, местных системах координат является определение параметров конкретной МСК — определение осевого меридиана и смещений по долготе и широте. Данный вопрос выходит за рамки этой статьи. Отмечу лишь, что региональные МСК обычно базируются на параметрах государственных систем координат 1963 или 1942 годов.
Отмечу проблему расчёта площадей и расстояний в различных топоцентрических системах координат. Суть проблемы — различные осевые меридианы для разных зон или СК. Простой пример:
- создаю таблицу p1942_10.tab, СК таблицы «GK зона 10 (Пулково 1942)»;
- создаю полигон с координатами
10364244.05 5765412.68
10365235.99 5765910.4
10365733.32 5765026.98
10364808.41 5764556.19 - сохраняю копию таблицы p1942_10.tab под именем msk02_01.tab, СК новой таблицы устанавливаю «МСК 02 — зона 1». Координаты полигона пересчитываются встроенными средствами MapInfo к новым значениям
1299303.26 354152.23
1300281.16 354676.47
1300802.09 353807.02
1299890.46 353311.5 - сравниваю значения площади полигона в разных СК (измерения производятся на плоскости)
для p1942_10.tab площадь равна 1’090’854.3 кв.м.
для msk02_01.tab площадь равна 1’090’365.2 кв.м.
итого разница составляет 489.1 кв.м.
Все закономерно, так как для первой таблицы значение осевого меридиана 57 градусов, а для второй 55 градусов 2 минуты. Один и тот же участок поверхности земного шара проецируется на разные меридианы, соответственно значения координат пересчитаны верно, но расстояния и следовательно площади изменяются. Практический совет — если вам важна точность вычислений — считайте самостоятельно по новым координатам или производите расчёты именно в той таблице, СК которой соответствует необходимым параметрам вычисления.
На практике периодически возникает задача перевода таблиц MapInfo из СК
Но вот если таблиц
Всем комфортной работы в MapInfo! :-)
© Бирючков Д.А. 2011