Страница 1 из 1

Координаты для Google Maps

Добавлено: 04 апр 2010, 13:57
OldMarine
Здравствуйте, уважаемые картографы!
Прошу помощи в следущем вопросе - при работе с картами Google Maps (не Google Earth) при попыте расчета центра карты относительно координат углов и некоторой точки (она должна быть приближена или удалена при изменении масштаба карты), также определенной геокоординатами, возникает смещение карты на сервер вследствие заложенной для нее сферической проекции Меркатора (по которой идет искажение по географической широте и тем более, чем исследуемый участок ближе к полюсам Земли). Т. е., имеем, например, для широты, Smin - минимальная широта видимого участка, Smax - максимальная. Но при задании центра (Smin+Smax)/2 карта смещается севернее. Как правильно рассчитать поправочный коэффициент для широты? Формулы известны (например, из Wikipedia), но как их сопоставить с уровнями масштаба Google, не могу понять. Известно, что соседние масштабы отличаются в два раза (на этом и основан подсчет центра)

Re: Координаты для Google Maps

Добавлено: 04 апр 2010, 14:37
Komяpa
1. Перевести координаты точек в метры Меркатора:

Код: Выделить всё

 wget http://twms.googlecode.com/hg/projections.py;  python -c "import projections; print projections.from4326((53.11,54.12),'EPSG:900913')"
2. Посчитать среднее в метрах;

3. Перевести обратно в 4326:

Код: Выделить всё

python -c "import projections; print projections.to4326((5912178.1560307592, 7192915.6941129742),'EPSG:900913')"

Re: Координаты для Google Maps

Добавлено: 04 апр 2010, 17:14
OldMarine
Спасибо! А можно математически, в формулах. Там всего один поправочный коэффициент - по широте,
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)

Re: Координаты для Google Maps

Добавлено: 06 апр 2010, 13:57
OldMarine
2 Котяра
Подскажите пожалуйста, как возможно вызвать указанные Вами методы в JavaScript и получить результаты в переменную в скрипте

Re: Координаты для Google Maps

Добавлено: 06 апр 2010, 14:33
OldMarine
2 Котяра
Известна широта в градусах, необходимо ее пересчитать в тех же градусах для Google Maps с учетом масштаба. В Вашем случае не могу найти зависимость от масштабов Гугла