Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add rendering for barrier points #846

Closed
matthijsmelissen opened this issue Aug 5, 2014 · 81 comments · Fixed by #3602
Closed

Add rendering for barrier points #846

matthijsmelissen opened this issue Aug 5, 2014 · 81 comments · Fixed by #3602

Comments

@matthijsmelissen
Copy link
Collaborator

barrier=stile is not rendered. It should be where ever gate is being shown. Knowing where stiles are on country footpaths is useful when walking.

See also https://trac.openstreetmap.org/ticket/3546.

@RobJN
Copy link

RobJN commented Sep 10, 2014

@math1985 Some suggestions based on UTF symbols. The default gate symbol (the UTF symbol for non-equal ≠ U+2260) would be a good start, but you could also take inspiration from similar UTF symbols:

U+2260 ≠ (the current barrier=gate symbol)
U+2317 ⌗
U+2327 ⌧
U+233F ⌿ (maybe good for barrier=stile)
U+234F ⍏ (this would also work well for stile as it indicates that you have to climb over them)
U+2367 ⍧ (perhaps a good one for barrier=kissing_gate)
U+2253 ≓ (try this for barrier=cycle_barrier and motorcycle_barrier)
U+2256 ≖
U+2261 ≡ (This would be a good symbol for barrier=cattle_grid - also not rendered in Mapnik)

@RobJN
Copy link

RobJN commented Sep 10, 2014

Also, is it possible to change the title of this issue to be more generic? It would be great to add a symbol for barrier=kissing_gate to as these are gradually replacing stiles as a more accessable option for pedestrians (you don't have to climb over them) whilst still keeping cattle in the fields and bicycles off the footpaths.

You could also render cycle_barrier and cattle_grid.

@matthijsmelissen matthijsmelissen changed the title Add rendering for barrier=stile Add rendering for barrier points Sep 10, 2014
@matthijsmelissen
Copy link
Collaborator Author

Also, is it possible to change the title of this issue to be more generic?

Done.

@matthijsmelissen
Copy link
Collaborator Author

I don't think the UTF symbols are very clear. Does anyone have a better icon for stiles and kissing gates? Alternatively, does anyone know of any rendering that renders these?

@SomeoneElseOSM
Copy link
Contributor

For stiles, https://github.com/SomeoneElseOSM/openstreetmap-carto-AJT/blob/master/symbols/stile.png works for me. That's not SVG**; it's the same size as the graphic for gate that was in OSM-carto in May last year, and is designed to look "a bit like the gate icon".

There's also a cycle barrier and horse stile icon there too (currently experimenting with no transparency on the latter to make it a bit more prominent - the jury's still out on that).

I've not used a specific kissing gate icon because (compared to a normal gate) it doesn't restrict different traffic to that restricted by a normal gate (this'd be different if kissing gates occurred with any frequency on wheelchair routes of course, but I don't believe that they do).

It's less likely to be useful here, but for info I also went trhough barrier usage in the UK to try and map some of the more esoteric values to more common ones - see https://github.com/SomeoneElseOSM/SomeoneElse-style/blob/master/style.lua for that.

** SVG is not an issue for me personally because I never print anything out; I'm aware that this is a significant use case for some people though.

@matthijsmelissen
Copy link
Collaborator Author

@kocio-pl @nebulon42 Do you have any suggestions for an icon for barrier=stile and barrier=kissing_gate?

This is how they look like in real life: stile, kissing gate.

Something small and simple, similar to barrier=gate, would be ideal.

@kocio-pl
Copy link
Collaborator

Given very small size, complicated (3D) shapes and the fact, that our main gate icon is highly symbolic, I doubt we would be able to do it properly. Such symbolic icon as stile from @althio may be a way and something like "< -" (view from the top) for kissing gate.

BTW: I was translating the gate types for JOSM and I even did not know that some of them exist at all and what it really is...

@nebulon42
Copy link
Contributor

Kissing gate may be hard to depict in a small frame, maybe start with standard gate representation and move to a more detailed and bigger representation at higher zoom levels?
For stile I would suggest something like @althio mentioned, maybe just the steps not bars, but this would have to be tested. @SomeoneElseOSM' suggestion might also work.

