continue statement and order of drawn ways?

Hi, I tried to create a map where you can see arrows for oneway streets. For this I have the normal street, and wanted to create an overlay containing an arrow and a transparent background. I tried this with the continue statement. I tried the following statements: highway=motorway & oneway=yes [0x01 road_class=4 road_speed=7 level 6 continue] highway=motorway & oneway=yes [0x10f01 level 6] and highway=motorway & oneway=yes [0x10f01 level 6 continue] highway=motorway & oneway=yes [0x01 road_class=4 road_speed=7 level 6] But with both statements, the arrow is always drawn below the street. Is it somehow possible to have the arrow on top of the street? Thanks, Thorsten -- Thorsten Kukuk, Project Manager/Release Manager SLES SUSE LINUX Products GmbH, Maxfeldstr. 5, D-90409 Nuernberg GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB 16746 (AG Nürnberg)

Thorsten Kukuk schrieb am 03.05.2011 20:53:
But with both statements, the arrow is always drawn below the street. Is it somehow possible to have the arrow on top of the street?
The drawing order of the lines in a single map is not really understood and can not be set via the style file. For such tasks I use multiple map layers (base layer + overlay layer), the display order of the complete maps can be defined via mkgmap command line parameter (draw-priotrity) Gruss Torsten

On Tue, May 03, Torsten Leistikow wrote:
Thorsten Kukuk schrieb am 03.05.2011 20:53:
But with both statements, the arrow is always drawn below the street. Is it somehow possible to have the arrow on top of the street?
The drawing order of the lines in a single map is not really understood and can not be set via the style file.
Ok, thanks. That was the impression I got meanwhile, too.
For such tasks I use multiple map layers (base layer + overlay layer), the display order of the complete maps can be defined via mkgmap command line parameter (draw-priotrity)
I'm working already with several overlay layers, too. I wanted to avoid to create yet another one, but looks like that's the way to go. Thorsten -- Thorsten Kukuk, Project Manager/Release Manager SLES SUSE LINUX Products GmbH, Maxfeldstr. 5, D-90409 Nuernberg GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB 16746 (AG Nürnberg)

On 03/05/2011 21:13, Thorsten Kukuk wrote:
On Tue, May 03, Torsten Leistikow wrote:
Thorsten Kukuk schrieb am 03.05.2011 20:53:
But with both statements, the arrow is always drawn below the street. Is it somehow possible to have the arrow on top of the street?
The drawing order of the lines in a single map is not really understood and can not be set via the style file.
Ok, thanks. That was the impression I got meanwhile, too.
For such tasks I use multiple map layers (base layer + overlay layer), the display order of the complete maps can be defined via mkgmap command line parameter (draw-priotrity)
I'm working already with several overlay layers, too. I wanted to avoid to create yet another one, but looks like that's the way to go.
Thorsten Would something like this work?
highway=motorway [0x01 road_class=4 road_speed=7 level 6 continue] highway=motorway & oneway=yes [0x10f01 level 6] highway=motorway & oneway!=yes [0x10f02 level 6] Then style 0x01 with no style (so nothing is drawn) - 0x01 would be used for the routing information. Then style 0x10f02 as plain motorway and 0x10f01 as motorway with arrows.

Yes, that is also a good alternative, 0x01 as a transparent line and on top either 0x10f01 or 0x10f02 "MarkS" wrote: Would something like this work? highway=motorway [0x01 road_class=4 road_speed=7 level 6 continue] highway=motorway & oneway=yes [0x10f01 level 6] highway=motorway & oneway!=yes [0x10f02 level 6] Then style 0x01 with no style (so nothing is drawn) - 0x01 would be used for the routing information. Then style 0x10f02 as plain motorway and 0x10f01 as motorway with arrows.

On 03.05.2011 23:27, Minko wrote:
Yes, that is also a good alternative, 0x01 as a transparent line and on top either 0x10f01 or 0x10f02
you cannot make a line transparent by omitting it from the typfile, but go ahead and do your tries.
"MarkS" wrote:
Would something like this work?
highway=motorway [0x01 road_class=4 road_speed=7 level 6 continue] highway=motorway& oneway=yes [0x10f01 level 6] highway=motorway& oneway!=yes [0x10f02 level 6]
Then style 0x01 with no style (so nothing is drawn) - 0x01 would be used for the routing information.
Then style 0x10f02 as plain motorway and 0x10f01 as motorway with arrows. _______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev

Am 03.05.2011 23:37, schrieb Felix Hartmann:
On 03.05.2011 23:27, Minko wrote:
Yes, that is also a good alternative, 0x01 as a transparent line and on top either 0x10f01 or 0x10f02
you cannot make a line transparent by omitting it from the typfile, but go ahead and do your tries.
Yes, but you can use a transparent png-file ;) Henning

