Определение параметров МСК для mapinfow.prj

В продолжении статьи МСК и MapInfow.prj, приведу описание простого алгоритма для определения параметров неизвестной местной системы координат, именно параметров для описания МСК в файле mapinfow.prj.
Описываемый алгоритм основывается только на практическом опыте и не претендует на абсолютную точность и универсальность. Алгоритм заключается в подборе осевого меридиана определенной зоны МСК.
Итак, для определенного района работ дано:

  • имеется таблица с проекцией, неважно какой именно (долгота-широта, UTM) с двумя точками, назову их A и B, в районе меридиана M;
  • имеется таблица в план-схеме, с теми же двумя точками A, B и координатами в метрах.

Выполняю следующие действия с использованием MapBasic:

  1. открываю таблицы в проекции (UTM.tab) и в план-схеме (MSK.tab);
  2. задаю погрешность E, например 3 сантиметра, для выполнения расчётов длин отрезков;
  3. рассчитываю расстояние Rmsk между точками A и B в таблице MSK;
  4. предположу, что определяемая мной зона трех-градусная, и в таблице UTM шагну на запад от меридиана M на 2 градуса, скажем так, «с запасом»;
  5. от меридиана (M-2) начну двигаться на восток, всего на 3 градуса, с шагом 1 минута;
  6. для каждого шага в одну минуту, буду устанавливать текущий меридиан в качестве осевого и рассчитывать расстояние Rprj между точками A и B в таблице UTM;
  7. если (Rmsk - Rprj) меньше E, считаю необходимые смещения по долготе и широте и вот текущее значение меридиан плюс смещения и есть претенденты на искомые параметры!

Как это выглядит на практике с использованием программы set4msk.
Открываю в MapInfo таблицы
utm.tab (UTM зона 40, Северное полушарие (WGS 84)) с двумя точками

Point 435481.33 6095581.03
Symbol (35,0,12)
Point 436863.59 6094610.6
Symbol (35,0,12)

и msk.tab (План-схема (метры)) с двумя точками

Point 1361386.82 688642.02
Symbol (35,0,12)
Point 1362796.38 687710.47
Symbol (35,0,12)

Запускаю программу set4msk.mbx. Указываю параметры в первом диалоговом окне.

Параметры программы set4msk

В следующем окне параметров устанавливаю 54 меридиан вручную. Частный случай — так как предлагаемый программой 53 выходит за пределы UTM зона 40 таблицы utm.tab.
Параметры программы set4msk

Далее программа будет перебирать-пробовать в качестве осевого меридиана зоны искомой МСК от 54 до 57 с шагом в одну минуту. Как только расстояние между точками в проекции сравняется с расстоянием в план-схеме, в рамках указанной точности, программа считает необходимые смещения по долготе-широте и выдает результат расчетов.
Результат работы программы в окне сообщений MapInfo.

Начало процесса подбора параметров.
=== Найдено решение ===
Осевой меридиан: 55.03333333333
Смещение по долготе: 1300000
Смещение по широте:-5409414.7
Процесс завершен.

Остается в файл mapinfow.prj добавить две строки

"--- МСК ХХ ---"
"Зона 1", 8, 1001, 7, 55.03333333333, 0, 1, 1300000, -5409414.70

Программу set4msk.mbx можно скачать вместе с исходным кодом бесплатно на странице проекта set4msk.

© Бирючков Д.А. 2011

Социальные комментарии Cackle