Example: How to map a real and complex junction

Dear all,
I tried to create an example of how to map a real but slightly complex junction.
Since I’m a newbie, I would like to post it first here on the forum for discussion, before a wiki page could be created (the pictures are already uploaded to the wiki).

Please give feedback, if there is

  • something wrong
  • something not clear
    or if you simply like it.

Thanks a lot.

How to map a junction:

  1. An example of a real but slightly complex junction

  2. Frist: add ways and tag

  3. Second: add tram halt, but how to design the junction?

  4. Third: Simplest way to map junction

  5. Fourth: (Optional) map traffic signals

  6. Fifth: (Optional) map cycle- and footways

  7. Seventh: (Optional) map traffic signals for bicycles and pedestrians

  8. Eigth: How it could look like in OSM

First Questions:

  • Where should I upload picture files that are not meant for the wiki but only for the forum? Is there a place that is specifically used for this forum?
  • Should the two footways be connected to the tram halt?
  • Should the junction itself be modelled more complex to represent all possible turning options more closely? (it might result in a flood of shared nodes and chaos of all the differnet ways)

Ok, I found the first mistakes myself:

  • in the 1st picture a traffic signal is drawn below a line
  • 2nd picture: the primary highways should in this case additionally taged with “lines=2”
  • 2nd picture: the name tags of the streed should have different values (same for cylce- and footways in picture 6)

Nice artwork :slight_smile: It looks to me as some of the most extensive mapping I’ve seen so far, I certainly haven’t mapped in this detail (yet).

The forum has not enough space for storing images locally. I suggest sites like photobucket, flickr, etc. A bit more work I know, sorry…

To be honest, I do not map footways which are directly adjacent (part of) a way. I think it’s common to assume it’s just there. Pedestrian crossings can be mapped a separate way between the two primary ways and connected with the tram way/halt. Perhaps you only need to place a single traffic signal node on each way near the crossing instead of multiple traffic signals. Other then that, figure 8 looks fine.

Crossings like this become very complex. If you want to map it completely perhaps the new relations solution can help you out here: Junctions and Turn restrictions

Thanks Lambertus for the feedback.

I only made this one junction this extensive, just to see how it will be rendered. I do not plan to do the area I life in that detailed for a while. There are other things I need to map first. But I wanted to start with a complicate one, to see the limits of the renderer.

You are right, footways should be common. I’ll remove them from the pictures.
I’ll also simplify the signals, when looking at the rendered tile it looks kind of strange to have that many signals. You are right 4 should be enough.
I will also move the tram halt to be on the intersection of tram and cycleway.

Regarding the relations you suggested. These are only proposed, right? I didn’t see any note that they have been accepted.

Just because something is merely proposed, doesn’t mean you can’t use it.
The ‘approval’ process just brings a certain tagging scheme into mainstream usage.
(Although, this could be argued that it will only become mainstream when editors, renderers and routing applications decide to support it)

Yes its interesting to ponder just how much detail we should be capturing.

As lambertus says, the footways stick out a something which seems over-the-top, since this means every street which has pavements, should have a footways mapped in. …but then again, pavements can be very wide and significant, and can flow and connect with things like crossings, footbridges, and pedestrian tunnels. If we try to map any of these things, then it becomes tempting to map pavements, particularly if we also map bus_stop, telephone, and post_box.

It’s nonsense in terms of the basic data needed to plot a zoomed out map, but it makes more sense when looking at the data needed to capture reality, when you are adding details.

