Отображение координат WGS84 на карте
-
- Интересующийся
- Сообщения: 20
- Зарегистрирован: 27 сен 2012, 07:06
- Репутация: 0
Отображение координат WGS84 на карте
Здравствуйте!
У меня есть несколько shape файлов и мне нужно отобразить из в своей программе.
Файл я загрузил, все координаты указаны в виде пар чисел (xxx.xxxxxx yyy.yyyyyy). Это, как я понимаю, широта и долгота точки. Но как мне отобразить эту точку? Мне то нужны декартовы координаты X, Y.
Допустим я так и должен отображать точку, с учетом, конечно, некоего масштабируещего коэффициента и учетом того что начало координат снизу слева. Тогда карта получается сплюснутой по высоте. Подключил библиотеку proj.4, преобразовываю из "+proj=latlong" в "+proj=merc +ellps=WGS84". Цифры получаются большие. Как я понимаю. это метры. Если отображать карту по преобразованным координатам то получается очень похоже. Но тут уже у меня возникают сомнения в правильности действий. Так ли надо делать?
И вообще, не хватает знаний практического плана. В теории я уже разобрался но вот как применить это на практикею Может кто то поделится ссылками?
У меня есть несколько shape файлов и мне нужно отобразить из в своей программе.
Файл я загрузил, все координаты указаны в виде пар чисел (xxx.xxxxxx yyy.yyyyyy). Это, как я понимаю, широта и долгота точки. Но как мне отобразить эту точку? Мне то нужны декартовы координаты X, Y.
Допустим я так и должен отображать точку, с учетом, конечно, некоего масштабируещего коэффициента и учетом того что начало координат снизу слева. Тогда карта получается сплюснутой по высоте. Подключил библиотеку proj.4, преобразовываю из "+proj=latlong" в "+proj=merc +ellps=WGS84". Цифры получаются большие. Как я понимаю. это метры. Если отображать карту по преобразованным координатам то получается очень похоже. Но тут уже у меня возникают сомнения в правильности действий. Так ли надо делать?
И вообще, не хватает знаний практического плана. В теории я уже разобрался но вот как применить это на практикею Может кто то поделится ссылками?
- Максим Дубинин
- MindingMyOwnBusiness
- Сообщения: 9129
- Зарегистрирован: 06 окт 2003, 20:20
- Репутация: 748
- Ваше звание: NextGIS
- Откуда: Москва
- Контактная информация:
Re: Отображение координат WGS84 на карте
пристегивайтесь, турбулентность прямо по курсу
-
- Гуру
- Сообщения: 5355
- Зарегистрирован: 09 апр 2010, 19:30
- Репутация: 1021
- Ваше звание: просто мимо прохожу
- Откуда: Ё-бург
Re: Отображение координат WGS84 на карте
лучше преобразовывать в UTM
-
- Интересующийся
- Сообщения: 20
- Зарегистрирован: 27 сен 2012, 07:06
- Репутация: 0
Re: Отображение координат WGS84 на карте
Да, спасибо, стало немного понятнее.
Но все равно, не совсем.
По proj.4, сейчас я преобразовываю угловые координаты WGS84 в метрические. так?
Почему Вы говорите преобразовывать именно в UTM? Чем это выгоднее?
Но все равно, не совсем.
По proj.4, сейчас я преобразовываю угловые координаты WGS84 в метрические. так?
Почему Вы говорите преобразовывать именно в UTM? Чем это выгоднее?
-
- Гуру
- Сообщения: 5355
- Зарегистрирован: 09 апр 2010, 19:30
- Репутация: 1021
- Ваше звание: просто мимо прохожу
- Откуда: Ё-бург
Re: Отображение координат WGS84 на карте
Разве?сейчас я преобразовываю угловые координаты WGS84 в метрические
это синоним UTMWGS84 в метрические
-
- Интересующийся
- Сообщения: 20
- Зарегистрирован: 27 сен 2012, 07:06
- Репутация: 0
Re: Отображение координат WGS84 на карте
Вот не понимаю я до конца всю эту механику. Уже и перечитал кучу всего и вот все равно...
Вот конкретный пример:
Допустим у меня есть объект - квадрат, 4 точки в wgs84
55.7537039 37.6199847
55.7536321 37.6198724
55.7536983 37.619742
55.75377 37.619867
Если я перевожу их в UTM
из +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs
в +proj=utm +zone=40 +ellps=WGS84 +datum=WGS84 +units=m +no_defs
то получаю вот что:
390014.072139;4164383.15185
390007.570039;4164370.77613
390013.220315;4164356.23044
390019.732303;4164370.01537
(Переводил вот тут: http://cs2cs.mygeodata.eu/)
Если же я эти точки рисую, то прямоугольник получается сильно вытянут по высоте, вот такой - http://www.geogebratube.org/material/show/id/50085
Что я делаю не так?
Вот конкретный пример:
Допустим у меня есть объект - квадрат, 4 точки в wgs84
55.7537039 37.6199847
55.7536321 37.6198724
55.7536983 37.619742
55.75377 37.619867
Если я перевожу их в UTM
из +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs
в +proj=utm +zone=40 +ellps=WGS84 +datum=WGS84 +units=m +no_defs
то получаю вот что:
390014.072139;4164383.15185
390007.570039;4164370.77613
390013.220315;4164356.23044
390019.732303;4164370.01537
(Переводил вот тут: http://cs2cs.mygeodata.eu/)
Если же я эти точки рисую, то прямоугольник получается сильно вытянут по высоте, вот такой - http://www.geogebratube.org/material/show/id/50085
Что я делаю не так?
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 792
- Ваше звание: званий не имею
- Откуда: Москва
Re: Отображение координат WGS84 на карте
Объясните, пож-та, где квадрат в исходных данных?

Редактор материалов, модератор форума
-
- Участник
- Сообщения: 78
- Зарегистрирован: 29 авг 2013, 10:55
- Репутация: 1
Re: Отображение координат WGS84 на карте
а чем UTM лучше СК-42?лучше преобразовывать в UTM
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 792
- Ваше звание: званий не имею
- Откуда: Москва
Re: Отображение координат WGS84 на карте
В данном случае тем, что точки уже в WGS84. Зачем тогда менять датум просто так?DevGis писал(а): а чем UTM лучше СК-42?
Редактор материалов, модератор форума
-
- Интересующийся
- Сообщения: 20
- Зарегистрирован: 27 сен 2012, 07:06
- Репутация: 0
Re: Отображение координат WGS84 на карте
Я взял полигон от мавзолея на Красной площади. Он же, вроде как, квадратный.Александр Мурый писал(а):Объясните, пож-та, где квадрат в исходных данных?![]()
Координаты брал с OSM
-
- Завсегдатай
- Сообщения: 265
- Зарегистрирован: 22 окт 2012, 08:35
- Репутация: 50
- Откуда: Нижний Новгород
Re: Отображение координат WGS84 на карте
Очевидно. что пересчет неверный.
Мавзолей попадает в 37-ю зону UTM.
Примерные координаты в UTM зона 37: 6203359.0, 37265.9
Мавзолей попадает в 37-ю зону UTM.
Примерные координаты в UTM зона 37: 6203359.0, 37265.9
-
- Интересующийся
- Сообщения: 20
- Зарегистрирован: 27 сен 2012, 07:06
- Репутация: 0
Re: Отображение координат WGS84 на карте
Сделал так:
из +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs
в +proj=utm +zone=37 +ellps=WGS84 +datum=WGS84 +units=m +no_defs
Координаты получились действительно другие: (переводил тут: http://cs2cs.mygeodata.eu/)
1983712.43309;4298251.65585
1983708.34509;4298237.89155
1983716.93397;4298224.35991
1983720.75142;4298239.54612
Но квадрат все равно не квадратный:
из +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs
в +proj=utm +zone=37 +ellps=WGS84 +datum=WGS84 +units=m +no_defs
Координаты получились действительно другие: (переводил тут: http://cs2cs.mygeodata.eu/)
1983712.43309;4298251.65585
1983708.34509;4298237.89155
1983716.93397;4298224.35991
1983720.75142;4298239.54612
Но квадрат все равно не квадратный:
Я вижу что мои цифры совсем другие. Но почему? Этот конвертер неверный? Но он использует proj4, нет смысла сомневаться в правильности этой библиотеки.juffin_h писал(а):Очевидно. что пересчет неверный.
Мавзолей попадает в 37-ю зону UTM.
Примерные координаты в UTM зона 37: 6203359.0, 37265.9
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 792
- Ваше звание: званий не имею
- Откуда: Москва
Re: Отображение координат WGS84 на карте
Если поменять местами X и Y (широта Москвы всё-таки не 37 град.
), то в UTM37 выходит вот что:
Квадрат угадывается, правда, всё равно это ближе к ромбу.

Квадрат угадывается, правда, всё равно это ближе к ромбу.
Редактор материалов, модератор форума
-
- Интересующийся
- Сообщения: 20
- Зарегистрирован: 27 сен 2012, 07:06
- Репутация: 0
Re: Отображение координат WGS84 на карте
Ах, позор на мои седины! Это ж надо, перепутать координаты.
Господа, большое спасибо все ответившим, вы очень мне помогли разобраться!
Я хочу резюмировать немного, укажите, пожалуйста, если я где то ошибаюсь.
1. Изначально имеются данные в какой то системе координат (WGS84, СК-42, ПЗ-90, и.т.д)
2. Для того чтоб отобразить их на плоскости необходимо использовать одну из проекций. (Гаусса-Крюгера, UTM и т.д.)
Тут, я так понимаю, проекция должна быть та на которой основана система координат, Это так?
Ну, и несколько практических вопросов:
1. В UTM все поделено на зоны по 6 градусов. А что если мой объект находится частично в одной зоне, частично в другой? Так и переводить, каждую точку для своей зоны?
2. Выбор зоны UTM это просто подбор 1-6 первая зона, 6 - 12 вторая? или какие то хитрости?
3. есть ли какая то библиотека по переводу параметров проекции WKT в proj4?
Еще раз огромное всем спасибо! Я правда, много читал, искал, но просто все как то не укладывалось в голове.
Господа, большое спасибо все ответившим, вы очень мне помогли разобраться!
Я хочу резюмировать немного, укажите, пожалуйста, если я где то ошибаюсь.
1. Изначально имеются данные в какой то системе координат (WGS84, СК-42, ПЗ-90, и.т.д)
2. Для того чтоб отобразить их на плоскости необходимо использовать одну из проекций. (Гаусса-Крюгера, UTM и т.д.)
Тут, я так понимаю, проекция должна быть та на которой основана система координат, Это так?
Ну, и несколько практических вопросов:
1. В UTM все поделено на зоны по 6 градусов. А что если мой объект находится частично в одной зоне, частично в другой? Так и переводить, каждую точку для своей зоны?
2. Выбор зоны UTM это просто подбор 1-6 первая зона, 6 - 12 вторая? или какие то хитрости?
3. есть ли какая то библиотека по переводу параметров проекции WKT в proj4?
Еще раз огромное всем спасибо! Я правда, много читал, искал, но просто все как то не укладывалось в голове.
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 792
- Ваше звание: званий не имею
- Откуда: Москва
Re: Отображение координат WGS84 на карте
GDAL. Вот пример на Питоне.folibis писал(а): 3. есть ли какая то библиотека по переводу параметров проекции WKT в proj4?
Редактор материалов, модератор форума
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость