Pull to refresh

Карта города в терминалах оплаты

Lumber room
Статья от 24.05.09

Сегодня будут известны результаты конкурса DevGeneration 2009, в котором я участвовал и, скорее всего, ничего дельного не занял. Поэтому выкладываю сюда свою идею, которую я отсылал на этот конкурс. Идея моя, помог мне с ОСМ Евгений Усвицкий (СГУ), за что ему огромное спасибо.

Карта города в терминалах оплаты.



Предпосылки:

Предположим, что Вы приехали в незнакомый Вам город. Вы находитесь на вокзале/автовокзале/в аэропорту и смутно представляете куда Вам ехать дальше. Есть конечно такси, водитель которого с 99% вероятностью Вас обманет; есть транспорт, правда сложно представить на чем можно доехать, придется спрашивать у людей (и вероятно не один раз), и все равно не все из них будут знать куда; можно позвонить и узнать тому, к кому приехали, а вдруг он вне зоны или на мобильном села батарейка?

Читать дальше →
Total votes 2: ↑2 and ↓0 +2
Views 336
Comments 3

Загрузка русских карт с OpenStreetMap в Garmin Oregon 300

OpenStreetMap *
Думаю многие видели или слышали об OpenStreetMap — неплохом источнике карт, которые рисуют сами пользователи «интернетов».
В этой статье описан мой опыт экспорта небольшой карты с OpenStreetMap в Garmin Oregon 300, с сохранением кириллических имён. Процесс тривиальный, но всё же я наступил на несколько граблей, так что их описание позволит сэкономить время, тем, кто с этим столкнётся.

Читать дальше →
Total votes 1: ↑1 and ↓0 +1
Views 8.6K
Comments 2

Кошачье пастбище

Open source *
Translation

У книги Карла Фогеля «Producing open source software» замечательная обложка (см. выше). На ней показано множество маленьких стрелок разного размера, указывающих направо, и бо́льшая стрелка жёлтого цвета, на мой взгляд показывающая итоговый эффект. Она как бы говорит нам: если все лошади будут тащить в одном направлении, можно будет передвинуть на другое место целый дом.

Я понимаю ее именно так, потому что она напоминает мне кучу разных рисунков, которые делались на занятиях физики. Если шар ударяется о другой вот так и под вот таким углом, куда упадёт ботинок? Что-то такое.

Это красивая картинка, и именно так я представлял себе опенсорс, пока не стал в нём участвовать. Все люди тащат проект в одном направлении, чтобы сделать энциклопедию, или операционную систему. Но, скажу я вам, это совсем не так, пока проект не вырос
Читать дальше →
Total votes 59: ↑45 and ↓14 +31
Views 1.7K
Comments 23

Про дубльгис, google, yandex, openstreet на примере Кургана и Курганской область (ситуация и прогнозы)

Lumber room
В свое время натолкнулся на интересную Хабровскую дискуссию в которой, увы не смог поучаствовать в связи тогда еще моим не присутствием на хабре. Основная тема этого «меренья» была поиск ответа на вопрос: «Что лучше: сейчас и на перспективу?»… Мерили в основном Google Maps, Yandex.Карты и ДубльГис – их карты и адресные справочники. На общую тему дискуссии, которая происходила в рамках охвата территорий ДубльГиса и гигантов картсервисов.

Так как в дискуссию вклиниться я не мог, то написал небольшие размышление на эту тему на примере Курганской области и Кургана. Ну и не много добавил к этим сравнениям сервис OpenStreetMap.

Собственно сама мысль лежит под хабракатом:
Читать дальше →
Total votes 11: ↑3 and ↓8 -5
Views 799
Comments 4

OSM и карта лежачих полицейских в навигаторах

OpenStreetMap *
imageТак как начинать с начала неинтересно, начну с конца.
Мы ее-таки сделали. Достали из данных OpenStreetMap лежачих полицейских, скрестили их со страшной коммерческой программой Навител, сделали веб-просмотрщик этих самых лежачих полицейских, и интерфейс для их добавления для новичков на http://latlon.org/tc/. И даже написали небольшой пресс-релизик, ссылку на который можно разослать друзьям и знакомым-автомобилистам.
Но для хабра можно рассказать и кое-что особенное: как это всё устроено внутри, и как оно делалось.
Читать дальше →
Total votes 50: ↑45 and ↓5 +40
Views 5.5K
Comments 32

Как подружить Yandex карты с Google и OSM?

Website development *
Sandbox


Есть у меня проект, который работает на основе карт от Яндекса. Выбрал я их потому, что там документация на русском, хорошее качество карт наших городов и приятный интерфейс. Позже, как оказалось, еще и большие возможности.
И вот я заметил, что некоторые места Яндекс спутник показывает в слишком маленьком масштабе, что не годиться для построения маршрутов.
Изначально, я сделал два отдельных файла со скриптами, в одном из которых – была логика работы с Яндексом, а во втором – с Google. Переключение происходило в профиле и действовало на весь сайт, а вся работа с картами на сайте была в псевдокоде(прокси).
Esosedi.ru использовали как раз такой подход с переключением карт, но без перезагрузки. Однако такой вариант мне не подходил потому, что используются маркеры и ломанные линии, к тому же вести два разных файла трудно.

И вот я решил поискать другой вариант.
Читать дальше →
Total votes 68: ↑66 and ↓2 +64
Views 22K
Comments 31

Масштабирование карты, наложение меток и отображение маршрута без использования javascript

Website development *
imageОднажды, загорелся я идеей создания инструмента просмотра маршрута на карте своего города без использования javascript. Даже были аргументы в пользу этого. Например, использование своих изображений карт.
UPD: Есть аналоги у популярных сервисов c их картами (на момент создания о них еще не знал):

Спасибо за ссылки комментирующим
Но мы делаем свою.
Что из этого вышло
Total votes 29: ↑24 and ↓5 +19
Views 13K
Comments 20

Оффлайновые карты всего мира

Self Promo
MapsWithMe У меня давно была мечта написать карты. Удобные карты, которым не нужен доступ в Интернет, с актуальными данными, быстрые и работающие на любом устройстве. После работы инженером в Google Maps эта мечта только усилилась и в какой то момент переросла в конкретные действия.

Если это будет интересно, я как нибудь напишу, как я уходил из цюрихского Гугла, и при этом все вокруг делали квадратные глаза и как потом на чистом энтузиазме мы с друзьями почти год писали проект.
Читать дальше →
Total votes 234: ↑225 and ↓9 +216
Views 5.1K
Comments 208

Как нам обустроить OSM?

Pravo.ru corporate blog
Проект по созданию свободной карты мира OpenStreetMap.org хорошо знаком хабравчанам, у него на сайте есть собственный блог. Карта эта может редактироваться и использоваться всеми желающими, а формат данных, хранящихся на сервере, открытый, поэтому сторонними разработчиками написано множество программ для их просмотра, редактирования и распечатки карт.

Участники проекта используют для создания карты либо неохраняемые законом «свободные» данные, либо те данные, обладатели которых разрешили это делать. Правда, такие разрешения очень редки. Из масштабных «освобождений данных» можно припомнить разве что спутниковые снимки поисковиков Yahoo! и Bing, которые членам сообщества использовать можно. Из российских компаний можно вспомнить «Сканэкс», которая дала сообществу «оэсэмеров» разрешение на использование данных сайта «Космоснимки.ru». Для многих регионов, которые покрыты снимками высокого разрешения, их вполне достаточно для составления подробной карты местности. Правда, такое покрытие, в основном, в областных центрах и крупных городах, а в провинции детализация для этого недостаточна. Но основные объекты можно увидеть и там. Однако, существует масса баз данных, которые создаются органами власти: это разного рода реестры объектов, планы местности, генеральные планы населенных пунктов. По мнению многих членов сообщества, раз они создаются на деньги налогоплательщиков, то должны быть доступны всем желающим. Мнение вполне логичное, а вот о том, так это, или не так, мы сейчас поговорим.
Читать дальше →
Total votes 25: ↑23 and ↓2 +21
Views 5.3K
Comments 14

Сравниваем работу карт OSM vs Геоцентр-консалтинг