@kocio-pl I also thought about a top view, but I think we should avoid that as most other icons use another perspective.

Just a side note to @SomeoneElseOSM comment about SVG: For me SVG is not actually about printing, that is a nice side effect. SVG is so important for me, because it makes the source of the graphic available and thus allows for direct modifications and improvements without having to re-draw shapes all the time.

@HolgerJeromin
Copy link
Contributor

we should consider barrier=turnstile

@matkoniecz
Copy link
Contributor

Do you have any suggestions for an icon for barrier=stile and barrier=kissing_gate?

Maybe render barrier=kissing_gate exactly like barrier=gate? These are typically smaller but I would expect them in areas with lower feature density so rendering them from later zoom level may be not necessary.

@gregrs-uk
Copy link

gregrs-uk commented Jul 23, 2016

Rendering of barrier=stile, barrier=kissing_gate and barrier=cattle_grid in particular would be very useful for countryside users and would encourage mapping of these features, which can aid outdoor navigation.

Another possibility for the stile might be something like the pi symbol π.

@gregrs-uk
Copy link

Although the pi symbol is very like the bench symbol...

@matthijsmelissen
Copy link
Collaborator Author

I would like to see these rendered too. Is anybody interested in creating an svg image?

@gregrs-uk
Copy link

I'm no expert but I will probably be able to have a go at creating/adapting some SVGs if a consensus is reached...


So some options for stiles:

U+233F ⌿
U+234F ⍏
Something like pi symbol (too similar to bench?) π
http://wiki.openstreetmap.org/wiki/Tag:barrier%3Dstile
https://github.com/SomeoneElseOSM/openstreetmap-carto-AJT/blob/master/symbols/stile.png
http://www.sjjb.co.uk/mapicons/svg/barrier/stile.svg


Options for kissing gates:

U+2260 ≠ (the current barrier=gate symbol)
U+2367 ⍧
something like "<-" (view from the top)
http://www.sjjb.co.uk/mapicons/svg/barrier/kissing_gate.svg


Options for cattle grids:
U+2261 ≡
https://github.com/SomeoneElseOSM/openstreetmap-carto-AJT/blob/master/symbols/cattlegrid.png
https://github.com/gmgeo/osmic/blob/master/barrier/cattle-grid-14.svg (sorry no preview)
http://www.sjjb.co.uk/mapicons/svg/barrier/cattle_grid.svg

@SomeoneElseOSM
Copy link
Contributor

Re Kissing Gates, I used to (in a different style) just display them as gates but now instead use https://github.com/SomeoneElseOSM/openstreetmap-carto-AJT/blob/master/symbols/kissinggate.png . I tried a number of other possibilities, but the only thing that really worked at such as small size was something fairly "clean" - just a stylised K. It's not an SVG, but feel free to borrow / adapt / whatever.

@kocio-pl
Copy link
Collaborator

I guess we need someone to code it to move this problem out of "issue zone" - would you like to try? If you need some help, feel free to ask.

@FrenchyF
Copy link

FrenchyF commented Jul 29, 2017

I'm new to all this, but would like to help implement these changes.

Using cycle_barrier as an example, I believe the necessary change is to add the following code here, starting on line 1043.

[feature = 'barrier_cycle_barrier'][zoom >= 16]::barrier {
marker-file: url('symbols/cyclebarrier.svg');
marker-fill: #3f3f3f;
marker-placement: interior;
marker-clip: false;
}

The ≓ symbol would then be uploaded as cyclebarrier.svg in symbols folder, here

Am I on the right lines?

@kocio-pl
Copy link
Collaborator

Though the shapes can be inspired by anything, including fonts, we need real SVG icons, like this one. Currently we need shapes that could be recognized and this is not the clear one.

@FrenchyF
Copy link

Two options are in the attached zip file
CycleBarrierSVGs.zip

@FrenchyF
Copy link

FrenchyF commented Sep 17, 2017

