Closed imagico closed 8 years ago
Die Antwort ist jain :) Hintergrund ist, dass service je nach Zusatztag anders gerendert wird. Wenn Du mal hier schaust sind die identisch breit und so ist das eigentlich auch gedacht: http://tile.openstreetmap.de/?zoom=17&lat=49.02772&lon=8.50766&layers=B
Deshalb schrieb ich auch 'breiter/kräftiger' - bei z16/z17 ist nur der Rand kräftiger, bei z15 ist highway=service sowohl dünner als auch schwächer.
Im internationalen Stil ist z15 auch nicht schön, denn die tracks sind dort als einfache Linie aber dafür sehr kräftig gezeichnet.
Ich würd die Breite für track bei z15 einfach an die von highway=service anpassen und das casing generell etwas schmaler oder heller machen.
Die grade1-tracks sollten übrigens über die anderen tracks gezeichnet werden, damit es an den Schnittstellen korrekt aussieht.
Ich hatte eigentlich gedacht das bereits durchgängig auf die Breite der breiterenn service-ways gesetzt zu haben.
Schau mal bei der verlinkten URL etwas weiter Süd-östlich. Die Deponiestraße ist gleich wie der track. Die Zufahrt von der B3 dünner.
Die Deponiestraße ist bei z15 dünner als die Tracks. Generell hab ich hier die normalen highway=service ohne Zusatztags im Auge. parking_aisle etc. ist was anderes.
Für das casing siehe
https://github.com/giggls/openstreetmap-carto-de/blob/master/roads.mss#L884 https://github.com/giggls/openstreetmap-carto-de/blob/master/roads.mss#L918
Da hab ich wohl bei Zoomlevel 15 einen ungewollten Bug eingebaut (siehe auch der Kommentar im roads.mss) mit dem stimmt der code nämlich nicht überein.
Was hälts Du davon? das sollte das gewünschte Verhalten erzeugen:
diff --git a/roads.mss b/ro`ads.mss
index 37d2fc2..c69cd58 100644
--- a/roads.mss
+++ b/roads.mss
@@ -915,7 +915,8 @@ Casing width is @proposed_casing_factor the width of normal road casing.
[zoom >= 13] {
line-color: @track-fill;
line-width: @track-width-z13;
- [zoom >= 15] { line-width: @service-width-z16; }
+ [zoom >= 15] { line-width: @service-width-z14; }
+ [zoom >= 16] { line-width: @service-width-z16; }
[zoom >= 17] { line-width: @service-width-z17; }
[zoom >= 18] { line-width: @service-width-z18; }
[zoom >= 19] { line-width: @service-width-z19; }
Hat irgendwie noch nicht den gewünschten Effekt
Denk dran, dass das an mehreren Stellen angepasst werden muss, die Zeilen die ich verlinkt habe sind nur das casing, daneben muss auch der fill und vermutlich auch Tunnel und Brücken geändert werden.
Ich stehe greade völlig auf dem Schlauch, denn meine Änderung hat nicht den gewünschten Effekt. Bridge ist klar.
grmpf Warum ist das immer noch breiter? Oder ist das nur optische Täuschung?
render_single_tile.py
-m 15 17158 11249 -s osm-de.xml
diff --git a/roads.mss b/roads.mss
index 37d2fc2..0256eeb 100644
--- a/roads.mss
+++ b/roads.mss
@@ -915,7 +915,8 @@ Casing width is @proposed_casing_factor the width of normal road casing.
[zoom >= 13] {
line-color: @track-fill;
line-width: @track-width-z13;
- [zoom >= 15] { line-width: @service-width-z16; }
+ [zoom >= 15] { line-width: @service-width-z14; }
+ [zoom >= 16] { line-width: @service-width-z16; }
[zoom >= 17] { line-width: @service-width-z17; }
[zoom >= 18] { line-width: @service-width-z18; }
[zoom >= 19] { line-width: @service-width-z19; }
@@ -929,7 +930,9 @@ Casing width is @proposed_casing_factor the width of normal road casing.
.bridges-casing {
line-color: @track-fill;
line-join: round;
- line-width: 2* @casing-width-z16 + @footway-width-z16;
+ line-width: @track-width-z13;
+ [zoom >= 15] { line-width: 2* @casing-width-z14 + @service-width-z14; }
+ [zoom >= 16] { line-width: 2* @casing-width-z16 + @service-width-z16; }
[zoom >= 17] { line-width: 2* @casing-width-z17 + @service-width-z17; }
[zoom >= 18] { line-width: 2* @casing-width-z18 + @service-width-z18; }
[zoom >= 19] { line-width: 2* @casing-width-z19 + @service-width-z19; }
@@ -1936,12 +1939,13 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */
}
}
- // track grade1 fill in service-fill color
+ // track grade1 fill in service-fill color (starting from z15)
[feature = 'highway_track'][int_surface = 'paved'],
[feature = 'highway_track'][tracktype = 'grade1'] {
[zoom >= 15] {
line-color: @service-fill;
- line-width: @service-width-z16 - 2 * @casing-width-z16;
+ line-width: @service-width-z14 - 2 * @casing-width-z14;
+ [zoom >= 16] { line-width: @service-width-z16 - 2 * @casing-width-z16; }
[zoom >= 17] { line-width: @service-width-z17 - 2 * @casing-width-z17; }
[zoom >= 18] { line-width: @service-width-z18 - 2 * @casing-width-z18; }
[zoom >= 19] { line-width: @service-width-z19 - 2 * @casing-width-z19; }
@@ -1952,7 +1956,8 @@ tertiary is rendered from z10 and is not included in osm_planet_roads. */
line-color: darken(white, 5%);
}
.bridges-fill {
- line-width: @service-width-z16 - 2 * @bridge-casing-width-z16;
+ line-width: @service-width-z14 - 2 * @bridge-casing-width-z14;
+ [zoom >= 16] { line-width: @service-width-z16 - 2 * @casing-width-z16; }
[zoom >= 17] { line-width: @service-width-z17 - 2 * @bridge-casing-width-z17; }
[zoom >= 18] { line-width: @service-width-z18 - 2 * @bridge-casing-width-z18; }
[zoom >= 19] { line-width: @service-width-z19 - 2 * @bridge-casing-width-z19; }
Ich sagte ja schon, dass die casing-Farbe bei tracks viel kräftiger ist als bei highway=service. Entweder muss man die casing-width reduzieren oder die Farbe aufhellen.
Gleicher Ausschnitt gerendert mit service-casing statzt track-fill:
Da sieht das eigentlich richtig aus oder?
Ich denke schon, dass eine Unterscheidung mit braunem casing sinnvoll wäre.
Natürlich ist die sinnvoll. Es ging mir doch nur darum zu prüfen ob der geänderte code richtig ist. kannst Du das bestätigen?
Ich habs nicht getestet aber sieht so weit gut aus (außer einmal casing-width-z16 statt bridge-casing-width-z16)
Vielleicht das braun noch etwas heller machen in Zoomlevel 15?
Links alt, rechts neu:
Denke das ist gut. Schaue mir das heute abend mal noch bzgl. der Brücken an und lade es dann hoch.
Zum Beispiel hier:
http://mc.bbbike.org/mc/?lon=7.647449&lat=48.092517&zoom=15&num=2&mt0=mapnik-german&mt1=mapnik
Kommt daher, dass die Straßenbreiten im internationalen Stil deutlich reduziert wurden.