Стиль картографа

Вопросы картографических стилей, геоданных, OpenStreetMap, ГИС и прочей чепухи

Answered question

Космическая эпоха

Космическая эпоха медленно, но верно наступает. Это не Гагарин, не Звездные войны, и не колонии на Марсе. Космическая эпоха — это время, когда из космоса на тебя смотрят тысячи глаз, пусть даже путем разных сервисов.

Правда тут речь скорее про авиапассажиров (рядом с Пулково), но суть все-равно верна. Жду время, когда надписи «видеосъемка свадеб», «кухни из гранита», «метизы по оптовым ценам» будут клеить не на задние стекла, а на крыши автомобилей.

А еще нас ждет грандиозный баттл: спутники ДЗЗ против коптеров. Это будет даже круче, чем встреча Гнойного с этим вторым, как его.

Changed status to publish

Временные объекты в OSM

Божечки, каких проблем из ничего вызывает вопрос о внесении временных объектов в OpenStreetMap! Ярмарку выходного дня нельзя. Стенд к чемпионату мира нельзя. Уличную фотовыставку нельзя. Ну и чем авторы таких заявлений отличаются от гэбэшных ретроградов?

В OSM нельзя две вещи: нарушать копирайт и не получать кайф от картирования. Даже откровенный вандализм в некоторых случаях возможен. Проекту не хвататет катастроф, которые помогли бы справиться с родовыми травмами. Последняя подобная была разве что в момент перехода на лицензию ODBL. Об этом намекал и Стив Кост в свое время (помните заявление, о запрете рендеринга ненумерованных домов?).

Что же касается временных объектов, то тут все просто. Мое мнение — вносите на здоровье. Главное, после того, как объект исчезнет — убрать его с карты. Ну или написать теги «temp_from=…» и «temp_to=…» и специальный бот, который по этим тегам будет устаревшие объекты удалять.

Answered question

Минутка гештальт картографии

Решил сделать перерыв в работе и задумался о новом шрифте для карты. Вы же знаете — подписи это головная боль, проблема, которая до сих пор далека от решения.

В русском языке основную смысловую нагрузку несут согласные, это каждому известно с начальной школы. Так почему бы не сделать гласные буквы более узкими, сэкономив тем самым драгоценное место?

Идея хороша, но лишь в теории, поскольку на практике такая надпись разбивается на части и перестает восприниматься как единый объект. Подпись на карте — это не просто набор букв, это гештальт.

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

Changed status to publish

Штрихпунктир

При разработке картографического стиля с большой вариативностью линейных объектов часто возникает желание зафигачить пунктир или штрихпунктир. Это можно, но обязательно соблюдая меры предосторожности. Линии с разрывами хорошо подходят только для прямых объектов. Другими словами: отображать штрихпунткиром границы американских штатов — норм. Отображать штрихпунктиром границы областей России — фу-фу-фу

Answered question

Вопрос тегирования #43

Тут такое дело, Сеньор, или как там у них в Японии принято, Мотидзуки шестой год утверждает, будто доказал гипотезу Эстерле — Массера. Но с ним особо никто и не спорит, поскольку понять 500-страничную работу по теории чисел на японском языке пока никому не удалось. Я не прошу у вас совета по работе Мотидзуки, но скажите, как тегировать скворечник в OSM?

Changed status to publish

Карты-карарты

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

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

Почему пешеходный переход размечают «зеброй»? Потому что изначально конструкция из блоков позволяла проезжать телегам и переходить дорогу не утопая в грязи по коленки. Наверняка есть более подходящая разметка, которая может спасти тысячи жизней, но традиция важнее безопасности на дорогах.

С картами то же самое. Крупнейшие компании работают над красотой своих тайлов (читай: рисуют переходы желтым цветом), не замечая тщетности усилий. А все потому, что современная карта — это издевательство: для чего человеку, который смотрит прямо показывать вид сверху?

Автомобильные навигаторы преуспели в этом вопросе, но это лишь небольшой шаг. Зачем смотреть на телефон с домами-коробками, а потом переводить взгляд? Оглянитесь вокруг: будущее уже наступило. Магазины превращаются в галереи QR-кодов по принципу зарядьевского купола. Ловля воображаемых существ в храмах теперь не признак белой горячки. Даже коровы в ростовской деревне гуляют с RFID-метками в ушах. Лишь картография ностальгирует по прекрасным временам Дюфура.

Тайловая технология произвела революцию, дав пользователю одновременно два десятка карт. Но переход с растра на вектор лишь унылая предсказуемая рутина. Будущее за дополненной реальностью: когда мы можем прямо на местности увидеть необходимые направления и важные объекты. И да, такую карту тоже можно будет зумить. Я не говорю о наземной фотограмметрии, над которой мы с Энрико Феррегутти работали несколько лет назад. Кроме того…, хотя стоп, к чему выдавать раньше времени секреты нового картостиля?

Вы скажете: это очень сложно и такое сделать нельзя. А я напомню, что еще недавно на водительские права не ставили маркировку «АТ» и почтальон приносил вызов на телефонные переговоры. Разговор же о картографии будущего, не так ли?

Вы хотите увидеть карту будущего? Вот:

Changed status to publish

Как же так, Яндекс?

Сложность и красоту стиля Яндекс-карт я по настоящему оценил несколько лет назад, после того как украл его для одной таксомоторной компании. С тех пор Яндекс пережил несколько больших обновлений: появился девятнадцатый зум, исправлены многие косяки, особенно ошибки в уровнях слоев (например, стрелки направления движения несколько лет назад были под пешеходными переходами). Даже подчищены многие данные, не говоря уже о наполнении базы.

Яндекс никогда не обещал оправдывать надежд, но раньше ему это удавалось. Во всяком случае, до последнего обновления. Полагаю дело было так: в офис пришел новый хрен и говорит: «Мы крутая технологичная компания, а до сих пор живем на растрах, как лохи». Взяли и перенесли Яндекс-карты на векторные тайлы. Теперь пользователь не ждет, пока загрузятся нужные квадраты. Он ждет появления линий и дополнительных точек.

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

Идея векторных тайлов хороша, спору нет. Главное помнить, что при шаге зума в 0.5 и диапазоне зумов 2-19 пользователь при масштабировании увидит от нескольких десятков до нескольких сотен разных карт, каждая из которых должна выглядеть как минимум вменяемо.

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

Changed status to publish

Картография в широком смысле

Вопрос картографии будущего, которому была посвящена июньская заметка требует особого пояснения. Термин «когнитивная карта» неоднозначен, особенно если использовать его за пределами биологических наук, но суть вопроса это не меняет — географическая составляющая в картах будет уменьшаться.

Какая разница, каково реальное расстояние между объектами на карте, если добраться до них можно за одинаковое время? Зачем нужен поворот с юга на восток, если достаточно знания о том, что дорога поворачивает налево (а когда идешь обратно — направо)? Координаты всегда будут на карте в том или ином виде, но зачем знать место пересечения экватора с Гринвичским меридианом если вы планируете велосипедную поездку по городу?

В широком смысле я вижу в картографии искусство находить закономерности в свойствах различных объектов и формируемых ими структур. Берем пространственные свойства — получаем классическое изображение фрагмента планеты. Берем распределение величины — получаем диаграмму. Берем свойства восприятия объектов, получаем гештальт и когнитивные карты: развертки пространства на однонаправленное движение. Берем три взаимозависимых дифференциальных уравнения — получаем аттрактор Лоренца. Берем физико-механические свойства кирпича — получаем дом. Все это картография.

Нет ничего плохого в широте и долготе, но пространственные координаты хороши не всегда. Вот простая задача: вы в Москве, имеете x рублей, y свободного времени и желание отправиться в путешествие. Открываете карту, хоть тот же OpenStreetMap и понимаете, что пользы от нее никакой. Как использовать знание о том, что Африканда севернее Москвы? Правильно — никак. Карта как отображение пространственной закономерности для вашей задачи не годится.

Размышляя над задачей, в рамках эксперимента я собрал данные по стоимости и продолжительности поездок в плацкартных вагонах из Москвы в крупные российские города. Данные приведены преимущественно на 1 августа 2019 года, несколько поездов в диапазоне 1-10 августа. Если в город отправляется несколько поездов, выбран самый дешевый рейс и самый дешевый класс обслуживания.

