Алгоритм преобразования проекции

Системы координат, проекции, преобразования, привязка
Аватара пользователя
Selforg
Участник
Сообщения: 50
Зарегистрирован: 16 окт 2008, 21:16
Репутация: 0
Контактная информация:

Алгоритм преобразования проекции

Сообщение Selforg » 07 ноя 2008, 11:15

Есть карта СНГ в конической равноугольной (СК Пулкова 42).
Я хочу её отобразить как это делается на maps.yandex.ru, то есть по-видимому в проекции Меркатора.
Где можно найти алгоритмы (формулы) преобразования координат и как лучше сделать?

geologic
Гуру
Сообщения: 852
Зарегистрирован: 15 сен 2005, 13:19
Репутация: 6
Откуда: москва
Контактная информация:

Re: Алгоритм преобразования проекции

Сообщение geologic » 07 ноя 2008, 17:29

viewtopic.php?t=965
библиотеки proj, libproj - если у вас ГИСа нет.

Аватара пользователя
Selforg
Участник
Сообщения: 50
Зарегистрирован: 16 окт 2008, 21:16
Репутация: 0
Контактная информация:

Re: Алгоритм преобразования проекции

Сообщение Selforg » 07 ноя 2008, 18:27

Эта ссылочка на PROJ.4 наверно даже получше будет:
http://trac.osgeo.org/proj/

gis
Гуру
Сообщения: 515
Зарегистрирован: 24 янв 2007, 15:46
Репутация: 17
Откуда: Липецк
Контактная информация:

Re: Алгоритм преобразования проекции

Сообщение gis » 07 ноя 2008, 23:52

Параметры надо знать проекции.
СНГ скорей всего в проекции Каврайского или Красовского. Точные параметры можно глянуть в учебниках по матем. картографии.
Параметры проекции карт на яндексе надо наверно форумы пошерстить.

Аватара пользователя
Selforg
Участник
Сообщения: 50
Зарегистрирован: 16 окт 2008, 21:16
Репутация: 0
Контактная информация:

Re: Алгоритм преобразования проекции

Сообщение Selforg » 08 ноя 2008, 20:41

В данных по карте написано:
Проекция: коническая равноугольная.
Система координат: прямоугольная условная.

Ну проекция понятно, а что это за система координат "условная"?

gis
Гуру
Сообщения: 515
Зарегистрирован: 24 янв 2007, 15:46
Репутация: 17
Откуда: Липецк
Контактная информация:

Re: Алгоритм преобразования проекции

Сообщение gis » 08 ноя 2008, 22:43

Условная - это значит произвольная, т.е. не принятая в качестве стандарта СК-42, или СК-95, или UTM, или любая другая.
Мелкомасштабные карты России, СНГ, СССР, как правило, выполняются в секущей конической проекции. С 50-х годов в основном это проекция Красовского или ЦНИИГАИК (что вроде одно и то же но гарантии не дам). Параметры проекции надо смотреть в учебниках - они не секретны.
Эта проекция является наиболее подходящей для вышеназванных территорий. Зачем Вам морочится и переводить все это в цилиндрическую Меркатора?

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

Аватара пользователя
Selforg
Участник
Сообщения: 50
Зарегистрирован: 16 окт 2008, 21:16
Репутация: 0
Контактная информация:

Re: Алгоритм преобразования проекции

Сообщение Selforg » 09 ноя 2008, 13:47

gis писал(а): Эта проекция является наиболее подходящей для вышеназванных территорий. Зачем Вам морочится и переводить все это в цилиндрическую Меркатора?
Да дело в том, что есть ещё карты областей РФ соответственно в СК 42 проекция Гаусса-Крюгера и мне нужно совместить эти карты для вывода на них GPS данных..
Что-то типо того: Видим всю карту СНГ, приближаемся к какой-нить области, подгружается область (плавно, СНГ как фон остается) и так далее.. Это всё работает в ВЕБе на собственной системе отображения..

Причем хотел сделать по-нормальному и привести все карты к одной СК и проекции.. Так как нужно GPS, то думал логично всё перекинуть в UTM на WGS84.. Но тут вопрос ещё спорный...

gis
Гуру
Сообщения: 515
Зарегистрирован: 24 янв 2007, 15:46
Репутация: 17
Откуда: Липецк
Контактная информация:

Re: Алгоритм преобразования проекции

Сообщение gis » 09 ноя 2008, 16:08

Карт России очень много разных в электронном виде и стоят они не дорого.
Самый простой вариант купить в Роскартграфии, Дата+, КБ панорама и т.д.

Аватара пользователя
Selforg
Участник
Сообщения: 50
Зарегистрирован: 16 окт 2008, 21:16
Репутация: 0
Контактная информация:

Re: Алгоритм преобразования проекции

Сообщение Selforg » 10 ноя 2008, 10:02

