Добавил отрисовку waterway=drystream (сухие русла ручьёв). Стиль такой же, как у пересыхающего ручья, только используется цвет линий рельефа.
Сделал. Стоит учитывать, что при рендеринге leisure=track имеет меньший приоритет, чем любой highway. Поэтому спортивный трек будет появляться только тогда, когда на линии не будет тега highway. Также, трассы sport=bobsleigh, surface=ice и surface=snow заливаются голубым цветом.
К сожалению “запертые ворота” отрисовываются перпендикулярно проходящей дороге, поэтому если дорога пересекает барьер под углом, получается некрасиво. А если дорога не обозначена, то ворота могут стать перпендикулярно забору Вот как здесь: https://opentopomap.ru/#map=18/59.68890/30.43670
Это только кажется, что таким символом обозначаются ворота в заборе. На практике там может быть любой другой дорожный барьер, не обязательно имеющий отношение к забору. Это больше значок прав доступа, а не физического объекта. Поэтому совершенно не факт, что его нужно позиционировать относительно забора, а не дороги.
Это может иметь смысл, только если рендерить точку barrier=gate отдельно от других барьеров, с привязкой к забору, а не к дороге. Но всё равно, точечный объект при рендеринге становится линейным. И тут может стать некрасиво на углах забора, резких перегибах и т.д. То есть, для полной красоты все ворота должны быть линейными объектами и в базе. Как, например, мосты. Но линейных ворот в базе всего 0.034% от всех ворот, и поэтому на полную красоту пока рассчитывать не приходится.
Это происходит из-за того, что алгоритм позиционирования значка ищет ближайшую дорогу в радиусе 3-х метров, и позиционируется относительно неё. Сделано это для того, чтобы рендерились препятствия с неточным позиционированием относительно дороги. Но если через барьер никакой дороги не проходит, а в радиусе 3-х метров есть какая-то тропинка, то он ошибочно привязывается к ней, и рендерится. Думаю, я попробую уменьшить радиус поиска до более компромиссного.
Может быть имеет смысл уменьшить размер значка? В стандартном стиле значок “зачеркнутых ворот” вообще всегда ориентирован по горизонтали, но у него такой маленький размер, что это совсем не бросается в глаза.
Без сортировки и общего количества строк, поскольку тогда нужно очень напрягать базу.
Если посмотреть полученные node_id на openstreetmap.org, то окажется, что некоторые барьеры, которые в первом приближении вроде бы расположены на линии дорог, на самом деле на них не находятся, а отстоят от них на небольшое расстояние, указанное в столбце distance. Это лучше видно в iD. Думаю, к такому приводят какие-то ошибки при редактировании. Но, если не учитывать эту особенность, такие барьеры не будут рендериться.
Не получится. У них минимальное количество пикселей для безошибочного считывания прав доступа. Кроме того, они соответствуют ширине дорог.
Я ошибся в количестве линейных ворот на два порядка, забыв умножить на сто. Итак, в общемировой базе их на самом деле 3,4%, в базе opentopomap.ru чуть меньше - 2,24%. И, что примечательно, ни стандартный стиль mapnik, ни мой рендер их не отрисовывают. OsmAnd тоже о них ничего не знает. Соответственно, если вы хотите увидеть свои любимые ворота на карте, не рисуйте их линией. Мир пока к этому не готов.
Я ткнул в первые три. Вторые и третьи ворота просто не соединены с дорогой, это как бы ошибка. В первом же случае ворота корректно стоят на дороге, но рядом эта дорого пересекается с другой, и расстояние считается до неё.
В общем чтобы по красоте нужны три случая: поперёк дороги, вдоль забора если нет дороги и сферические ворота в вакууме.
Ворота, через которые не проходит дорога/тропа, вряд ли могут использоваться для прохода/проезда. Иначе хоть какая-то дорога через них бы проходила. Поэтому их отрисовка не несёт практической пользы. Или есть реальные примеры калиток и ворот, через которые можно проходить на регулярной основе, но там нет хоть какой-то тропы?
Согласен. Подскажите, а возможно-ли получить список всех таких “невалидных” ворот?
Да и вообще список всех объектов, которых Вы (по какой-то причине) считаете “неправильными”?
P.S. Если это единичный случай, можно просто нарисовать дорожку к ней и всё.
Деревни, котеджные поселки, частный сектор в городах. Улицы, вдоль них заборы с калитками. Как правило калитки с улицей дорожками не соединены.
Так при 18 фактически крупномасштабный топоплан. Если, например, в сквере детская площадка не обозначена хотя бы контуром, то получается некрасиво - дорожки идут в никуда, как например здесь - https://www.openstreetmap.org/way/785170400