Данные разбиты на квадранты в зависимости от положения относительно Москвы (например, Ставрополь южнее и восточнее Москвы, поэтому расположен в правом нижнем квадранте). Внутри каждого квадранта города соординированы по стоимости поездки и времени в пути. Москва — центр отчета (0 рублей, 0 часов).

Казалось бы график и график, что такого? Но любопытно, что для людей, которые выбирают дешевые билеты, карта России отличается от привычного вида: Томск от Москвы дальше чем Красноярск, Питер ближе к Москве, чем Великий Новгород, а расстояние (естественно, не метрическое) до Благовещенска, Хабаровска и Биробиджана вообще одинаково.

Если совсем упростить мысль (даже скорее опошлить), инфографика — тоже часть картографии и часто она гораздо важнее привычной географической карты. Рано или поздно, это станет очевидно всем.

Ах да, самое главное забыл. Каждая десятая столица субъекта России не имеет прямого железнодорожного сообщения с Москвой. Попробуйте отследить этот факт на географической карте.

P.S. файл в полном разрешении доступен по ссылке

Posted new comment
androkusha добавлен комментарий

Расположения Калининграда на этой карте для меня контринтуитивно.

Проблема тегирования

На днях в осмерском телеграмм-чатике пользователь Sergey Sinitsyn задал любопытный вопрос: «Из одной точки одновременно растут берёза, сосна и ель — расположите теги у точки в правильной последовательности». Можно отмахнуться, мол ставь как угодно, но вообще-то это вызов, который в приличном обществе принято принимать. Можно даже расширить вопрос до принципиального способа тегирования таких объектов.

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

1. Геометрический способ.
Семь знаков после запятой обеспечивают сантиметровую точность (вдоль меридиана 1.1 см, вдоль параллели Москвы около 0.5 см). Это позволяет наносить любые деревья, как бы близко они не росли друг к другу — нет смысла использовать одну точку для всех деревьев сразу.

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

2. Биологический способ.
Если сантиметровой точности недостаточно, выход есть. В OpenStreetMap я не встречал правила, согласно которому точка дерева на карте соответствует расположению комля. А поскольку третьей координаты нет, точкой дерева можно считать проекцию центра биомассы организма на поверхность земли. Таким образом, растущие из одного места наклоненные деревья, могут быть удалены на карте друг от друга на десятки метров.

3. Формальный способ.
Никто не мешает поставить на точку тег «группа деревьев». Строго говоря, это как раз один из случаев natural=wood. Представлять три дерева как лес непривычно, но в osm лес понимается по айтишному, как более одной воткнутой в землю толстой разветвленной палки.

4. Нечеткий способ.
Я не мог про это не сказать, сами понимаете. Способ аналогичен предыдущему, но позволяет не только указать на группу деревьев, но и дать пояснение о породе. Например так: natural=wood, species=betula …:0.3, species=pinus …:0.3, species=picea …:0.4. Нотация произвольная, характеристические числа соответствуют выраженности вида в группе (здесь все деревья одинаковы, только елка-picea чуть больше: 0.4 вместо 0.3).

5. Динамический способ.
Вернемся к natural=tree. Поскольку актуальность правки часто не отслеживается, есть смысл использовать порядок развития группы деревьев. Я бы расположил первой елку, как наиболее перспективную, последней сосну, которая доживает последние годы.

6. Ориентирный способ.
Первым указываем дерево, которое выделяется наиболее сильно, либо представляет наибольший интерес. Поскольку речь идет о вторичной сукцессии со сменой березняка на ельник, видны следы временного заболачивания и косвенные признаки пожара (лет сорок назад), я бы указал первой сосну, второй березу. Но с точки зрения лесохозяйственника первой бы поставил ель, второй березу, а эту сосновую рухлядь вообще бы не тегировал.

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

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

А вы говорите «проблема тегирования».

Фотку честно спер из телеграмма. Автор: Sergey Sinitsyn

Changed status to publish

Фомич

О связи проекции с пониманием Земли кто только не говорил, от Каврайского до Дубового. Каждый год новый перец открывает людям глаза на страшную тайну Меркатора, понятие локсодромии, проекцию Штаба-Вернера или другую пыльную хрень.

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

