Координаты для Google Maps
-
- Новоприбывший
- Сообщения: 4
- Зарегистрирован: 04 апр 2010, 13:34
- Репутация: 0
Координаты для Google Maps
Здравствуйте, уважаемые картографы!
Прошу помощи в следущем вопросе - при работе с картами Google Maps (не Google Earth) при попыте расчета центра карты относительно координат углов и некоторой точки (она должна быть приближена или удалена при изменении масштаба карты), также определенной геокоординатами, возникает смещение карты на сервер вследствие заложенной для нее сферической проекции Меркатора (по которой идет искажение по географической широте и тем более, чем исследуемый участок ближе к полюсам Земли). Т. е., имеем, например, для широты, Smin - минимальная широта видимого участка, Smax - максимальная. Но при задании центра (Smin+Smax)/2 карта смещается севернее. Как правильно рассчитать поправочный коэффициент для широты? Формулы известны (например, из Wikipedia), но как их сопоставить с уровнями масштаба Google, не могу понять. Известно, что соседние масштабы отличаются в два раза (на этом и основан подсчет центра)
Прошу помощи в следущем вопросе - при работе с картами Google Maps (не Google Earth) при попыте расчета центра карты относительно координат углов и некоторой точки (она должна быть приближена или удалена при изменении масштаба карты), также определенной геокоординатами, возникает смещение карты на сервер вследствие заложенной для нее сферической проекции Меркатора (по которой идет искажение по географической широте и тем более, чем исследуемый участок ближе к полюсам Земли). Т. е., имеем, например, для широты, Smin - минимальная широта видимого участка, Smax - максимальная. Но при задании центра (Smin+Smax)/2 карта смещается севернее. Как правильно рассчитать поправочный коэффициент для широты? Формулы известны (например, из Wikipedia), но как их сопоставить с уровнями масштаба Google, не могу понять. Известно, что соседние масштабы отличаются в два раза (на этом и основан подсчет центра)
- Komяpa
- Интересующийся
- Сообщения: 16
- Зарегистрирован: 13 сен 2009, 11:24
- Репутация: 0
- Откуда: Minsk
- Контактная информация:
Re: Координаты для Google Maps
1. Перевести координаты точек в метры Меркатора:
2. Посчитать среднее в метрах;
3. Перевести обратно в 4326:
Код: Выделить всё
wget http://twms.googlecode.com/hg/projections.py; python -c "import projections; print projections.from4326((53.11,54.12),'EPSG:900913')"
3. Перевести обратно в 4326:
Код: Выделить всё
python -c "import projections; print projections.to4326((5912178.1560307592, 7192915.6941129742),'EPSG:900913')"
-
- Новоприбывший
- Сообщения: 4
- Зарегистрирован: 04 апр 2010, 13:34
- Репутация: 0
Re: Координаты для Google Maps
Спасибо! А можно математически, в формулах. Там всего один поправочный коэффициент - по широте,
y = C*ln(tan(Pi/4+F/2)), где C - текущий коэффициент масштаба, а F - значение широты в радианах (до корректировки), результат, как я понимаю, Lat = y*Fg (Fg - широта до корректировки в градусах). Но как ни пробовал, не могу C подобрать, как его подсчитать для этой формулы, исходя из линейки масштабов Google Maps
(формула взята здесь - http://ru.wikipedia.org/wiki/%D0%9F%D1% ... 1%80%D0%B0)
y = C*ln(tan(Pi/4+F/2)), где C - текущий коэффициент масштаба, а F - значение широты в радианах (до корректировки), результат, как я понимаю, Lat = y*Fg (Fg - широта до корректировки в градусах). Но как ни пробовал, не могу C подобрать, как его подсчитать для этой формулы, исходя из линейки масштабов Google Maps
(формула взята здесь - http://ru.wikipedia.org/wiki/%D0%9F%D1% ... 1%80%D0%B0)
-
- Новоприбывший
- Сообщения: 4
- Зарегистрирован: 04 апр 2010, 13:34
- Репутация: 0
Re: Координаты для Google Maps
2 Котяра
Подскажите пожалуйста, как возможно вызвать указанные Вами методы в JavaScript и получить результаты в переменную в скрипте
Подскажите пожалуйста, как возможно вызвать указанные Вами методы в JavaScript и получить результаты в переменную в скрипте
-
- Новоприбывший
- Сообщения: 4
- Зарегистрирован: 04 апр 2010, 13:34
- Репутация: 0
Re: Координаты для Google Maps
2 Котяра
Известна широта в градусах, необходимо ее пересчитать в тех же градусах для Google Maps с учетом масштаба. В Вашем случае не могу найти зависимость от масштабов Гугла
Известна широта в градусах, необходимо ее пересчитать в тех же градусах для Google Maps с учетом масштаба. В Вашем случае не могу найти зависимость от масштабов Гугла
Кто сейчас на конференции
Сейчас этот форум просматривают: Semrush [Bot] и 1 гость