Alternatively, a simple circle symbol, like for bollards. Perhaps slightly larger?

Code would, I think, be:

[feature = 'barrier_cycle_barrier']{
[zoom >= 16] {
marker-width: 5;
marker-line-width: 0;
marker-fill: #7d7c7c;
marker-placement: interior;
[zoom >= 18] {
marker-width: 6;
}
}
}

@Tomasz-W
Copy link

Discussion summary:

UTF symbols inspiration:

U+2260 ≠ (the current barrier=gate symbol)
U+2317 ⌗
U+2327 ⌧
U+233F ⌿ (maybe good for barrier=stile)
U+234F ⍏ (this would also work well for stile as it indicates that you have to climb over them)
U+2367 ⍧ (perhaps a good one for barrier=kissing_gate)
U+2253 ≓ (try this for barrier=cycle_barrier and motorcycle_barrier)
U+2256 ≖
U+2261 ≡ (This would be a good symbol for barrier=cattle_grid - also not rendered in Mapnik)

Icons proposed/ needed:

  • barrier=stile
    stile chrisana13 (Chrisana13)
  • barrier=kissing_gate
    kissing_gate sjjb (SJJB)
  • barrier=cycle_barrier
    cyclebarrier frenchyf 1 (FrenchyF 1)
    cyclebarrier frenchyf 2 (FrenchyF 2)
  • barrier=cattle_grid (Osmic)
    cattlegrid osmic
  • barrier=motorcycle_barrier
  • barrier=turnstile

@Tomasz-W
Copy link

Tomasz-W commented Feb 28, 2018

Icons proposals:

  • barrier=cattlegrid (Osmic icon with one more bar added)
    barrier cattlegrid osmic
  • barrier=cycle_barrier
    barrier cycle_barrier (FrenchyF icon tuned up a little bit)
  • barrier=motorcycle_barrier
    barrier motorcycle_barrier
  • barrier=kissing_gate
    barrier kissing_gate
  • barrier=stile
    barrier stile (full-steps)
    barrier stile2 (free-steps)
  • barrier=turnstile
    barrier turnstile
  • barrier=full-height_turnstile
    barrier full-height_turnstile

Part of them could be resized to 12x12 (or smaller) because they are not so important objects.

@dieterdreist
Copy link

dieterdreist commented Feb 28, 2018 via email

@Tomasz-W
Copy link

Ehh... I forgot to pixel align these icons. I've designed them long months ago, and at that time I didn't even know about pixel aligning thing. Now I see that some of them are blurred. I'll upload updated versions of them today, but I think we can reject some of them at this stage - eg. 'cattle grid 1' and 'stile 1' are too big and too prominent IMO.

@Adamant36
Copy link
Contributor

Adamant36 commented Oct 12, 2018

I was thinking some of them didn't look pixel aligned. I'll test the new ones when you add them. Also, I agree about the icon sizes. They were especially to big at z17.

@Tomasz-W
Copy link

Tomasz-W commented Oct 12, 2018

@Adamant36

We need some test renderings of big european cities to check which zoom level would be proper to starting rendering these features.

@trigpoint
Copy link

@Adamant36

* barrier=cattlegrid (-> c4) https://gist.github.com/lakedistrictOSM/3ca3031a3d81e94a832e8ee5e78139f7

* barrier=cycle_barrier, motorcycle_barrier, kissing_gate, full-height_turnstile https://gist.github.com/Tomasz-W/cea0236a9f80f5592a98a8593bc9b989

* barrier=stile (-> s2) https://gist.github.com/lakedistrictOSM/12df6b7e611c730c8c1c46cba846c721

* barrier=kissing_gate (option no. 2) https://github.com/gravitystorm/openstreetmap-carto/blob/master/symbols/gate.svg

* barrier=turnstile -> copy barrier=bollard rendering

We need some test renderings of big european cities to check which zoom level would be proper to starting rendering these features.

Other than cycle and motor cycle barriers you will not find these objects in cities.

@Tomasz-W
Copy link