Идея создать стиль для небольшого района, а потом заменить в базе этот район на целую планету напоминает анекдот про автомат и детскую коляску: улица на которой в дождь застревает УАЗ на карте выглядит словно бульвар в Пало-Альто. Автоматическая генерализация искажает объекты карты лучше всякой проекции. Отказ от обработки данных  приводит к тому, что карта показывает линию вместо дороги и прямоугольник вместо дома.

На этой картинке четыреста крупных рек России. Попробуйте отыскать реку Фомич. Она протекает по Анабарскому плато впадая левым притоком в Попигай. Если задание выглядит сложным — попробуйте сделать то же самое на любом картографическом сервисе. Или найти залив Бабушкина. Или Северные Увалы. Или Становой. Кто вообще сейчас помнит про эти топонимы?

Математическая картография веками искривляла мир. Новые технологии очистили его за пару десятилетий. Искривлять стало нечего: остались лишь границы и береговые линии. Да и те ненадолго.

Changed status to publish

Карты будущего

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

Мы так долго живем на Земле, что представляем себе карты лишь как самостоятельный продукт. Объекты на карте статичны, а их расположение не зависит от наблюдателя. Но вы замечали, что карты в научно-фантастических фильмах всегда сделаны по тому-же принципу? Они трехмены, голографичны и невероятно красивы, но все-равно выглядят так, словно Вселенная остановилась. Потому что никто не знает, как нанести на карту движущиеся объекты, да еще при условии, что ты сам летишь по сложной траектории.

Мы живем в удивительную эпоху. За несколько десятилетий ушли в историю такие незыблемые понятия как масштаб, легенда, зарамочное оформление. Устарел принцип двух миллиметров. В закон Вебера-Фехнера пора добавлять коэффициент уровня заряда батареи. Исчезли бергштрихи, аббревиатуры, инженерно-тактическое наполнение, высоты урезов воды и много других вещей. Кто сейчас вспомнит, что закрытые штольни принято обозначать перевернутым условным знаком, а символ АЗС расположен над распределительным пультом?

Точно так же с карты уйдет расстояние. Метры, километры — это абсолютно бессмысленный инструмент, анахронизм. Удаленность объектов будут оценивать временем, стоимостью и черт знает чем еще, но явно тем, что необходимо пользователю напрямую. Вместе с расстоянием исчезнет и классическая маткартография. Об альтернативных проекциях уже сейчас мало кто вспоминает, а в будущем даже про EPSG:3857 будут знать лишь цифровые археологи.

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

Changed status to publish

Фиаско с 0/0/0.png

Изначально я хотел сказать про японские кроссворды, которые наталкивают на любопытную возможность хранения растровой графики. Но в результате моя мысль о том, что в OpenStreetMap пока не сделано вообще ничего.

Вроде база растет, осмеры добавляются. Порой слышен разочарованный голос: «У меня в городе все замапили!» (да, это сарказм). Но возьмите самый знаменитый тайл мапника: 0/0/0.png. Для проверки теории о кроссвордах, я решил получить данные о комбинациях цветов в каждой строке и столбце тайла.

Удивительно, но в припадке этой дури мне хватило ума взглянуть на гистограмму. Нулевой тайл стандартного стиля OpenStreetMap содержит восемьдесят два цвета. Восемьдесят два! А выглядит все-равно так, словно муху по лобовому стеклу дворником размазало.

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

А это всего один тайл. Только разговор о тайлах. Лишь визуализация. Один из вопросов софта. Часть инженерной составляющей OpenStreetMap. Еще расти и расти.

Нет большего доказательства стагнации, чем осознание грандиозности перспектив.

Answered question

Спортивное картографирование

Если бы судьба занесла меня в хипстерскую картографическую компанию, первым делом я бы предложил устроить чемпионат по спортивному картографированию. Не механическое обклацивание снимков на скорость (хотя в этом есть элемент азарта), а именно состязательное решение сложной картографической проблемы. Например: подготовить карту лучших длительных веломаршрутов в Усть-Донецком районе Ростовской области. Или карту заселенности Подмосковья. Или перевизуализация карты ограниченным набором цветов: пусть будет желтый и фиолетовый. Или еще что-нибудь в этом духе.

