понедельник, 27 июля 2009 г.

Печать спутниковых снимков

Ты принципиально пишешь только хороший код? Вот и попался... * [тормоз]

Печать карты. Так это могло бы выглядеть.

История идеи

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

Но это было непросто!

  • Сперва нужно было «полетать» над территорией в Google Earth, чтобы заполнить кэш.
  • На кэш натравил специальную программку (вроде бы, я использовал MapBuilder, но есть аналоги).
  • Потом в PhotoShop склеил несколько кусков меньшего размера в итоговый огромный файл для печати. Очень зауважал PhotoShop, он позволил пусть не слишком комфортно, но всё же работать с файлом-монстром, вес которого кратно превышал размер оперативной памяти.
  • Распечатал по фотобумаге на лучшем в городе широкоформатном принтере.

На всё про всё — примерно сутки и всего около 1000 руб.

Детали реализации сервиса

Это очень сложная и интересная техническая задача! Прежде всего, тот же Google Maps ограничивает количество запросов с одного IP, поэтому непосредственно запросы блоков, из которых формируется снимок, должны быть с клиентской машины, а не с сервиса.

Я, как воинствующий дилетант, убеждён, что генерацию PDF можно полностью повесить на браузер. Но если это принципиально неосуществимо, можно браузер клиента использовать как прокси — он будет отправлять блоки картинок на сервис, который и будет заниматься непосредственно склейкой.

Со стороны пользователя всё должно быть максимально просто: выбор формата листа, позиционирование его над нужным регионом с нужным масштабированием и подтверждение. Ещё неплохо бы реализовать выбор источника — Google Maps, Яндекс Карты и т. п.

Бизнес модель

Картографические сервисы обычно прямо запрещают коммерческое использование предоставляемых данных, поэтому вариантов я пока вижу не очень много:

  • благодарности от пользователей (donations);
  • прямая реклама типографий c геотаргетингом;
  • контекстная реклама (самый дурацкий вариант).

Эх, вот лично я с огромным бы удовольствием финансово поддержал сервис генерации спутниковых PDF-карт, если бы такой существовал. И если он не появится в ближайшее время — я сделаю. Просто найму специалистов, если не хватит своих знаний.

Гарантированное размещение в англоязычных каталогах.
* Реклама в бомжеленте.

Помогите детям!

[http://brokenbrake.biz/2009/07/27/printmap]