@Adamant36 I think it was a kind of 'false start' with opening #3450 at this stage. I've made some icons designs in different shapes and sizes (see #846 (comment)) to choose which one would be the best. We need test renderings for each one on different backgrounds and surroundings to rate it.

@Adamant36
Copy link
Contributor

Adamant36 commented Oct 16, 2018

@Tomasz-W, there's nothing saying it can't still be discussed and that things can't be added/subtracted from the PR if need be. Personally, I think cattlegrid/stile is good with the smaller icons and at z17. As the other ones are two small and they aren't city features and wont clutter the map at that zoom level. So, I don't see any reason why those two can't be done in a separate and get merged as is. Whereas, I'm perfectly willing to take out the other ones. Except they don't have multiple icons to decide from and only the zoom level. Which as I said, I think should be worked out after they are on the map for a while and people can provide real world examples of where they are an issue, because Its fine and dandy if I can find two examples motorcycle barrier being cluttered somewhere, but it might just be an outlier. Plus, the discussion of zoom levels started before what icons we where going with was even decided on. Which is putting the cart before the horse. I'm not going to test zoom levels on an icon we haven't even figure out if we are using or not. I am fine removing cycle barriers/motorcycle barriers/turnstiles from the PR if need be and having it just be cattle grid/stile. There's no reason to hold up those two icons when they are good to go though.

Plus, as I have said before. I think zoom levels versus being rendered in the first place are separate issues. Especially for issues with multiple items that all need their testing. Really, each barrier type could be its own issue/PR. Especially if I'm the one doing the coding for it and that's how I prefer it. Its not exactly a simple process. There's a lot to keep track of with a normal issue. Let alone one involving this many things. Also, your the one that said PRs are good sometimes to help things move along and that issues could be split into multiple PRs in the first place if need be. So, I don't see what the problem is.

@Tomasz-W
Copy link

Tomasz-W commented Oct 16, 2018

So, I don't see what the problem is.

I uploaded eg. 3 different versions of motorcycle barrier icon, but you took only one for PR without any test renderings provided in issue, so I felt like it was forgotten.

@Adamant36
Copy link
Contributor

Oh, my bad. I must of missed them I was looking through the different icons. I there was only the older one and then a new pixel aligned version. Which I included in the PR. Now that I know, I'll add the [wip] tag to the PR and do more tests on it.

@Tomasz-W
Copy link

Task list:

Icons files in #846 (comment)

@Adamant36
Copy link
Contributor

@Tomasz-W, there's only 393 motorcycle barriers and 845 full height turnstiles mapped. Which is pretty low. So I think we should skip rendering them for now until more are added. Especially motorcycle barriers. What do you think?

@SomeoneElseOSM
Copy link
Contributor

Re motorcycle barriers, the tagging is not "wrong", and deliberately not rendering will just encourage people to tag for the renderer. Why not just render the same as cycle barrier?

@Tomasz-W
Copy link

Tomasz-W commented Nov 6, 2018

@Adamant36 I think that even with a small usage of these tags it would be good to have them on a map, otherwise it shows a straight wall or footway without any barrier, so map users are lied like there is no barrier there, so I would add them also to make rendering complete.

@kocio-pl
Copy link
Collaborator

kocio-pl commented Nov 6, 2018

For me it makes sense to add some less popular objects if they are clearly documented and make some system together with those which are popular. Systematic approach helps to keep the inevitable chaos within sane limits.

@matkoniecz
Copy link
Contributor