Спортивное картографирование — это такая же дурь, как и спортивная хирургия: дешево, трешово и зрелищно. Потом пиарщикам можно пол-года зарплату не платить. А главное — самые невероятные решения возникают в первые секунды после знакомства с задачей, а спустя пару дней о них даже вспомнить никто не может.

Видимо по этой причине я не работаю в хипстерской картографической компании.

Answered question

Как тегировать лесные кварталы в OpenStreetMap

Хорошо, что я отписался от всех чатов, иначе от прочтения OSM-RU у меня бы мозг воспалился. Я не знаю как обстоят дела с лесными кварталами на планете Нибиру, но у нас все завязано на лесоустройство и конторы в названии которых есть буквы «леспроект».

Теория такова: каждые десять лет лесхоз делят на кварталы, в европейской части чаще всего 1х1 км. В первый раз прорубают просеки, после этого границы стараются не изменять. В каждом углу квартала вкапывают столбы с номерами (номер смотрит в центр квартала). Нумеруются кварталы слева-направо сверху-вниз. Нумерация может быть неизменной очень долгое время, но если к лесничеству присоединили территорию или наоборот, часть леса вывели из фонда — добавляются/удаляются кварталы и нумерация «плывет». Пограничные кварталы часто имеют неправильную форму, поэтому их иногда могут объединять/разделять, что тоже влияет на нумерацию. Особенно если на таких кварталах нет леса (напомню, что лесной фонд и лесопокрытая территория — это разные вещи). Аналогичная ситуация происходит, если лесхоз пересекает линейный объект (газопровод, лэп, дорога и др.)

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

На практике лесхозов уже давно нет, вместо них лесничества, а вместо лесничеств — участковые лесничества. Документы могут быть утеряны, повреждены или вам их просто не дадут. Лесоустройство может опаздывать на один, два, а то и три периода (в переводе — нихрена не делали со времен Союза), многие столбы забыли вкопать, те что вкопали не подписаны, а те, что подписаны давно выцвели и сгнили. Нумерация кварталов может идти не по принципу «слева-направо сверху-вниз», визирки вы не найдете даже в образцово-показательных кварталах, а в обычных лесничествах бывает, что и просеки заросли. Выдела обрисованы от балды, а там где по документам сорокалетние елки, растет береза с ольхой. Треш, бардак и анархия. А если кто скажет, что у него полный порядок и только он хранитель истины — плюньте в рожу этой собаке дикой.

Но вот вам вишенка на торте — номера кварталов можно иногда найти в открытых проектах освоения лесов, но все это часть лесоустроительной документации, а последняя всегда грифована как ДСП. Это юридический казус, но формально он ставит под сомнение возможность внесения данных о кварталах в OpenStreetMap. Это значит, что всякие «открытые данные о лесах» можно скормить шредеру, а в базу вносить то, что указано на местности. Благо, столбиками до сих пор выделяют не только кварталы, но и границы рубки, на которых номер квартала тоже подписан. Причем на рубках самая актуальная информация: идешь по лесу — как свежую газету читаешь.

В конечном итоге, какая разница под каким номером проходит этот участок в ГУЛФе, если на местности он обозначен как квартал 94? Откроют ГУЛФ — тогда и поговорим.

Changed status to publish

Вопрос тегирования #42

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

Внимание, вопрос к знатокам: как тегировать подобное состояние объекта в OpenStreetMap? Условный индастриал_статус=краш. А как тегировать пострадавшие от техногенной авари территории?

Вот только не надо мне говорить, что это не для OSM. Во-первых, это свойство ничем не отличается, от проходимости дорог или статуса заброшенности. Во-вторых, это не обязательно временный тег, Чернобыль тому пример. В третьих он имеет важность для пользователя, может я хотел в тех краях на велике кататься, а не бензолом дышать. В четвертых, это не нарушает правил OSM. В-пятых, OSM тем и крут, что позволяет картировать нестандартные вещи, а не только домики обводить.

Вам слово, коллеги.

Changed status to publish