VezetVsem corporate blog
Наша компания занимается разработкой различных веб-сервисов по грузоперевозкам. Недавно мы запустили проект Везет Всем, ориентированный на частные «бытовые» перевозки: переезды, перевозка личных вещей и мебели и т.д.
В рамках этого проекта мы сотрудничаем с «Космоснимками», так как все перевозки привязаны к разным гео-данным, и нам необходимо реализовывать функционал, связанный с выборкой грузов из определенной области. Первым этапом мы сначала реализовали прокладку маршрута и расчет дистанции по нашим заявкам .
Сейчас мы предлагаем все желающим сравнить и протестировать графическую подложку карт Геоцентра, который более привычен (наверное) и Open Street Map, вот здесь.

Наши первые впечатления


Сразу скажу, что маршрут строится на основе роутера OSM, и для нас было легким удивлением, как достаточно качественно идет прокладка даже через трассы, введенные в эксплуатацию меньше года назад. За это скажем «большое спасибо» активистам OSM. На подложках OSM всегда более свежие данные по крупным городам, чем у Геоцентра, хотя по информации о поселках и деревнях выигрывает второй, пример можно посмотреть здесь, маршрут сл. Ефремово-Степановка — с. Самарское — это такие два богом забытых места в Ростовской области. По умолчанию будет подложка Геоцентра, но можно выбрать OSM (слева наверху), и вы увидите как село Ефремово то появляется, то пропадает.
Читать дальше →
Total votes 8: ↑6 and ↓2 +4
Views 2.2K
Comments 3

С IP-адресов Google осуществлён акт вандализма в отношении карт проекта OpenStreetMap

OpenStreetMap *
К сожалению, даже у такой замечательной компании, как Google, есть отдельные неприятные партнёры, за которых бывает стыдно. На прошлой неделе СМИ облетела скандальная история с кенийским стартапом Mocality, который уличил в нечестной конкуренции компанию Google (а именно, подразделение Getting Kenyan Businesses Online). С ноября 2011 года с IP-адресов Google в Индии каждую ночь выкачивались обновления базы данных Mocality, а затем представители GKBO обзванивали клиентов по телефонам из этой базы, предлагая свой (конкурирующий) продукт. Компания Google принесла официальные извинения за «людей, которые работают над одним из проектов Google», и инцидент, вроде, был исчерпан. Однако, сегодня история получила неожиданное продолжение.
Читать дальше →
Total votes 77: ↑64 and ↓13 +51
Views 2K
Comments 44

Структура данных проекта OpenStreetMap, заглянем под юбку сервису

OpenStreetMap *
Sandbox

Пролог



Проект OpenStreetMap (OSM) открытых геоинформационных данных под свободной лицензией CC-BY-SA (а в скором времени под Open Database Licence) известен достаточно широко, что бы не тратить время на его подробное представление. Главной особенностью проекта и его основным преимуществом по сравнению с любыми другими аналогами являлся принцип полностью открытых географических данных, которые могут быть использованы кем угодно и и как угодно (в рамках лицензии CC-BY-SA) и могут свободно дополняться и уточняться любым участником проекта. Как и любые другие данные, географические данные точно так же подлежат структурированию при хранении и обработке. В данной статье я постараюсь описать основные части структуры данных OSM остановившись больше на принятых типах данных и представлении их в пространственном виде. Работая постоянно с данными проекта OSM очень часто приходится уточнять или пояснять не которые базовые аспекты, поэтому возникла необходимость кратко изложить их в виде одного текста.
Читать дальше →
Total votes 49: ↑48 and ↓1 +47
Views 25K
Comments 12

Украинский земельный кадастр использует OSM в качестве карты по умолчанию

OpenStreetMap *
В Украине открыли доступ к Государственному земельному кадастру. Даже интерактивную карту запилили: www.map.land.gov.ua/kadastrova-karta

Соблюдают приватность и не публикуют фамилии владельцев. Можно увидеть кадастровый номер, если в кадастре указана приватизация участка — то указан этот факт и целевое назначение участка. Но ничего о владельце. И все-равно интересно.

В частности, украинские оптимизаторы не чужды использованию открытых крауд-сорсных источников карт. По умолчанию карта открывается со слоем карт из OpenStreetMaps.

UPD: А что даже более интересно, в режиме «Ортофотопланы» используются пока неопознаные спутниковые снимки, которые весьма равномерно покрывают почти всю Украину, и во многих отдаленных от обл. центров районах имеют детализацию, значительно превосходящую карты google/bing/yandex.

