[Talk-us] Post cardinal directions using "destination_ref=US 20:east" on ramps and carriageways?
peter.davies at crc-corp.com
Mon Jan 13 18:19:14 UTC 2014
Good question. This discussion has become so complex now that we are all
in danger of losing the plot. Perhaps a summary of options will help reach
a breakthrough, or more likely leave us with all the options in use. :)
The goal is to capture cardinal directional posting (N, S, E, W) on
Interstates, US routes, other state routes, turnpikes, parkways, etc. Some
are dual carriageways, some single carriageway, and some frequently
alternate. Three methods have been suggested:
1. Where separate relations exist for each direction, we can tag (say)
"direction=south" (e.g., on I-5 in Oregon) and we are done. One tag handles
hundreds of ways. This is very efficient, so long as the carriageway's
posted direction never changes, and if there are separate relations for
2. If only one relation exists for both directions, we can tag "role=east"
or "role=west" on ways instead of "role=forward." Not everyone likes this,
but Telenav has been getting this done, and I for one applaud their
initiative. Method #2 supports mixed single /dual carriageways, as well as
routes that change posted direction at some point, but it's labor-intensive
and hard to maintain/check.
3. Yesterday I suggested that we could tag the ways with posted direction
using a new tag "posted=US 20:west". Single carriageway roads would have
"posted:forward=US 20:east" and we could infer the reverse posting except
in very rare cases where it is weird (i.e., orthogonal). This would create
many more tags but is simple and comes closer to the latest European use of
"destination=Berlin"; "destination_ref=A2". (Roads are not posted N, S, E,
W outside of the Americas; destination is used instead.)
If we use #1, it is simple and quick for many interstates, but it breaks
down on alternating single/dual routes. It also breaks down if the route
changes directional posting, as can happen on the corners of beltways. We
could get around this by having separate relation pairs for each side of
the beltway, 2+2+2+2=8, plus a parent, but mixed-single/dual routes are
still a nightmare. The nightmare could all be solved by creating three
relations for each mixed route, or more if it has directional posting
"turns", but these extra relations would take a lot of work. This would
also undo recent and ongoing relation work in states that have created a
single relation for each alternating single/dual state route.
If we use #2, it is labor-intensive and hard to maintain. Also, it's so
easy to flip the direction of single carriageway ways in iD , Potlach 2 and
JOSM that unless the relation's directional roles auto-correct we would end
up with a disintegrating big mess. At one time I liked this approach but
having coded various routes I'm not so sure. It's very hard to "do it
right", and JOSM currently works much better with forward/backward roles.
What I like about #3 is that it's actually the simplest way to go. Tag the
signing of the ways on the ways, just as we should with signed
"destination=Los Angeles" and "destination_ref=1 10". What I especially
like about this is that we can do it on the RAMPS, which are missing from
relations. Nav and info systems need to know where the ramp goes. From
Phoenix, an on-ramp could be "posted=I 10:west" to "destination=Los
Angeles". Or we could write "destination:ref=I 10:west", "destination=Los
Angeles", at which point we are almost the same as Germany/The Netherlands.
This idea I am now very much liking.
Some people have argued that "west" is not a destination, which is why I'd
suggested "posted." Others say "west" is a direction, as in method #1
above, but then mappers would write "direction=north" for I-10 in Tempe AZ
at Warner Road (where the E-W interstate runs due N-S). The UK uses "THE
NORTH" (etc.) as a destination that comes even above super-primary towns on
big blue and green signs. When UK comes to follow Germany (if that's
possible), a northbound M6 sliproad at Preston might say "destination=the
north", "destination_ref=M6". It's not identical to "destination:ref=I
10:west", "destination=Los Angeles", but it is at least a close cousin.
I think it's time to start posting cardinal directions and destinations on
ramps, and neither relations method (methods #1 or #2) can offer this.
Currently US ramps are naked. They have no ref, no name, nothing to say
what they do. Now the Dutch and Germans have signed off on "destination"
and "destination_ref", might it be time for the US to join in and sign its
ramps and carriageways similarly?
On Mon, Jan 13, 2014 at 5:05 PM, Paul Johnson <baloo at ursamundi.org> wrote:
> On Sun, Jan 12, 2014 at 7:18 AM, Peter Davies <peter.davies at crc-corp.com>wrote:
>> We would post the cardinal directions using tags for each whole
>> directional relation. However where the Muskogee Turnpike turns from E-W to
>> S-N, or has some even more complex deal such as E +ve and N -ve, the
>> 3-relation method will fail. We could further extend it by breaking the
>> relations at the turns (strictly, at the directional posting changes),
>> having maybe nine relations for a complete rectangular beltway (2 on each
>> of the N, S, W, and E sides, plus a parent) but Martijn and Kristen Kam
>> have wanted to avoid relation proliferation. This is why Martijn's firm
>> (and OSM mappers) have adopted a hybrid system, as I understand it, using
>> posted directions on roles for complex routes, and posted directions on
>> directional relations for simple Interstates like I 5.
> What's wrong with having one relation per direction with the super
> relation acting as a binder clip? I'm not understanding how this fails.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Talk-us