Переход от одной системы координат к другой - реализация в программах
по адресу http://gis-lab.info/qa/cs2cs_implement.html
Цель статьи — показать, какие методы 7-параметрических преобразований реализованы в различных программах, и какие в них используются преобразования из систем координат, применяемых на территории России, в WGS 84.
Сравнительная таблица
В таблице представлена информация как о реализованных методах, так и о трансформациях «из коробки».
Программы | Методы | Наборы параметров | |||||
---|---|---|---|---|---|---|---|
Coordinate Frame |
Position Vector |
Pulkovo 1942 |
СК-42 (2001) |
СК-95 (2001) |
СК-42 (2008) |
СК-95 (2008) | |
ArcGIS | Да | Да | Да | Да | Да | Да | Да |
GeoCalculator by PHOTOMOD |
Да | Да | Да | Да* | Да* | Да | Да |
Geographic Calculator by Blue Marble Geo |
Да | Да | Да | Да | Да | Да | Да |
Global Mapper | Да* | Да | Да* | Нет | Нет | Нет | Нет |
GRASS | Нет | Да | Да | Нет | Нет | Нет | Нет |
MapInfo | Да | Нет | Нет | Нет | Нет | Нет | Нет |
PostGIS | Нет | Да | Нет | Да | Нет | Нет | Да |
PROJ.4 | Нет | Да | Нет | Да | Нет | Нет | Да |
QGIS | Нет | Да | Нет | Да | Нет | Нет | Да |
SAGA GIS | Нет | Да | Нет | Нет | Нет | Нет | Нет |
SNAP Desktop | Да | Нет | Нет | Нет | Нет | Нет | Да |
Topcon Tools | Да | Нет | Да | Да* | Нет | Нет | Нет |
В таблицу включены следующие преобразования:
Название | Код EPSG |
Имя EPSG |
Метод | Параметры | Источник |
---|---|---|---|---|---|
Pulkovo 1942 |
1254 | Pulkovo 1942 to WGS 84 (1) |
Geocentric translations |
28, -130, -95 | U.S. DMA TR8350.2 |
СК-42 (2001) |
1267 | Pulkovo 1942 to WGS 84 (17) |
Coordinate Frame |
23.92, -141.27, -80.9, 0.0, -0.35, -0.82, -0.12 | ГОСТ Р 51794-2001 |
СК-95 (2001) |
1281 | Pulkovo 1995 to WGS 84 (1) |
Coordinate Frame |
24.82, -131.21, -82.66, 0.0, 0.0, -0.16, -0.12 | ГОСТ Р 51794-2001 |
СК-42 (2008) |
5044 | Pulkovo 1942 to WGS 84 (20) |
Coordinate Frame |
23.57, -140.95, -79.8, 0.0, -0.35, -0.79, -0.22 | ГОСТ Р 51794-2008 |
СК-95 (2008) |
5043 | Pulkovo 1995 to WGS 84 (2) |
Coordinate Frame |
24.47, -130.89, -81.56, 0.0, 0.0, -0.13, -0.22 | ГОСТ Р 51794-2008 |
ArcGIS и другие
Некоторые программы интегрируют базу данных EPSG. К ним относятся ArcGIS от ESRI и Geographic Calculator от Blue Marble Geographics. При выборе проекции для неё из множества трансформаций нужно выбрать подходящую.
GeoCalculator by PHOTOMOD
Список датумов:
Имя | Параметры | Идентификация |
---|---|---|
Pulkovo 1942 to WGS 84 (1) | 28, -130, -95 | EPSG:1254 |
Пулково 1942 в WGS 84 | 23.9, -141.3, -80.9, 0, -0.371277,-0.849811, -0.12 | EPSG:1267* |
Пулково 1942 в WGS 84 (ГОСТ Р 51794-2008) | 23.57, -140.95, -79.8, 0, -0.349990, -0.789994, -0.22 | EPSG:5044 |
Пулково 1995 в WGS 84 | 24.8, -131.24, -82.66, 0, 0, -0.169137, -0.12 | EPSG:1281* |
Пулково 1995 в WGS 84 (ГОСТ Р 51794-2008) | 24.47, -130.89, -81.56, 0, 0, -0.129988, -0.22 | EPSG:5043 |
Параметры "Пулково 1942 в WGS 84" и "Пулково 1995 в WGS 84" близки к значениям ГОСТ Р 51794-2001, но не совпадают с ними.
Параметры "Пулково 1942 в WGS 84 (ГОСТ Р 51794-2008)" и "Пулково 1995 в WGS 84 (ГОСТ Р 51794-2008)" практически совпадают с оригиналом, но параметры вращения всё же чуть-чуть отличаются. Дело в том, что для этих датумов значения параметров вращения заданы в микрорадианах. С округлением. И это при том, что среди единиц измерения этих величин «секунды дуги» присутствуют и используются в определениях иностранных датумов.
Global Mapper by Blue Marble Geographics
При вводе пользовательского преобразования можно выбирать метод. Однако датумы в файл custom_datums.txt записываются со знаками метода Position Vector transformation.
Имя | Параметры | Идентификация |
---|---|---|
S-42 (Pulkovo 1942) | 28, -130, -95, 0, 0, 0, 0 | EPSG:1254* |
S-42 RUSSIA | 25.0, -141.0, -78.5, 0.0, -0.35, -0.736, 0.0 |
Список датумов СК-42 открывает "S-42 (Pulkovo 1942)", за которым следуют 12 датумов "S-42" с именами государств. Следует помнить, что датум "S-42 (Pulkovo 1942)" не является трансформацией. При его выборе для каждой точки в зависимости от географического положения будет использован один из датумов от "S-42 ALBANIA" до "S-42 RUSSIA". Если же точка не попадает в зону действия ни одного из них, будет применено преобразование EPSG:1254, которое недоступно пользователю для выбора.
На первый взгляд, "S-42 RUSSIA" идентично EPSG:15865 "Pulkovo 1942 to WGS 84 (16)". Однако здесь ошибка: знаки параметров вращения забыли поменять при копировании. Они соответствуют методу Coordinate Frame Rotation, а не Position Vector transformation.
GRASS
Использует библиотеку PROJ.4 в ряде модулей (r.proj, v.proj, m.proj). Файл datum.table содержит определения датумов с трансформацией по умолчанию. Метод Geocentric translation.
Короткое имя |
Название | Параметры | Идентификация |
---|---|---|---|
S-42 | Pulkovo_1942 | 28, -130, -95 | EPSG:1254 |
Файл datumtransform.table содержит альтернативные трансформации для датумов. Параметры задаются в формате PROJ.4: "towgs84=…". Там можно найти несколько наборов S-42 для стран Восточной Европы.
MapInfo Professional by Pitney Bowes
Программа использует метод Coordinate Frame Rotation.
Номер | Имя | Эллипсоид | Параметры | Идентификация |
---|---|---|---|---|
1001 | Pulkovo 1942 | Krassovsky | 24, -123, -94, -0.02, 0.25, 0.13, 1.1 | EPSG:1675 |
1013 | Russia SK42 | PZ90 | 23.92, -141.27, -80.9, 0, -0.35, -0.82, -0.12 | |
1014 | Russia SK95 | PZ90 | 24.82, -131.21, -82.66, 0, 0, -0.16, -0.12 |
Датум EPSG:1675 "Pulkovo 1942(83) to WGS 84 (1)" предназначен для использования на территории бывшей Восточной Германии. Поэтому как "Longitude / Latitude (Pulkovo 1942)", так и проекции семейства "Gauss-Kruger (Pulkovo 1942)" непригодны для использования на территории России.
После появления ГОСТ Р 51794-2001 были добавлены датумы 1013 и 1014. По недоразумению они были привязаны к эллипсоиду ПЗ-90, что делает их совершенно бесполезными.
PostGIS
Координатные преобразования основаны на PROJ.4.
Информация о координатных системах хранится в таблице spatial_ref_sys. Пара записей для примера:
auth_name | auth_srid | srtext | proj4text |
---|---|---|---|
EPSG | 4284 | GEOGCS["Pulkovo 1942", … ,TOWGS84[23.92,-141.27,-80.9,0,0.35,0.82,-0.12], … | +proj=longlat +ellps=krass +towgs84=23.92,-141.27,-80.9,0,0.35,0.82,-0.12 +no_defs |
EPSG | 4200 | GEOGCS["Pulkovo 1995", … ,TOWGS84[24.47,-130.89,-81.56,0,0,0.13,-0.22], … | +proj=longlat +ellps=krass +towgs84=24.47,-130.89,-81.56,0,0,0.13,-0.22 +no_defs |
PROJ.4
Библиотека PROJ.4 реализует метод Position Vector transformation.
Датумы в таблице epsg:
Имя | Параметры | Идентификация |
---|---|---|
Pulkovo 1942 | 23.92, -141.27, -80.9, 0, 0.35, 0.82, -0.12 | EPSG:1267 |
Pulkovo 1995 | 24.47, -130.89, -81.56, 0, 0, 0.13, -0.22 | EPSG:5043 |
QGIS
Программа использует библиотеку PROJ.4 практически как есть, если не считать отсутствия ряда проекций, используемых при построении мелкомасштабных карт.
QGIS интегрирует базу данных EPSG и позволяет при задании проекции выбирать подходящую трансформацию.
SAGA GIS
Программа использует библиотеку PROJ.4.
Файл saga_prj.srs для проекций, используемых на территории России, не содержит параметров преобразований датумов.
SNAP Desktop by ESA
Программа опирается на EPSG. Судя по знакам параметров TOWGS84[…] в описаниях проекций, реализован метод Coordinate Frame Rotation. Впрочем, это требует проверки.
Имя | Параметры | Идентификация |
---|---|---|
Pulkovo 1942 | -40.595, -18.55, -69.339, 2.508, -1.832, 2.611, -4.299 | EPSG:1274, EPSG:1679 |
Pulkovo 1995 | 24.47, -130.89, -81.56, -0.0, 0.0, -0.13, -0.22 | EPSG:5043 |
Датум EPSG:1274 "Pulkovo 1942 to LKS94 (1)", он же EPSG:1679 "Pulkovo 1942 to WGS 84 (2)", предназначен для использования на территории Литвы.
Topcon Tools by Topcon Positioning Systems
Программа использует метод Coordinate Frame Rotation.
Список датумов:
Имя | Параметры | Идентификация |
---|---|---|
PUK42 | 28, -130, -95, 0, 0, 0, 0 | EPSG:1254 |
SK42 | 23.9, -141.3, -80.9, 0.0, -0.35, -0.82, -0.12 | EPSG:1267* |
SK95 | 24.653, -129.136, -83.057, -0.06696, 0.00391, -0.12902, -0.175 |
Для SK42 параметры сдвига ∆X, ∆Y по сравнению с определением EPSG:1267 округлены до дециметров.