Thank you Thomas and Harry Wood (are you brothers? :wink: for the feedback.

I can see a use for this kind of detailed map: when it comes to navigate pedestrians. The software needs to know where the person can enter the tram/bus. Even the mapping of all signals for cyclists makes sense, e.g. when a cyclist wants to get the fastes route (the shortest with the lowest number of signals).

At the same time, I see that it will take a long time to get all this details in and to maintain them.

Harry is right, with the zoomed out map. The renderes do not show the cycle tracks already, I think (Osmarender doesn’t show them in zoom 15).
But at the same time, it is distracting the “user” when he sees too much information. It would be of great help, if some information could be hidden (e.g. with checkboxes). E.g. when you are in a car, hide cycletracks. But it would also help if users could turn off the names of the cycletracks and the symbols of cyclist specific signals.

Sidenote: I think, that as soon as the cycle tracks are mapped along a road, the road itself should have a bicycle=no and foot=no tag. Am I right?

I disagree that pavements are always the default. Where I map there aren’t usually pavements, although this isn’t the default either. I haven’t yet added them where they do exist though. I think unless the pavement is separated by a noticeable area of grass from the road, they should be tagged on the same way as the road, although I don’t think there is an agreed way to do this yet. pavement=left/right/yes/no may work.

For question 2. The path should be connected to the tramlines, if you cross it. If its a tunnel under it, or bridge over it, then it shouldn’t connect.

No, we’re not brothers, although, we do both live in London.

There’s been lots of discussion about how to make the map more customised to how people want it. Work is ongoing with POI layers, I guess there’s currently not enough server resources to generate maptiles to overlay over the basemap.

Routers should automatically prioritise the highway types for a certain sort of transport, in this case, adding these tags would be strictly true, but I guess it’s generally not required, since bicycles are likely to still be legally allowed to use the road, if they wish.
Generally these tags deal with the legal situation of the highway.

I don’t think the ways across the junction should be a member of the street being crossed. step 3 should be in my opinion to extend the streets that come in from the sides to the tram line, so that a routing application doesn’t lead you onto the wrong street (continue straight on Sebaldsbrücker Heerstraße) but instead “continue straight on into Schlossparkstraße”.
Although a point can be made to use the tags of the street that is crossed, because you use the actual “premises” of the (the piece of land occupied by the) street you’re crossing…

I was under the impression that: there should always be a node on the intersection when ways are physically attached to each other. If ways cross each other without physical contact (e.g. bridge, tunnel) there shouldn’t be a node on the intersection.

Any non-physical attributes like turn restrictions, permissive access, way types (tram, road), etc. should be added as properties (relations?) to the ways and nodes. Permissive access and turn restrictions should not play a role with regard to placing nodes on road intersections.

So, IMHO, in this example the nodes on the intersection in image 4 are placed more or less correct. One could dispute if 6 nodes are needed (upper road is split into two just before the junction) or maybe even 3 (if the lower road is combined into one just before the intersection) as alternatives…But the current solution seems correct to me.

Just for the record I was not arguing against the node placement, but the tagging of the ways “crossing” the primary.

Ok, I must admit I was worried about this:

But sometimes it’s not bad to state the obvious again…

I disagree, IMHO the streets should be part of the higher ranked street.
This has the following reason:

  1. when a traveler has to turn around on the higher road, he will stay on the same road with the same restrictions, since the land between the two direction lanes is wide enough for him to turn in the opposit direction. While the traveler has to enter the higher road to turn in the opposite direction.
  2. When a traveler is coming from the south bound road (secondary) heading north, it could be an important information that he crosses the higher ranked road. At least if there are restrictions applied to that road, since they will overrule the lower ranked road.
  3. it will look more nicely on the map when the junction looks like the higher road (in tis case red for primary).

It can be argued what name the two junction ways should get. One solution would be to duplicate the ways and name these according to the streets they extend. Or to even tag them with the same rank (highway tag). The last would solve the above issues as well. But it will be harder to maintain, since the dublicated ways are hard to spot in JOSM (if you don’t know/expect them to be there).

What do others think about this issue?

The general rule for roundabout’s is that it uses the same rank as the most important road that connects to it. So I guess the same rule could be applied to the ranking as well as the name of the junction.

I have a question that is related and pertinent to this topic. Looking at pic 4 above, if the 2 streets connecting to the main thoroughfare have different names, do we name them until the middle or only to the edges of the thoroughfare? and if the later what to name the paths crossing the intersection?