5 сентября 2012-го

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

Runge, не делай area:highway!

Прямо сейчас в чатике все восхищаются тем, как на мапсёрфере, самом красивом функциональном слое OSM, выглядят площади, обозначенные area:highway. Даже безотносительно эстетических качеств не могу не заметить: это ад.

Как люки и деревья, площадные дороги интересны в малых количествах. «О, смотрите, в OSM даже фонарные столбы отмечены — а у вас?» Именно этим микромаппинг импонирует опытным участникам: вместо многокилометровых прогулок с размокшими под дождём обходными листами значительно удобнее открыть спутниковый снимок, и — что вижу, о том пою. В окне видна крышка люка, а на спутнике есть улица, отмечаем. Поребрик, обязательно, и прописать его тип. Откроем справочник и определим виды всех деревьев во дворе. Как можно вытерпеть, что в редакторе дорога — это тонкая линия, а на спутниковой подложке — широченный проспект? А что за углом не отмечен мусорный бак, а магазины в соседнем доме два года как закрылись — мелочи.

Мы превращаем OpenStreetMap в холст, а JOSM — в графический редактор. Вместо интерпретации — закрашивание площадей. Зелёненькое — лес, синенькое — вода, серое — дорога. Какая разница, сколько там полос, каковы покрытие, максимальная скорость, разрешена ли стоянка! OSM — не место для полезных данных. Качество карты рассчитывается по количеству белых пятен на картинке. Нарисованы луг, землепользование, площади — хорошо. Проведена линия и расставлены точки (не важно, сколько на них тегов) — недостаточно.

Отсюда и импорты Корины, медленно накрывающей Европу. Отсюда и фаззер, ныне Scanaerial, закрашивающий сотни квадратных километров одним кликом. Мы носимся с лозунгом «не рисуем под рендер», но при этом в соседней теме требуем от авторов картостилей: «сделайте area:highway!» Будущее OSM — за площадями. Вся планета должна быть покрыта непрерывным слоем natural, затем слоем landuse, затем, лоскутно, слоями place, leisure, area:highway, building и прочими. У вас в потлатче каждая линия в куче мультиполигонов? Ну извините, это редактор такой плохой. Дороги перекопали, лес вырубили, а в жосме невозможно нормально разлепить полигоны? Ничего, через пару лет напишут удобный плагин, тогда и обновите карту.

Тем временем, ни один из существующих слоёв до сих пор не отображает дорожное покрытие. Даже на примитивном уровне «асфальт/не асфальт». Кому это нужно, в самом деле? Всё и так обозначено на картах генштаба, не выпендривайтесь и ездите с ними.

Выхода из этой ситуации два. Первый — запретить детальные космоснимки и прочие источники, кроме GPS-треков. Вернуться к основам, в 2005 год. Потеряем контуры домов, ну и что: для навигации всё равно достаточно адресов и прочих POI. А озёра можно рисовать и по Landsat. Может, в отсутствие возможности накликивать сотни тысяч объектов из воздуха, мы начнём ценить свойства тех немногих дорог и точек, которые увидели своими глазами. Пять осмысленных уникальных тегов на объекте станут минимумом, и станут популярнее валидаторы не количества, а качества.

Другой выход — принять то, что все рисуют под рендереры. И делать картостили не уровня «ура, я поддержал новый тип дорог, хвалите меня», а со сложной логикой, учитывающей на каждом объекте максимальное количество значащих тегов. Чтобы то, как выглядит дорога, зависело не от тега highway (который только всех запутывает), а от lanes, surface, width, smoothness, parking:lane и прочих. Чтобы насыщенность карты зависела не от количества полигонов natural и landuse, а от дорог и POI. Чтобы сторонние люди приходили на openstreetmap.ru и не восклицали «что за ужас», а выкидывали скачанные карты генштаба и нажимали кнопку «распечатать».

Но для этого авторы картостилей должны забыть о микромаппинге. А какой программист (у нас иных авторов нет) способен не отвлекаться на мелочи?