UPD2: Поступила непроверенная, но очень похожая на правду информация, что ортофотопланы — это собственные карты центра ДЗК (Державного Земельного Кадастру): www.kmu.gov.ua/control/publish/article?art_id=244580259

UPD3: Получена информация от теперь уже хабровчанина drobzik, спасибо ему за нее:
Я не отношусь непосредственно к разработчикам данного сайта, однако принимаю участие в реализации этого проекта, и могу дать «неофициальные» ответы.
1) откуда эти спутниковые карты
Эти не спутник, это честная аэрофотосъемка и честные ортофотокарты. Некоторые съемки делала, например, компания АРЦ, по заказу Госкомзема (Государственный комитет по земельным ресурсам) Украины, в рамках проекта Мирбанка по созданию системы земельного кадастра Украины(тут новость об этом — www.avia.org.ua/en/node/237). Т.к. в целом съемка выполнялась на протяжении нескольких лет, часть сведений на них может слегка устареть, однако все равно на сейчас — это самая полная и точная фотосъемка территории Украины.
2) как их можно использовать (позволяет ли их лицензия использовать их для расширения OpenStreetMaps, например).
Владельцем данных карт являлся на момент съемки Госкомзем Украины. За последние пару лет он несколько раз переименовывался и переразделялся, поэтому выяснить, кто конкретно сейчас владелец, довольно сложно. Под эгидой Госкомзема создано несколько разных организаций, частично для ведения ведения коммерческой деятельности, частично — для разделения функциональных обязанностей. Для простоты можно считать что владелец ортофотокарт — государство (Украина, в данном случае), в связи с чем, вы вряд ли получите где-либо и от кого-либо официальное разрешение на их использование (просто не поймут, что вы хотите от них получить). Однако, с другой стороны, и преследовать вас никто не будет за использование этих карт для своих нужд (или для некомерческих целей), т.к. государству — пофиг, а чиновникам это интересно только в случае материальной выгоды.


И, конечно же, на этом государственном источнике кадастровой информации отображается вся правда из OSM — народных карт, например факты незаконного захвата территории в Харьковском Лесопарке, обозначенные там как «Самозахват» (UPD4 уже выпилили самозахваты с OSM, так что только на скриншоте осталось):

Читать дальше →
Total votes 48: ↑45 and ↓3 +42
Views 33K
Comments 71

Создание кэша карты в Geoserver с использованием сторонних сервисов

Open source *Geoinformation services *
Все началось с того, что при разработке геопорталов с использованием ArcGis, заказчики все чаще стали говорить что-то типа: " Нам все нравится, а вот можно все тоже самое сделать, но с использованием открытого ПО", подразумевая при этом замену связки MSSQL+ ArcGis Server + ArcGis Javascript (Silverlight) Toolkit на Postgres (PostGis) + Geoserver + Openlayers.

Ну, в общем-то их понять можно, т.к. меняется 1-2-3 млн руб на 0 руб. Особой проблемы в большинстве своем это не представляло, векторные данные переводятся либо через SHP файлы, либо через конвертеры из MSSQL в PostGis (либо просто через запросы SQL). Остался вопрос с растровыми данными. Например есть хорошо прорисованный, настроенный и многоуровневый кэш карты России. В ArcGis он хранится либо в компактном виде (в виде бандлов понятного только ArcGis формата) либо некомпактный, то есть тайлы карты просто лежат в директориях. Тут я обрадовался и подумал, что во втором-то случае точно будет все просто. А нет — тайлы конечно разбиты по уровням однако имеют странные имена и могут лежать в странных подпапках, а с геопривязкой этого кэша вобще беда.

Но потом пришло очень простое и быстрое решение — просканировать свой же сервис (так как сервис отдает тайлы по понятному URL вида "...MapServer/tile/Z/Y/X" где Z — номер уровня, а X и Y номера тайлов по горизонтали и вертикали соответственно). Теперь остался другой вопрос — как эти привязанные тайлы положить на Geoserver? В Geoserver для таких целей используется Image Pyramid Plugin, точнее не совсем для таких — его в основном используют для упрощения работы с гигантскими TIFF файлами, скрипт gdal_retile из пакета gdal проходится по TIFF файлу и создает множество мелких геопривязанных тайлов на разных уровнях, разбитых по папкам с номерами уровней.

