Changes between Version 16 and Version 17 of Styles/Lane_and_Road_Attributes


Ignore:
Timestamp:
2013-02-24T12:00:32+01:00 (13 years ago)
Author:
imagic
Comment:

Added support for access:lanes=..|no|.. (red dashed) and changed the color of bus:lanes and psv:lanes to green

Legend:

Unmodified
Added
Removed
Modified
  • Styles/Lane_and_Road_Attributes

    v16 v17  
    4545    description: "Visualization of lanes, width, turn lanes, changing the lane, destination, lighting and street lamps, sidewalk, cycletracks, bicycle lanes, bus lanes, psv lanes.";
    4646    author: "Martin Vonwald";
    47     version: "0.99-beta11-[[revision]]_[[date]]";
     47    version: "0.99-beta12-[[revision]]_[[date]]";
    4848    license: "CC-BY-SA";
    4949    min-josm-version: "5714";
     
    7979  style_bicycle_color: #8080C0;
    8080
    81   /* Color of the dashes if lanes is psv=designated */
    82   style_psv_color: red;
    83 
    84   /* Color of the dashes if lanes is bus=designated */
    85   style_bus_color: red;
     81  /* Color of the dashes if lane is access=no */
     82  style_noaccess_color: red;
     83
     84  /* Color of the dashes if lane is psv=designated */
     85  style_psv_color: lightgreen;
     86
     87  /* Color of the dashes if lane is bus=designated */
     88  style_bus_color: lightgreen;
    8689}
    8790
     
    414417/***************************************************************************************************************************************************/
    415418/*-------------------------------------------------------------------------------------------------------------------------------------------------*/
    416 /* Designated lanes                                                                                                                                */
    417 /*-------------------------------------------------------------------------------------------------------------------------------------------------*/
    418 /***************************************************************************************************************************************************/
     419/* Lane access (no and designated)                                                                                                                 */
     420/* The property designated_color_xxx will be overwritten by later rules                                                                            */
     421/* TODO: both_ways are not implemented                                                                                                             */
     422/*-------------------------------------------------------------------------------------------------------------------------------------------------*/
     423/***************************************************************************************************************************************************/
     424/*-------------------------------------------------------------------------------------------------------------------------------------------------*/
     425/* Access=no forward lanes                                                                                                                         */
     426/*-------------------------------------------------------------------------------------------------------------------------------------------------*/
     427way|z17-[is_prop_set(ok)]["access:lanes:forward"],
     428way|z17-[is_prop_set(ok)]["access:forward"],
     429way|z17-[is_prop_set(ok)]["access:lanes"][prop(oneway_type)=1],
     430way|z17-[is_prop_set(ok)]["access"][prop(oneway_type)=1]
     431{
     432    temp: eval(cond(has_tag_key("access:lanes"),tag("access:lanes"),
     433                                cond(has_tag_key("access"),tag("access"),
     434                                cond(has_tag_key("access:lanes:forward"),tag("access:lanes:forward"),
     435                                     tag("access:forward")
     436                                    ))));
     437    temp_list: eval(split("|",prop(temp)));
     438    temp_length: eval(length(prop(temp_list)));
     439    designated_color_forward_1: eval(((prop(temp_length)>0) && ((get(prop(temp_list),0)="no") || (get(prop(temp_list),0)="private")))?prop(style_noaccess_color):prop(designated_color_forward_1));
     440    designated_color_forward_2: eval(((prop(temp_length)>0) && ((get(prop(temp_list),1)="no") || (get(prop(temp_list),1)="private")))?prop(style_noaccess_color):prop(designated_color_forward_2));
     441    designated_color_forward_3: eval(((prop(temp_length)>0) && ((get(prop(temp_list),2)="no") || (get(prop(temp_list),2)="private")))?prop(style_noaccess_color):prop(designated_color_forward_3));
     442    designated_color_forward_4: eval(((prop(temp_length)>0) && ((get(prop(temp_list),3)="no") || (get(prop(temp_list),3)="private")))?prop(style_noaccess_color):prop(designated_color_forward_4));
     443    designated_color_forward_5: eval(((prop(temp_length)>0) && ((get(prop(temp_list),4)="no") || (get(prop(temp_list),4)="private")))?prop(style_noaccess_color):prop(designated_color_forward_5));
     444    designated_color_forward_6: eval(((prop(temp_length)>0) && ((get(prop(temp_list),5)="no") || (get(prop(temp_list),5)="private")))?prop(style_noaccess_color):prop(designated_color_forward_6));
     445    designated_color_forward_7: eval(((prop(temp_length)>0) && ((get(prop(temp_list),6)="no") || (get(prop(temp_list),6)="private")))?prop(style_noaccess_color):prop(designated_color_forward_7));
     446    designated_color_forward_8: eval(((prop(temp_length)>0) && ((get(prop(temp_list),7)="no") || (get(prop(temp_list),7)="private")))?prop(style_noaccess_color):prop(designated_color_forward_8));
     447
     448    /* Lane count based on :lanes values */
     449    tag_lanes_all_min: eval(has_tag_key("access:lanes")?min(prop(tag_lanes_all_min),prop(temp_length)):prop(tag_lanes_all_min));
     450    tag_lanes_all_max: eval(has_tag_key("access:lanes")?max(prop(tag_lanes_all_max),prop(temp_length)):prop(tag_lanes_all_max));
     451    tag_lanes_fwd_min: eval(has_tag_key("access:lanes:forward")?min(prop(tag_lanes_fwd_min),prop(temp_length)):prop(tag_lanes_fwd_min));
     452    tag_lanes_fwd_max: eval(has_tag_key("access:lanes:forward")?max(prop(tag_lanes_fwd_max),prop(temp_length)):prop(tag_lanes_fwd_max));
     453}
     454
     455/*-------------------------------------------------------------------------------------------------------------------------------------------------*/
     456/* Access=no backward lanes                                                                                                                         */
     457/*-------------------------------------------------------------------------------------------------------------------------------------------------*/
     458way|z17-[is_prop_set(ok)]["access:lanes:backward"],
     459way|z17-[is_prop_set(ok)]["access:backward"],
     460way|z17-[is_prop_set(ok)]["access:lanes"][prop(oneway_type)=(-1)],
     461way|z17-[is_prop_set(ok)]["access"][prop(oneway_type)=(-1)]
     462{
     463    temp: eval(cond(has_tag_key("access:lanes"),tag("access:lanes"),
     464                                cond(has_tag_key("access"),tag("access"),
     465                                cond(has_tag_key("access:lanes:backward"),tag("access:lanes:backward"),
     466                                     tag("access:backward")
     467                                    ))));
     468    temp_list: eval(split("|",prop(temp)));
     469    temp_length: eval(length(prop(temp_list)));
     470    designated_color_backward_1: eval(((prop(temp_length)>0) && ((get(prop(temp_list),0)="no") || (get(prop(temp_list),0)="private")))?prop(style_noaccess_color):prop(designated_color_backward_1));
     471    designated_color_backward_2: eval(((prop(temp_length)>0) && ((get(prop(temp_list),1)="no") || (get(prop(temp_list),1)="private")))?prop(style_noaccess_color):prop(designated_color_backward_2));
     472    designated_color_backward_3: eval(((prop(temp_length)>0) && ((get(prop(temp_list),2)="no") || (get(prop(temp_list),2)="private")))?prop(style_noaccess_color):prop(designated_color_backward_3));
     473    designated_color_backward_4: eval(((prop(temp_length)>0) && ((get(prop(temp_list),3)="no") || (get(prop(temp_list),3)="private")))?prop(style_noaccess_color):prop(designated_color_backward_4));
     474    designated_color_backward_5: eval(((prop(temp_length)>0) && ((get(prop(temp_list),4)="no") || (get(prop(temp_list),4)="private")))?prop(style_noaccess_color):prop(designated_color_backward_5));
     475    designated_color_backward_6: eval(((prop(temp_length)>0) && ((get(prop(temp_list),5)="no") || (get(prop(temp_list),5)="private")))?prop(style_noaccess_color):prop(designated_color_backward_6));
     476    designated_color_backward_7: eval(((prop(temp_length)>0) && ((get(prop(temp_list),6)="no") || (get(prop(temp_list),6)="private")))?prop(style_noaccess_color):prop(designated_color_backward_7));
     477    designated_color_backward_8: eval(((prop(temp_length)>0) && ((get(prop(temp_list),7)="no") || (get(prop(temp_list),7)="private")))?prop(style_noaccess_color):prop(designated_color_backward_8));
     478
     479    /* Lane count based on :lanes values */
     480    tag_lanes_all_min: eval(has_tag_key("access:lanes")?min(prop(tag_lanes_all_min),prop(temp_length)):prop(tag_lanes_all_min));
     481    tag_lanes_all_max: eval(has_tag_key("access:lanes")?max(prop(tag_lanes_all_max),prop(temp_length)):prop(tag_lanes_all_max));
     482    tag_lanes_bwd_min: eval(has_tag_key("access:lanes:backward")?min(prop(tag_lanes_bwd_min),prop(temp_length)):prop(tag_lanes_bwd_min));
     483    tag_lanes_bwd_max: eval(has_tag_key("access:lanes:backward")?max(prop(tag_lanes_bwd_max),prop(temp_length)):prop(tag_lanes_bwd_max));
     484}
     485
    419486/*-------------------------------------------------------------------------------------------------------------------------------------------------*/
    420487/* Bus forward lanes                                                                                                                               */
     
    24722539}
    24732540
    2474 
    24752541}}}