Especially in cases where some quite similar ones are rendered, to avoid encouraging tagging for renderer (like relatively rare shingle in #1217)

@Adamant36
Copy link
Contributor

Adamant36 commented Dec 24, 2018

@Tomasz-W, I think I'm going to do a PR for the remaining barriers with z17 since id like to get it done and thats the default for the all the rest. Then we can modify it later on in the future with a new issue if need be.

Wait, I take that back. I guess I have to test the three different types of motorcycle barriers etc first. My bad. I'm still going with z17 though.

@Tomasz-W
Copy link

@Adamant36 Yes, task list is here: #846 (comment) and icons to test are here: https://gist.github.com/Tomasz-W/cea0236a9f80f5592a98a8593bc9b989

There is also reuse bollard rendering for turnstiles to test, because I'm still not sure if it won't make big mess in centres of big european cieties, where there is a lot of them underground.

@Adamant36
Copy link
Contributor

Alright. That might be a good call. I plan to test motorcycle and cycle barriers first. Since there's three motorcycle barriers to choose from. Then go from there after we decide on those.

@Adamant36
Copy link
Contributor

Adamant36 commented Dec 25, 2018

Motorcycle barrier (choose one)
v1 z17
motorcycle barrier v1 z17
v1 z18
motorcycle barrier v1 z18
v1 z19
motorcycle barrier v1 z19
v2 z17
motorcycle barrier v2 z17
v2 z18
motorcycle barrier v2 z18
v2 z19
motorcycle barrier v2 z19
v3 z17
motorcycle barrier v3 z17
v3 z18
motorcycle barrier v3 z18
v3 z19
motorcycle barrier v3 z19
Personally I'm leaning toward v2 or v3. Slightly more to v2 though. Also, I didn't do rendering samples for it above z17 because it just didn't look good or work. Plus, its more important decide on the icon at this point anyway. But either way, I think z17 is best. Although, I can do a few test renderings at z16 or whatever after the specific icon is decided on to prove my point if anyone wants.
Cycle barrier (choose one)
v1 z16
cycle barrier v1 z16
v1 z17
cycle barrier v1 z17
v1 z18
cycle barrier v1 z18
v1 z19
cycle barrier v1 z19
v2 z16
cycle barrier v2 z16
v2 z17
cycle barrier v2 z17
v2 z18
cycle barrier v2 z18
v2 z19
cycle barrier v2 z19
On cycle barriers I'm leaning toward v1

@FrenchyF
Copy link

I slightly prefer cycling v1 as well.

@Tomasz-W
Copy link

@Adamant36 Thanks for this nice gift in Chrismas morning! ;)

My picks are:

  • motorcycle: v2
  • cycle: v1

@Adamant36
Copy link
Contributor

@Tomasz-W, Your welcome. Merry Christmas ;)

@Adamant36
Copy link
Contributor

full-height turnstile (choose one)
(v1) z17
full-height_turnstile v1 z17
(v1) z18
full-height_turnstile v1 z18
(v1) z19
full-height_turnstile v1 z19
(v2) z17
barrier full-height_turnstile v2 z17
(v2) z18
barrier full-height_turnstile v2 z18
(v2) z19
barrier full-height_turnstile v2 z19
I prefer version 2, but only if its starting at z18. Otherwise its version version 2.
Kissing gate (choose one)
kissing gate (14px) z17
kissing_gate 14px z17
kissing gate (14px) z18
kissing_gate 14px z18
kissing gate (14px) z19
kissing_gate 14px z19
kissing gate (12px) z17
kissing_gate 12px z17
kissing gate (12px) z18
kissing_gate 12px z18
kissing gate (12px) z19
kissing_gate 12px z19
kissing gate (10px) z17
barrier kissing_gate 10px z17
kissing gate (10px) z18
barrier kissing_gate 10px z18
kissing gate (10px) z19
barrier kissing_gate 10px z19
I prefer kissing gate 12px

@Tomasz-W
Copy link

  • full-height turnstile: v2
  • kissing gate: 12px or gate icon reuse (kissing gates are usually smaller than gates for cars, but with dedicated icon they would be bigger, I don't live at the village so I don't know how important would be to show difference between classic gates and kissing gates - maybe it's not so important and gate icon would be enough?)

@Adamant36
Copy link
Contributor

Adamant36 commented Dec 26, 2018

Only important to showing access for pedestrians. It would be kind of off if they were shown bigger then normal gates though. So I really dont know. But reusing the normal gate icon wouldnt neccesarily make the allowed foot access clear. Aside from that, I doubt cows are checking OSM to see were gates they cant get passed are. So its probably superficial to show it. Although we do it with cattle grids.

@dieterdreist
Copy link

dieterdreist commented Dec 26, 2018 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.