Continue patch not working on two routable roads.

In general the continue patch works great. However the continue patch does not seems to drop stuff if mkgmap later on thinks it is identical?? After messing for 3 hours now trying to find out why some actions don't work I have found out that mkgmap does not enact the "continue" action, in case it thinks that the result is identical - or the tags are identical. OR if there is a difference in the routing attributes (or oneway). So currently it is not possible to put two oneway streets counterfacing via continue command, nor two identical ways with different routing speed. So lets start easy: *The following also does not work * highway=* [0x01 road_class=0 road_speed=1 resolution 20 continue] highway=* [0x01 road_class=0 road_speed=1 resolution 24] highway=* [0x01 road_class=0 road_speed=1 resolution 24] *While the following works without probs:* highway=* [0x02 road_class=0 road_speed=1 resolution 20 continue] highway=path [0x01 road_class=0 road_speed=1 resolution 24] highway=path [0x01 road_class=0 road_speed=1 resolution 24] *The following example simply does not work:* highway=* & incline=down {set oneway=yes; set copy=98} highway=* & incline=up {set oneway=-1; set copy=99} highway=* & incline<0 {set oneway=yes; set copy=98} highway=* & incline>0 {set oneway=-1; set copy=99} highway=* & copy=* [0x16 *road_class=4 road_speed=3* resolution 20 continue] highway=* & copy=99 {set oneway=yes} [0x01 road_class=0 road_speed=1 resolution 24] highway=* & copy=98 {set oneway=-1} [0x01 road_class=0 road_speed=1 resolution 24] *- here 0x16 only is output. The following example will work however:* highway=* & incline=down {set oneway=yes; set copy=98} highway=* & incline=up {set oneway=-1; set copy=99} highway=* & incline<0 {set oneway=yes; set copy=98} highway=* & incline>0 {set oneway=-1; set copy=99} highway=* & copy=* [0x16 continue resolution 20] highway=* & copy=99 {set oneway=yes} [0x01 road_class=0 road_speed=1 resolution 24] highway=* & copy=98 {set oneway=-1} [0x01 road_class=0 road_speed=1 resolution 24]

On 30/09/09 22:32, Felix Hartmann wrote:
In general the continue patch works great. However the continue patch does not seems to drop stuff if mkgmap later on thinks it is identical?? After messing for 3 hours now trying to find out why some actions don't work I have found out that mkgmap does not enact the "continue" action, in case it thinks that the result is identical - or the tags are identical. OR if there is a difference in the routing attributes (or oneway).
So currently it is not possible to put two oneway streets counterfacing via continue command, nor two identical ways with different routing speed.
So lets start easy: *The following also does not work * highway=* [0x01 road_class=0 road_speed=1 resolution 20 continue] highway=* [0x01 road_class=0 road_speed=1 resolution 24] highway=* [0x01 road_class=0 road_speed=1 resolution 24]
For me, this gives two roads (the first and the second) just as I would expect. What do you expect to happen?
*The following example simply does not work:*
highway=* & incline=down {set oneway=yes; set copy=98} highway=* & incline=up {set oneway=-1; set copy=99} highway=* & incline<0 {set oneway=yes; set copy=98} highway=* & incline>0 {set oneway=-1; set copy=99}
highway=* & copy=* [0x16 *road_class=4 road_speed=3* resolution 20 continue] highway=* & copy=99 {set oneway=yes} [0x01 road_class=0 road_speed=1 resolution 24] highway=* & copy=98 {set oneway=-1} [0x01 road_class=0 road_speed=1 resolution 24]
*- here 0x16 only is output. The following example will work however:*
Again, I get the two lines that I would expect. For highway=primary and incline=down, I get a 0x16 and a 0x1. But I do see a problem: both roads will be drawn with the same value of oneway. This problem will happen for every tag that is interpreted in the code and not in the style file, eg access= and so on. ..Steve

Steve Ratcliffe wrote:
On 30/09/09 22:32, Felix Hartmann wrote:
In general the continue patch works great. However the continue patch does not seems to drop stuff if mkgmap later on thinks it is identical?? After messing for 3 hours now trying to find out why some actions don't work I have found out that mkgmap does not enact the "continue" action, in case it thinks that the result is identical - or the tags are identical. OR if there is a difference in the routing attributes (or oneway).
So currently it is not possible to put two oneway streets counterfacing via continue command, nor two identical ways with different routing speed.
So lets start easy: *The following also does not work * highway=* [0x01 road_class=0 road_speed=1 resolution 20 continue] highway=* [0x01 road_class=0 road_speed=1 resolution 24] highway=* [0x01 road_class=0 road_speed=1 resolution 24]
For me, this gives two roads (the first and the second) just as I would expect. What do you expect to happen?
*The following example simply does not work:*
highway=* & incline=down {set oneway=yes; set copy=98} highway=* & incline=up {set oneway=-1; set copy=99} highway=* & incline<0 {set oneway=yes; set copy=98} highway=* & incline>0 {set oneway=-1; set copy=99}
highway=* & copy=* [0x16 *road_class=4 road_speed=3* resolution 20 continue] highway=* & copy=99 {set oneway=yes} [0x01 road_class=0 road_speed=1 resolution 24] highway=* & copy=98 {set oneway=-1} [0x01 road_class=0 road_speed=1 resolution 24]
*- here 0x16 only is output. The following example will work however:*
Again, I get the two lines that I would expect. For highway=primary and incline=down, I get a 0x16 and a 0x1.
But I do see a problem: both roads will be drawn with the same value of oneway. This problem will happen for every tag that is interpreted in the code and not in the style file, eg access= and so on.
..Steve (sorry Steve for sending this twice to you, wanted to write this to mkgmap list and not you personally only.)
Just to bring this up again. I played around a bit with sample maps where I created ways in osm data being oneway on top of each other (having all nodes connected to each other) and then making them inverse one way roads, or one road oneway and the other not oneway with different speed_class and road_class. This gives really good (realistic) results. It would be trully great if the multiple_elements_patch could be extended maybe to allow one to do this. This way one could have slower opposite cycleways or ways slower on uphill than downhill. For opposite cycleways going against the direction of traffic often is really dangerous and one has to ride slower - so having the opposite cycleways slower would make better routing. Same for very steep ways (e.g. incline>20; incline<-20 ). As well it would be great if the multiple lines patch would allow for differently named ways, currently the first way with a name, sets the name for all following using [continue...] For convenience I have attached the multiple_elements patch again. More or less there would be a need to do the same as the opposite cycleways option is doing (styledconverter.java) but based on the style-file.
participants (2)
-
Felix Hartmann
-
Steve Ratcliffe