gis писал(а):Карт России очень много разных в электронном виде и стоят они не дорого.
Самый простой вариант купить в Роскартграфии, Дата+, КБ панорама и т.д.
А причем здесь это?

gis
Гуру
Сообщения: 515
Зарегистрирован: 24 янв 2007, 15:46
Репутация: 17
Откуда: Липецк
Контактная информация:

Re: Алгоритм преобразования проекции

Сообщение gis » 10 ноя 2008, 10:34

1) Это самый простой и быстрый способ получить данные в необходимой Вам СК и необходимом формате.
2) Это законный способ использования, без нарушения авторских прав и прочих нормативных актов.

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

Аватара пользователя
Selforg
Участник
Сообщения: 50
Зарегистрирован: 16 окт 2008, 21:16
Репутация: 0
Контактная информация:

Re: Алгоритм преобразования проекции

Сообщение Selforg » 10 ноя 2008, 12:10

Карты все официальные, с этим проблем нет..
Мне просто действительно было интересно в каких проекциях работает Yandex, Google ну и так далее и привести свои карты к этим же проекциям..

Сейчас меня очень интересует как рассчитать по проекции Меркартора координаты, чтобы получить:
К примеру для Москвы:
из 37,609281 55,753635
вот это 4187847 7474177 ??
4187847 - получается, а вот 7474177 никак не выходит...((

Пользуюсь:
originShift = 2 * math.pi * 6378137 / 2.0

def LatLonToMeters(self, lat, lon ):
"Converts given lat/lon in WGS84 Datum to XY in Spherical Mercator EPSG:900913"

mx = lon * self.originShift / 180.0
my = math.log( math.tan((90 + lat) * math.pi / 360.0 )) / (math.pi / 180.0)

my = my * self.originShift / 180.0
return mx, my

Взял отсюда: http://www.maptiler.org/google-maps-coo ... 0913-3785/

Y получается а районе 3260000 (( а надо 7474177

gis
Гуру
Сообщения: 515
Зарегистрирован: 24 янв 2007, 15:46
Репутация: 17
Откуда: Липецк
Контактная информация:

Re: Алгоритм преобразования проекции

Сообщение gis » 10 ноя 2008, 15:07

Проецирование в ArcGIS дает следующие координаты.
4186645,8987
7474177,91807

Видимо там ошибка, или в расчётах или в параметрах проекции.

Вам надо форумы пошерстить здесь и соседей GeoFAQ, Даты+ - там обсуждались параметры СК для GM, YM и прочих.

Вы еще учитывайте что географические координаты одной и той же точки в разных геодезических основах будут разные. Если это у вас Пулково-42, Вам надо еще преобразовывать в датум WGS-84.

geologic
Гуру
Сообщения: 852
Зарегистрирован: 15 сен 2005, 13:19
Репутация: 6
Откуда: москва
Контактная информация:

Re: Алгоритм преобразования проекции

Сообщение geologic » 10 ноя 2008, 16:41

Все-таки посмотрите POSC.org по моим ссылкам - это наиболее надежный источник простых формул. Меркатор обычно программируют начиная вот отсюда http://www.posc.org/Epicentre.2_2/DataM ... cs34f.html
Я делал в свое время для похожих задач, проблем с точностью не было ни для сферы, ни для эллипсоида. Ход рассуждений при переходе от географических координат к метрам меркатора с коментариями изложен вот тут. Возможно, это и есть ваша задача, привязать мозаичные растры... Нынче она решена и технически - есть многочисленные средства, в т.ч. серверные, опенсурсовские, и вовсе не обязательно создавать с нуля эту машину. На форуме и в статьях эти средства обсуждались не раз, например, MapServer.

Насчет карт вам верно подсказали, зачем брать бумагу в неизвестной проекции... Полно уже готовых электронных форматов, или можно на интернет-картографии базироваться.

Аватара пользователя
Selforg
Участник
Сообщения: 50
Зарегистрирован: 16 окт 2008, 21:16
Репутация: 0
Контактная информация:

Re: Алгоритм преобразования проекции

Сообщение Selforg » 10 ноя 2008, 17:47

geologic писал(а):Насчет карт вам верно подсказали, зачем брать бумагу в неизвестной проекции... Полно уже готовых электронных форматов, или можно на интернет-картографии базироваться.
Да нет.. все карты в векторном виде :D Бумажками не пользуюсь))

Вопрос решили, спасибо.. Если интересно, могу выложить исходники..

Аватара пользователя
Selforg
Участник
Сообщения: 50
Зарегистрирован: 16 окт 2008, 21:16
Репутация: 0
Контактная информация:

Re: Алгоритм преобразования проекции

Сообщение Selforg » 18 ноя 2008, 12:11

Выкладываю исходники конвертора.
Вложения
src.rar
Исходный код
(3.23 КБ) 1452 скачивания

Ответить

Вернуться в «Координаты и привязка»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя