| | 1006 | /*-------------------------------------------------------------------------------------------------------------------------------------------------*/ |
| | 1007 | /* Both-way lanes (SVG) */ |
| | 1008 | /*-------------------------------------------------------------------------------------------------------------------------------------------------*/ |
| | 1009 | way|z17-[is_prop_set(ok)][prop(style_use_svg_turn)]["turn:lanes:both_ways"], |
| | 1010 | way|z17-[is_prop_set(ok)][prop(style_use_svg_turn)]["turn:both_ways"] |
| | 1011 | { |
| | 1012 | temp: eval(cond(has_tag_key("turn:lanes:both_ways"),tag("turn:lanes:both_ways"),tag("turn:both_ways"))); |
| | 1013 | temp_list: eval(split("|",prop(temp))); |
| | 1014 | temp_length: eval(length(prop(temp_list))); |
| | 1015 | |
| | 1016 | turn_image_bothways_1: ""; t: eval(get(prop(temp_list),0)); t_scale: 1.0; |
| | 1017 | t_test: eval(regexp_test("^(.*;)*through(;.*)*$",prop(t))); turn_image_bothways_1: eval(prop(t_test)?prop(turn_svg_through_forward): prop(turn_image_bothways_1)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1018 | t_scale_after_through: eval(prop(t_scale)); |
| | 1019 | t_test: eval(regexp_test("^(.*;)*slight_right(;.*)*$",prop(t))); turn_image_bothways_1: eval(prop(t_test)?concat(prop(turn_image_bothways_1),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_slight_right_forward),"</g>"):prop(turn_image_bothways_1)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1020 | t_test: eval(regexp_test("^(.*;)*right(;.*)*$",prop(t))); turn_image_bothways_1: eval(prop(t_test)?concat(prop(turn_image_bothways_1),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_right_forward),"</g>"): prop(turn_image_bothways_1)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1021 | t_test: eval(regexp_test("^(.*;)*sharp_right(;.*)*$",prop(t))); turn_image_bothways_1: eval(prop(t_test)?concat(prop(turn_image_bothways_1),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_sharp_right_forward),"</g>"): prop(turn_image_bothways_1)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1022 | t_scale: eval(prop(t_scale_after_through)); |
| | 1023 | t_test: eval(regexp_test("^(.*;)*slight_left(;.*)*$",prop(t))); turn_image_bothways_1: eval(prop(t_test)?concat(prop(turn_image_bothways_1),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_slight_left_forward),"</g>"): prop(turn_image_bothways_1)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1024 | t_test: eval(regexp_test("^(.*;)*left(;.*)*$",prop(t))); turn_image_bothways_1: eval(prop(t_test)?concat(prop(turn_image_bothways_1),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_left_forward),"</g>"): prop(turn_image_bothways_1)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1025 | t_test: eval(regexp_test("^(.*;)*sharp_left(;.*)*$",prop(t))); turn_image_bothways_1: eval(prop(t_test)?concat(prop(turn_image_bothways_1),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_sharp_left_forward),"</g>"): prop(turn_image_bothways_1)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1026 | turn_image_bothways_1: eval(regexp_test("^(.*;)*reverse(;.*)*$",prop(t))?concat(prop(turn_image_bothways_1),(prop(style_right_hand_traffic)?prop(turn_svg_reverse_right_hand_forward):prop(turn_svg_reverse_left_hand_forward))):prop(turn_image_bothways_1)); |
| | 1027 | turn_image_bothways_1: eval(regexp_test("^(.*;)*merge_to_right(;.*)*$",prop(t))?concat(prop(turn_image_bothways_1),prop(turn_svg_merge_to_right_forward)):prop(turn_image_bothways_1)); |
| | 1028 | turn_image_bothways_1: eval(regexp_test("^(.*;)*merge_to_left(;.*)*$",prop(t))?concat(prop(turn_image_bothways_1),prop(turn_svg_merge_to_left_forward)):prop(turn_image_bothways_1)); |
| | 1029 | turn_image_bothways_1: eval(regexp_test("^(.*;)*hook_right(;.*)*$",prop(t))?concat(prop(turn_image_bothways_1),prop(turn_svg_hook_right_forward)):prop(turn_image_bothways_1)); |
| | 1030 | turn_image_bothways_1: eval(regexp_test("^(.*;)*hook_left(;.*)*$",prop(t))?concat(prop(turn_image_bothways_1),prop(turn_svg_hook_left_forward)):prop(turn_image_bothways_1)); |
| | 1031 | turn_image_bothways_1: eval((prop(turn_image_bothways_1)="")?prop(unset_property):concat("data:image/svg+xml,<svg width='200px' height='50px'><g fill-opacity='",prop(style_markings_opacity),"'>",prop(turn_image_bothways_1),"</g><g fill-opacity='",prop(style_markings_opacity),"' transform='rotate(180 50 25) translate(-100 0)'>",prop(turn_image_bothways_1),"</g></svg>")); |
| | 1032 | |
| | 1033 | turn_image_bothways_2: ""; t: eval(get(prop(temp_list),1)); t_scale: 1.0; |
| | 1034 | t_test: eval(regexp_test("^(.*;)*through(;.*)*$",prop(t))); turn_image_bothways_2: eval(prop(t_test)?prop(turn_svg_through_forward): prop(turn_image_bothways_2)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1035 | t_scale_after_through: eval(prop(t_scale)); |
| | 1036 | t_test: eval(regexp_test("^(.*;)*slight_right(;.*)*$",prop(t))); turn_image_bothways_2: eval(prop(t_test)?concat(prop(turn_image_bothways_2),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_slight_right_forward),"</g>"):prop(turn_image_bothways_2)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1037 | t_test: eval(regexp_test("^(.*;)*right(;.*)*$",prop(t))); turn_image_bothways_2: eval(prop(t_test)?concat(prop(turn_image_bothways_2),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_right_forward),"</g>"): prop(turn_image_bothways_2)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1038 | t_test: eval(regexp_test("^(.*;)*sharp_right(;.*)*$",prop(t))); turn_image_bothways_2: eval(prop(t_test)?concat(prop(turn_image_bothways_2),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_sharp_right_forward),"</g>"): prop(turn_image_bothways_2)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1039 | t_scale: eval(prop(t_scale_after_through)); |
| | 1040 | t_test: eval(regexp_test("^(.*;)*slight_left(;.*)*$",prop(t))); turn_image_bothways_2: eval(prop(t_test)?concat(prop(turn_image_bothways_2),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_slight_left_forward),"</g>"): prop(turn_image_bothways_2)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1041 | t_test: eval(regexp_test("^(.*;)*left(;.*)*$",prop(t))); turn_image_bothways_2: eval(prop(t_test)?concat(prop(turn_image_bothways_2),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_left_forward),"</g>"): prop(turn_image_bothways_2)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1042 | t_test: eval(regexp_test("^(.*;)*sharp_left(;.*)*$",prop(t))); turn_image_bothways_2: eval(prop(t_test)?concat(prop(turn_image_bothways_2),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_sharp_left_forward),"</g>"): prop(turn_image_bothways_2)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1043 | turn_image_bothways_2: eval(regexp_test("^(.*;)*reverse(;.*)*$",prop(t))?concat(prop(turn_image_bothways_2),(prop(style_right_hand_traffic)?prop(turn_svg_reverse_right_hand_forward):prop(turn_svg_reverse_left_hand_forward))):prop(turn_image_bothways_2)); |
| | 1044 | turn_image_bothways_2: eval(regexp_test("^(.*;)*merge_to_right(;.*)*$",prop(t))?concat(prop(turn_image_bothways_2),prop(turn_svg_merge_to_right_forward)):prop(turn_image_bothways_2)); |
| | 1045 | turn_image_bothways_2: eval(regexp_test("^(.*;)*merge_to_left(;.*)*$",prop(t))?concat(prop(turn_image_bothways_2),prop(turn_svg_merge_to_left_forward)):prop(turn_image_bothways_2)); |
| | 1046 | turn_image_bothways_2: eval(regexp_test("^(.*;)*hook_right(;.*)*$",prop(t))?concat(prop(turn_image_bothways_2),prop(turn_svg_hook_right_forward)):prop(turn_image_bothways_2)); |
| | 1047 | turn_image_bothways_2: eval(regexp_test("^(.*;)*hook_left(;.*)*$",prop(t))?concat(prop(turn_image_bothways_2),prop(turn_svg_hook_left_forward)):prop(turn_image_bothways_2)); |
| | 1048 | turn_image_bothways_2: eval((prop(turn_image_bothways_2)="")?prop(unset_property):concat("data:image/svg+xml,<svg width='200px' height='50px'><g fill-opacity='",prop(style_markings_opacity),"'>",prop(turn_image_bothways_2),"</g><g fill-opacity='",prop(style_markings_opacity),"' transform='rotate(180 50 25) translate(-100 0)'>",prop(turn_image_bothways_2),"</g></svg>")); |
| | 1049 | |
| | 1050 | turn_image_bothways_3: ""; t: eval(get(prop(temp_list),2)); t_scale: 1.0; |
| | 1051 | t_test: eval(regexp_test("^(.*;)*through(;.*)*$",prop(t))); turn_image_bothways_3: eval(prop(t_test)?prop(turn_svg_through_forward): prop(turn_image_bothways_3)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1052 | t_scale_after_through: eval(prop(t_scale)); |
| | 1053 | t_test: eval(regexp_test("^(.*;)*slight_right(;.*)*$",prop(t))); turn_image_bothways_3: eval(prop(t_test)?concat(prop(turn_image_bothways_3),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_slight_right_forward),"</g>"):prop(turn_image_bothways_3)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1054 | t_test: eval(regexp_test("^(.*;)*right(;.*)*$",prop(t))); turn_image_bothways_3: eval(prop(t_test)?concat(prop(turn_image_bothways_3),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_right_forward),"</g>"): prop(turn_image_bothways_3)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1055 | t_test: eval(regexp_test("^(.*;)*sharp_right(;.*)*$",prop(t))); turn_image_bothways_3: eval(prop(t_test)?concat(prop(turn_image_bothways_3),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_sharp_right_forward),"</g>"): prop(turn_image_bothways_3)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1056 | t_scale: eval(prop(t_scale_after_through)); |
| | 1057 | t_test: eval(regexp_test("^(.*;)*slight_left(;.*)*$",prop(t))); turn_image_bothways_3: eval(prop(t_test)?concat(prop(turn_image_bothways_3),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_slight_left_forward),"</g>"): prop(turn_image_bothways_3)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1058 | t_test: eval(regexp_test("^(.*;)*left(;.*)*$",prop(t))); turn_image_bothways_3: eval(prop(t_test)?concat(prop(turn_image_bothways_3),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_left_forward),"</g>"): prop(turn_image_bothways_3)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1059 | t_test: eval(regexp_test("^(.*;)*sharp_left(;.*)*$",prop(t))); turn_image_bothways_3: eval(prop(t_test)?concat(prop(turn_image_bothways_3),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_sharp_left_forward),"</g>"): prop(turn_image_bothways_3)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1060 | turn_image_bothways_3: eval(regexp_test("^(.*;)*reverse(;.*)*$",prop(t))?concat(prop(turn_image_bothways_3),(prop(style_right_hand_traffic)?prop(turn_svg_reverse_right_hand_forward):prop(turn_svg_reverse_left_hand_forward))):prop(turn_image_bothways_3)); |
| | 1061 | turn_image_bothways_3: eval(regexp_test("^(.*;)*merge_to_right(;.*)*$",prop(t))?concat(prop(turn_image_bothways_3),prop(turn_svg_merge_to_right_forward)):prop(turn_image_bothways_3)); |
| | 1062 | turn_image_bothways_3: eval(regexp_test("^(.*;)*merge_to_left(;.*)*$",prop(t))?concat(prop(turn_image_bothways_3),prop(turn_svg_merge_to_left_forward)):prop(turn_image_bothways_3)); |
| | 1063 | turn_image_bothways_3: eval(regexp_test("^(.*;)*hook_right(;.*)*$",prop(t))?concat(prop(turn_image_bothways_3),prop(turn_svg_hook_right_forward)):prop(turn_image_bothways_3)); |
| | 1064 | turn_image_bothways_3: eval(regexp_test("^(.*;)*hook_left(;.*)*$",prop(t))?concat(prop(turn_image_bothways_3),prop(turn_svg_hook_left_forward)):prop(turn_image_bothways_3)); |
| | 1065 | turn_image_bothways_3: eval((prop(turn_image_bothways_3)="")?prop(unset_property):concat("data:image/svg+xml,<svg width='200px' height='50px'><g fill-opacity='",prop(style_markings_opacity),"'>",prop(turn_image_bothways_3),"</g><g fill-opacity='",prop(style_markings_opacity),"' transform='rotate(180 50 25) translate(-100 0)'>",prop(turn_image_bothways_3),"</g></svg>")); |
| | 1066 | |
| | 1067 | turn_image_bothways_4: ""; t: eval(get(prop(temp_list),3)); t_scale: 1.0; |
| | 1068 | t_test: eval(regexp_test("^(.*;)*through(;.*)*$",prop(t))); turn_image_bothways_4: eval(prop(t_test)?prop(turn_svg_through_forward): prop(turn_image_bothways_4)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1069 | t_scale_after_through: eval(prop(t_scale)); |
| | 1070 | t_test: eval(regexp_test("^(.*;)*slight_right(;.*)*$",prop(t))); turn_image_bothways_4: eval(prop(t_test)?concat(prop(turn_image_bothways_4),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_slight_right_forward),"</g>"):prop(turn_image_bothways_4)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1071 | t_test: eval(regexp_test("^(.*;)*right(;.*)*$",prop(t))); turn_image_bothways_4: eval(prop(t_test)?concat(prop(turn_image_bothways_4),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_right_forward),"</g>"): prop(turn_image_bothways_4)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1072 | t_test: eval(regexp_test("^(.*;)*sharp_right(;.*)*$",prop(t))); turn_image_bothways_4: eval(prop(t_test)?concat(prop(turn_image_bothways_4),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_sharp_right_forward),"</g>"): prop(turn_image_bothways_4)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1073 | t_scale: eval(prop(t_scale_after_through)); |
| | 1074 | t_test: eval(regexp_test("^(.*;)*slight_left(;.*)*$",prop(t))); turn_image_bothways_4: eval(prop(t_test)?concat(prop(turn_image_bothways_4),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_slight_left_forward),"</g>"): prop(turn_image_bothways_4)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1075 | t_test: eval(regexp_test("^(.*;)*left(;.*)*$",prop(t))); turn_image_bothways_4: eval(prop(t_test)?concat(prop(turn_image_bothways_4),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_left_forward),"</g>"): prop(turn_image_bothways_4)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1076 | t_test: eval(regexp_test("^(.*;)*sharp_left(;.*)*$",prop(t))); turn_image_bothways_4: eval(prop(t_test)?concat(prop(turn_image_bothways_4),"<g transform='scale(",prop(t_scale)," 1.0)'>",prop(turn_svg_sharp_left_forward),"</g>"): prop(turn_image_bothways_4)); t_scale: eval(prop(t_test)?(prop(t_scale)*0.666):prop(t_scale)); |
| | 1077 | turn_image_bothways_4: eval(regexp_test("^(.*;)*reverse(;.*)*$",prop(t))?concat(prop(turn_image_bothways_4),(prop(style_right_hand_traffic)?prop(turn_svg_reverse_right_hand_forward):prop(turn_svg_reverse_left_hand_forward))):prop(turn_image_bothways_4)); |
| | 1078 | turn_image_bothways_4: eval(regexp_test("^(.*;)*merge_to_right(;.*)*$",prop(t))?concat(prop(turn_image_bothways_4),prop(turn_svg_merge_to_right_forward)):prop(turn_image_bothways_4)); |
| | 1079 | turn_image_bothways_4: eval(regexp_test("^(.*;)*merge_to_left(;.*)*$",prop(t))?concat(prop(turn_image_bothways_4),prop(turn_svg_merge_to_left_forward)):prop(turn_image_bothways_4)); |
| | 1080 | turn_image_bothways_4: eval(regexp_test("^(.*;)*hook_right(;.*)*$",prop(t))?concat(prop(turn_image_bothways_4),prop(turn_svg_hook_right_forward)):prop(turn_image_bothways_4)); |
| | 1081 | turn_image_bothways_4: eval(regexp_test("^(.*;)*hook_left(;.*)*$",prop(t))?concat(prop(turn_image_bothways_4),prop(turn_svg_hook_left_forward)):prop(turn_image_bothways_4)); |
| | 1082 | turn_image_bothways_4: eval((prop(turn_image_bothways_4)="")?prop(unset_property):concat("data:image/svg+xml,<svg width='200px' height='50px'><g fill-opacity='",prop(style_markings_opacity),"'>",prop(turn_image_bothways_4),"</g><g fill-opacity='",prop(style_markings_opacity),"' transform='rotate(180 50 25) translate(-100 0)'>",prop(turn_image_bothways_4),"</g></svg>")); |
| | 1083 | } |
| | 1084 | |