Вот собственно и все исходные данные. По ним я сначала написал приложение на родном C#, но решил следовать путем настоящего OSS и переписал на Java, естественно выложив код на GitHub.
Приглашаю подкат для ознакомления с приложением и туториалом начинающего геосамурая
Total votes 9: ↑6 and ↓3 +3
Views 14K
Comments 3

Ускоряем базу данных. Bcache

Configuring Linux *System administration *Database Administration *
Для работы мы используем postgresql + postgis базу данных с данными для всей планеты от osm.org. На диске она занимает около 350 Gb и работает не быстро, да и хранится на обычном винчестере 2Tb 7200rpm, без RAID-a. Т.к. нагрузка на базу данных постепенно растет, было решено ускорить дисковую подсистему, потратив при этом минимум денег. Вариантов было не много:
  • купить еще один такой же винчестер и объединить их в raid-0.
  • купить небольшой SSD и организовать на нем быстрый кэш:
    • dm-cache. Был добавлен в ядро 3.9, ставится просто.
    • bcache. Судя по обзорам самый быстрый. Основной минус — надо форматировать диски перед началом использования. Официально добавлен в ядро 3.10, распространяется как пропатченое ядро 3.9.
    • EnhanceIO. В обзорах я встретил упоминание его, как самого медленного, но простого в использовании.

Взвесив плюсы и минусы, а так же спросив отзывы знакомых, я решил остановиться на bcache. О нем и расскажу подробнее.
Читать дальше →
Total votes 40: ↑38 and ↓2 +36
Views 28K
Comments 28

Геокодер OSM на Java

Java *OpenStreetMap *Geoinformation services *
Привет, дорогие читатели хабра. В этой статье поговорим

  • Про адреса и хранилища данных с нечеткой схемой
  • Про обработку геоданных на java, а именно про Java Topology Suite
  • Про стоимость «простоты» для разработчика
  • Про pure Java nosql документную бд / движок полнотекстового поиска — Elasticsearch.

Читать дальше →
Total votes 23: ↑22 and ↓1 +21
Views 24K
Comments 15

Кратко от том как сделать свой Qt geoservice plugin

Global Positioning Systems *Qt *
Sandbox
image + image =?
Следующим шагом после GPS модуля, стало его практическое применение в моем проекте. Возможно кому-то этот пост будет интереснее.
Тоже не особо интересно, но зайду
Total votes 19: ↑19 and ↓0 +19
Views 23K
Comments 13

Postgis тип данных Geometry на примере импортированных OpenStreetMap карт

PostgreSQL *OpenStreetMap *Geoinformation services *
Sandbox
Для моего проекта понадобилось построить пешеходные маршруты и считать их длину.
Я решил эту задачу с помощью pgrouting, который в свою очередь опирается на postgis.
Postgis — это расширение к Postgresql, реализующее стандарт OpenGis.
В данном расширении содержится обширный функционал для работы с пространственными данными.
Это позволяет писать интересные приложения.
В частности, OpenStreetMap использует postgis для отображения своих карт.
Постараюсь рассказать о том, как выглядят в postgis, импортированные osm карты.
Читать дальше →
Total votes 17: ↑13 and ↓4 +9
Views 33K
Comments 28

Как это работает: архитектура тайлового бэкенда карт «Спутника»

Ростелеком corporate blog High performance *OpenStreetMap *Go *Geoinformation services *
Мы, команда карт «Спутника», разрабатываем карты на основе данных «OpenStreetMap». В этой заметке мы расскажем об архитектуре нашего решения для рендеринга тайлов.


Читать дальше →
Total votes 85: ↑64 and ↓21 +43
Views 27K
Comments 70

Установка OpenStreetMap Nominatim для нахождения широты и долготы по введенному адресу

PostgreSQL *OpenStreetMap *Maps API *
Sandbox
image

Хотел бы поведать свою историю об установке геокодера Nominatim на выделенный сервер. Изначально предполагалось, что эта задача займёт у меня около 5-7 часов, но не тут то было… Поэтому было решено написать статью c описанием разворачивания Nominatim на сервер до полной работоспособности сайта. Но обо всём по порядку.
Читать дальше
Total votes 21: ↑19 and ↓2 +17
Views 49K
Comments 28