Take Control of Your Maps — создание онлайн-карт

Снимок экрана 2013-04-11 в 15.17.28
Снимок экрана 2013-04-11 в 15.17.28
В статье «Take Control of Your Maps» рассматривается то, как можно создавать карты для своих сайтов и приложений и почему может возникнуть необходимость это делать.

Онлайн-карты — неотъемлемая составляющая многих сервисов, которыми мы пользуемся. Можно сказать, что мы живем в эпоху Google Maps, который, благодаря подробной документации и возможности использования API, стал простым и удобным инструментом как для дизайнеров, так и для разработчиков, в тех случаях, когда необходимо добавить геопространственную информацию на сайт или приложение.

С растущими требованиями к географическим приложениям становится необходимым больший контроль и функциональность картографических элементов. В статье «Take Control of Your Maps» рассматривается возможность создания и использования альтернативных картографических карт с открытым исходным кодом.

Google Maps — это лучшее?

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

Ответ заключается в том, что разработчик, контролирующий все аспекты сайта или приложения — от типографики до дизайна интерфейса, — не хочет видеть в центре всего этого чужеродный неконтролируемый элемент, которым является Google Maps. Безусловно, Google Maps допускает некоторое редактирование, но саму карту поменять нельзя.

Если не  Google Maps, тогда что?

Осознавать, что Google Maps не дает необходимой степени контроля в дизайне и разработке карт, — это одно, а заменять Google Maps созданной самим картой — это другое. Создание своей карты требует понимания процесса и инструментов.

Ключ к пониманию — картографическая архитектура, которая приводит к тому виду карты в браузере, к которому мы все привыкли.

Browser UI — пользователи взаимодействуют с картой через интерфейс в браузере, как правило через JavaScript или Flash. OpenLayers — это один из примеров интерфейса для карт, написанного на JavaScript.

Tile cache — сервер, расположенный между браузером и сервером карт и обрабатывающий запросы пользователей к карте. Tile cache проверяет, не был ли уже сгенерирован запрошенный участок карты — в таком случае он обрщается к кэшу, а не генерирует карту заново, что позволяет оперативно отвечать на пользовательские запросы. Один из таких серверов —  TileCache.

Map Server — это приложение, создающиее из геопространственных данных их графическое отображение. Фактически, это то, с помощью чего можно контролировать внешний вид карты. Для рендера красивых карт можно воспользоваться инструментом Mapnik.

Geospatial data — это база данных, определяющая точки, линии и полигоны на карте, также как и такие аттрибуты, как называния школ или районов.

Создание карты

Таким образом, карта состоит из перечисленных выше слоев. Для каждого из слоя существует много альтернатив, и выбор инструментов зависит от платформы, имеющихся геопространственных данных, языка программирования и цели приложения. Тем не менее, можно выделить некоторые общие советы и принципы в создании карт.

В статье представлены общие советы, которые пригодятся тем, кто решил самостоятельно создать карту – от выбора формата хранения данных до расширений, которые могут помочь в процессе разработки.