Pull to refresh

Эксперимент: Как это работает… maps.google.com+maps.live.com

Reading time2 min
Views6.8K
Увидев вот это на Хабре, решил попробовать кое что сделать. Что такое java и FireBug до сего дня в глаза не видел. Тем интереснее…
Дело в том что живу я в Тамбове, а снимок столь маленького города со спутника от google очень слабой детализации. Совсем недавно я узнал о том, что на maps.live.com отличный спутниковый снимок родного города.


Вот максимально доступная на сегодня детализация Тамбова от обоих сервисов.

Вдохновившись прочтенным тут и тут решил попробовать накинуть снимок live.com на googlmaps. Т.к. к картам от Google привязано куча вкусного и у них всем известное API.

Первые эксперименты с FireBug позволили сделать несколько очень интересных открытий относительно live.com....
  • изображение так же представлено слоями
  • изображение так же поделено на куски в виде jpg файлов размером 256 х 256px, называемые тайлы(tile)
  • границы разделов совпадают!!! (ура товарищи)
  • Live.com отдает кусочки бОльшей детализации, чем можно получить через сайт. (это не значит что изображение на них четче, но факт в том что они есть)

Один и тот же кусочек карты с разных сервисов, границы совпали идеально!!!


В Live.com поделили Землю так же, как и в Google, но нумерацию тайлов они изменили.
Рассмотрим для примера тайл
http://ecn.t1.tiles.virtualearth.net/tiles/a12031123231111.jpeg?g=282&mkt=en-us
Имя файла у нас a12031123231111.jpeg. Что бы получить увеличенное изображение, делим его на 4 части, как на рисунке. Если нам нужен тайл из квадрата под номером 0, то имя файла получаем следующие a120311232311110.jpeg. Просто дописываем к имени файла номер нужного квадрата.(Напоминает уроки гражданской обороны, когда изучали квадраты на военных картах)




Если же нужно получить изображение с меньшим масштабом, то просто стираем последние цифры в имени файла.
Т.е. вся Земля у нас изначально поделена на 4 квадрата. А дальше погнали приближать очень забавный квест получается :)



Вывод который я сделал для себя. Скачиваю снимки с Live.com и подвязываю их к googlemaps.
Сразу же напрашивается мысль, зачем качать, если снимки и так доступны в сети. В общем возникла идея сделать некий парсер который использую GoogleMaps накладывает тайлы от Live.com. Об этом я напишу в следующей статье, если кому интересно…

Что из этого получилось можно посмотреть тут.

UPD: Уже после написания, я узнал о программе SASGIS, в которой все это уже реализовано…
Tags:
Hubs:
+88
Comments58

Articles