MarkS schrieb am 03.05.2011 22:58:
Would something like this work?
highway=motorway [0x01 road_class=4 road_speed=7 level 6 continue] highway=motorway & oneway=yes [0x10f01 level 6] highway=motorway & oneway!=yes [0x10f02 level 6]
Then style 0x01 with no style (so nothing is drawn) - 0x01 would be used for the routing information.
Then style 0x10f02 as plain motorway and 0x10f01 as motorway with arrows.
The problem is, that the oneway overlay is not only to motorways. So you would need two line styles for motorways, two linestyles for primaries, ... And if you want to add overlays for access restrictions, speed limits or what ever, th enumber of line styles required is growing exponentially. Gruss Torsten

On 04/05/2011 16:11, Torsten Leistikow wrote:
MarkS schrieb am 03.05.2011 22:58:
Would something like this work?
highway=motorway [0x01 road_class=4 road_speed=7 level 6 continue] highway=motorway& oneway=yes [0x10f01 level 6] highway=motorway& oneway!=yes [0x10f02 level 6]
Then style 0x01 with no style (so nothing is drawn) - 0x01 would be used for the routing information.
Then style 0x10f02 as plain motorway and 0x10f01 as motorway with arrows.
The problem is, that the oneway overlay is not only to motorways. So you would need two line styles for motorways, two linestyles for primaries, ...
And if you want to add overlays for access restrictions, speed limits or what ever, th enumber of line styles required is growing exponentially.
Gruss Torsten I have seen a map which goes for another approach. That version used a single line/style for the motorway itself.
They then added a second line/style for oneway roads. This second style looked a bit like an arrow but with a transparent bit down the middle so only the edges of the arrow head were visible. This reasulted in the arrow heads sitting outside the normal road and working whatever the the draw order. The drawback on this approach was that the road lines all needed to be a similar width, and it wasn't as pretty as arrows in the middle of the road.

It would be very difficult to draw the arrow in the middle of the road in the same mapset. For my Benelux map, I draw the oneway arrows on the side of the street. There is a way to draw them on top, but then you have to use the line types like 0x01, 0x02 which seem to get a higher draw priority. I use them for bicycle=no and cycling routes respectively. But be careful with this, because they are routable lines. I noticed the routing via address search will break if you don't use road_class and road_speed; also if you want to make the labels of those lines invisible, street name labels disappear permanently on some GPS units and only come back by hard resetting the unit.

Hi, Am 03.05.2011 20:53, schrieb Thorsten Kukuk:
Hi,
I tried to create a map where you can see arrows for oneway streets. For this I have the normal street, and wanted to create an overlay containing an arrow and a transparent background. I tried this with the continue statement.
I tried the following statements:
highway=motorway & oneway=yes [0x01 road_class=4 road_speed=7 level 6 continue] highway=motorway & oneway=yes [0x10f01 level 6]
and
highway=motorway & oneway=yes [0x10f01 level 6 continue] highway=motorway & oneway=yes [0x01 road_class=4 road_speed=7 level 6]
But with both statements, the arrow is always drawn below the street. Is it somehow possible to have the arrow on top of the street?
I use these statements: highway=tertiary [0x05 level 3 continue] highway=tertiary & oneway=yes [0x18 level 3] Josef -- PGP Schlüssel: 311D1055 http://keyserver.pgp.com

Am 03.05.2011 22:10, schrieb Josef Latt:
Hi,
Am 03.05.2011 20:53, schrieb Thorsten Kukuk:
Hi,
I tried to create a map where you can see arrows for oneway streets. For this I have the normal street, and wanted to create an overlay containing an arrow and a transparent background. I tried this with the continue statement.
I tried the following statements:
highway=motorway & oneway=yes [0x01 road_class=4 road_speed=7 level 6 continue] highway=motorway & oneway=yes [0x10f01 level 6]
and
highway=motorway & oneway=yes [0x10f01 level 6 continue] highway=motorway & oneway=yes [0x01 road_class=4 road_speed=7 level 6]
But with both statements, the arrow is always drawn below the street. Is it somehow possible to have the arrow on top of the street?
I use these statements:
highway=tertiary [0x05 level 3 continue] highway=tertiary & oneway=yes [0x18 level 3]
Type 0x05 is the highway, type 0x18 are only the signs for oneway. They are drawn middle over the way. highway=tertiary [0x05 level 3 continue] highway=tertiary & oneway=yes [0x18 level 3 continue] highway=tertiary & (cycleway=track | cycleway=lane | cycleway:left=* | cycleway:right=*) [0x2e level 3] The third line drawes left and right the way blue rectangles additional to the oneway signs. Josef -- PGP Schlüssel: 311D1055 http://keyserver.pgp.com
participants (7)
-
Felix Hartmann
-
Henning Scholland
-
Josef Latt
-
MarkS
-
Minko
-
Thorsten Kukuk
-
Torsten Leistikow