wboykinm

mtl_scratch

Feb 17th, 2012
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
CSS 11.07 KB | None | 0 0
  1. /* ================================================================== */
  2. /* ROAD COLORS
  3. /* ================================================================== */
  4.  
  5. /* For each class of road there are three color variables:
  6.  * - line: for lower zoomlevels when the road is represented by a
  7.  *         single solid line.
  8.  * - case: for higher zoomlevels, this color is for the road's
  9.  *         casing (outline).
  10.  * - fill: for higher zoomlevels, this color is for the road's
  11.  *         inner fill (inline).
  12.  */
  13. @land:              #355549;
  14.  
  15. @motorway_line:     #B1F1D2;
  16. @motorway_fill:     #0F0F0F;/*lighten(@motorway_line,10%)*/
  17. @motorway_case:     @motorway_line * 0.9;
  18.  
  19. @trunk_line:        #B1F1D2;
  20. @trunk_fill:        #0F0F0F;/*lighten(@trunk_line,10%)*/
  21. @trunk_case:        @trunk_line * 0.9;
  22.  
  23. @primary_line:      #B1F1D2;
  24. @primary_fill:      #0F0F0F;/*lighten(@primary_line,10%)*/
  25. @primary_case:      @primary_line * 0.9;
  26.  
  27. @secondary_line:    #B1F1D2;
  28. @secondary_fill:    #0F0F0F;/*lighten(@secondary_line,10%);*/
  29. @secondary_case:    @secondary_line * 0.9;
  30.  
  31. @standard_line:     @land * 0.85;
  32. @standard_fill:     #0F0F0F;
  33. @standard_case:     @land * 0.9;
  34.  
  35. @pedestrian_line:   @standard_line;
  36. @pedestrian_fill:   #000;
  37. @pedestrian_case:   @land;
  38.  
  39. @cycle_line:        @standard_line;
  40. @cycle_fill:        #000;
  41. @cycle_case:        @land;
  42.  
  43. @rail_line:         #B1F1D2;
  44. @rail_fill:         #000;
  45. @rail_case:         @land;
  46.  
  47. /* ==================================================================
  48.    ROAD & RAIL LINES
  49. /* ================================================================== */
  50.  
  51. /* At mid-level scales start to show primary and secondary routes
  52. as well. */
  53.  
  54. #osm_line[zoom>=9][zoom<=10] {
  55.   [highway='motorway'],
  56.   [highway='motorway_link'] {
  57.     line-color: @motorway_line;
  58.   }
  59.   [highway='trunk'] {
  60.     line-color: @trunk_line;
  61.   }
  62.   [highway='primary'] { line-color: @primary_line; }
  63.   [highway='secondary'] { line-color: @secondary_line; }
  64.   [highway='tertiary'] { line-color: @standard_line; }
  65.   [zoom=9] {
  66.     [highway='motorway'],[highway='trunk'] { line-width: 1.4; }
  67.     [highway='primary'],[highway='secondary'],
  68.     [highway='motorway_link'] { line-width: 0.6; }
  69.   }
  70.   [zoom=10] {
  71.     [highway='motorway'],[highway='trunk'] { line-width: 1.8; }
  72.     [highway='primary'],[highway='secondary'],
  73.     [highway='motorway_link'] { line-width: 0.8; }
  74.   }
  75. }
  76.  
  77.  
  78. /* At higher levels the roads become more complex. We're now showing
  79. more than just automobile routes - railways, footways, and cycleways
  80. come in as well.
  81.  
  82. /* Road width variables that are used in road & bridge styles */
  83. @rdz11_maj: 1.6; @rdz11_med: 0.8; @rdz11_min: 0.4;
  84. @rdz12_maj: 2.5; @rdz12_med: 1.2; @rdz12_min: 0.8;
  85. @rdz13_maj: 3;   @rdz13_med: 1.5; @rdz13_min: 1;
  86. @rdz14_maj: 4;   @rdz14_med: 2.5; @rdz14_min: 1.6;
  87. @rdz15_maj: 6;   @rdz15_med: 4;   @rdz15_min: 2;
  88. @rdz16_maj: 8;   @rdz16_med: 6;   @rdz16_min: 4;
  89. @rdz17_maj: 14;  @rdz17_med: 12;  @rdz17_min: 10;
  90. @rdz18_maj: 20;  @rdz18_med: 17;  @rdz18_min: 14;
  91.  
  92. /* ---- Casing ----------------------------------------------- */
  93.  
  94. #osm_line::outline[zoom>=11][zoom<=20] {
  95.   /* -- colors & styles -- */
  96.   line-cap: round;
  97.   [bridge='yes'],
  98.   [tunnel='yes'] {
  99.     line-cap: butt;
  100.   }
  101.   line-join: round;
  102.   line-color: @standard_case;
  103.   [bridge='yes'] { line-color: @standard_case * 0.8; }
  104.   [highway='motorway'],
  105.   [highway='motorway_link'] {
  106.     line-color: @motorway_case;
  107.     [bridge='yes'] { line-color: @motorway_case * 0.8; }
  108.   }
  109.   [highway='trunk'],
  110.   [highway='trunk_link'] {
  111.     line-color: @trunk_case;
  112.     [bridge='yes'] { line-color: @trunk_case * 0.8; }
  113.   }
  114.   [highway='primary'],
  115.   [highway='primary_link'] {
  116.     line-color: @primary_case;
  117.     [bridge='yes'] { line-color: @primary_case * 0.8; }
  118.   }
  119.   [highway='secondary'],
  120.   [highway='secondary_link'] {
  121.     line-color: @secondary_case;
  122.     [bridge='yes'] { line-color: @secondary_case * 0.8; }
  123.   }
  124.   [railway='rail'] {
  125.     line-color: fadeout(@land,50%);
  126.     [bridge='yes'] { line-color: @secondary_case * 0.8; }
  127.   }
  128.   [tunnel='yes'] { line-dasharray: 3,3; }        
  129.   /* -- widths -- */
  130.   [zoom=11] {
  131.     [highway='motorway'] { line-width: @rdz11_maj + 2; }
  132.     [highway='primary'] { line-width: @rdz11_med + 1.6; }
  133.     [highway='secondary']{ line-width: @rdz11_min; }
  134.     /* No minor bridges yet */
  135.     /*[highway='service']  { line-width: 0; }
  136.     [highway='footway']   { line-width: 0; }*/
  137.     [railway='rail']  { line-width: 0; }
  138.   }
  139.   [zoom=12] {
  140.     [highway='motorway'] { line-width: @rdz12_maj + 2; }
  141.     [highway='primary'] { line-width: @rdz12_med + 2; }
  142.     [highway='secondary']{ line-width: @rdz12_min; }
  143.     /* No minor bridges yet */
  144.     /*[highway='service']  { line-width: 0; }
  145.     [highway='footway']   { line-width: 0; }*/
  146.     [railway='rail']  { line-width: 0; }
  147.   }
  148.   [zoom=13] {
  149.     [highway='motorway'] { line-width: @rdz13_maj + 2; }
  150.     [highway='primary'] { line-width: @rdz13_med + 2; }
  151.     [highway='secondary']{ line-width: @rdz13_min + 2; }
  152.     /* No minor bridges yet */
  153.     /*[highway='service']  { line-width: 0; }
  154.     [highway='footway']   { line-width: 0; }*/
  155.     [railway='rail']  { line-width: 0; }
  156.   }
  157.   [zoom=14] {
  158.     [highway='motorway'] { line-width: @rdz14_maj + 2; }
  159.     [highway='primary'] { line-width: @rdz14_med + 2; }
  160.     [highway='secondary']{ line-width: @rdz14_min + 2; }
  161.     /* No minor bridges yet */
  162.     /*[highway='service']  { line-width: 0; }
  163.     [highway='footway']   { line-width: 0; }*/
  164.     [railway='rail']  { line-width: 0; }
  165.   }
  166.   [zoom=15] {
  167.     [highway='motorway'] { line-width: @rdz15_maj + 2.5; }
  168.     [highway='primary'] { line-width: @rdz15_med + 2; }
  169.     [highway='secondary']{ line-width: @rdz15_min + 2; }
  170.     /*[highway='service']  { line-width: @rdz15_min / 3 + 2; }
  171.     [highway='footway']   { line-width: @rdz15_min / 4 + 2; }*/
  172.     [railway='rail']  { line-width: 1.5 + 2; }
  173.   }
  174.   [zoom=16] {
  175.     [highway='motorway'] { line-width: @rdz16_maj + 2.5; }
  176.     [highway='primary'] { line-width: @rdz16_med + 2.5; }
  177.     [highway='secondary']{ line-width: @rdz16_min + 2; }
  178.     /*[highway='service']  { line-width: @rdz16_min / 3 + 2; }
  179.     [highway='footway']   { line-width: @rdz16_min / 4 + 2; }*/
  180.     [railway='rail']  { line-width: 2 + 2; }
  181.   }
  182.   [zoom>=17] {
  183.     [highway='motorway'] { line-width: @rdz17_maj + 3; }
  184.     [highway='primary'] { line-width: @rdz17_med + 2.5; }
  185.     [highway='secondary']{ line-width: @rdz17_min + 2; }
  186.     /*[highway='service']  { line-width: @rdz17_min / 3 + 2; }
  187.     [highway='footway']   { line-width: @rdz17_min / 4 + 4; }*/
  188.     [railway='rail']  { line-width: 3 + 4; } // 3 + 4
  189.   }
  190.   [zoom>=18] {
  191.     [highway='motorway'] { line-width: @rdz18_maj + 4; }
  192.     [highway='primary'] { line-width: @rdz18_med + 4; }
  193.     [highway='secondary']{ line-width: @rdz18_min + 3.5; }
  194.     /*[highway='service']  { line-width: @rdz18_min / 3 + 3.5; }
  195.     [highway='footway']   { line-width: @rdz18_min / 4 + 6; }*/
  196.     [railway='rail']  { line-width: 4 + 6; }
  197.   }
  198. }
  199.  
  200. #osm_line[zoom>=11][zoom<=20]{
  201.   /* -- colors & styles -- */
  202.   line-color: @standard_fill;
  203.   [highway='motorway'],
  204.   [highway='motorway_link'] {
  205.     line-color: @motorway_fill;
  206.     [tunnel=1] { line-color: lighten(@motorway_fill, 10%); }
  207.   }
  208.   [highway='trunk'],
  209.   [highway='trunk_link'] {
  210.     line-color: @trunk_fill;
  211.     [tunnel=1] { line-color: lighten(@trunk_fill, 10%); }
  212.   }
  213.   [highway='primary'],
  214.   [highway='primary_link'] {
  215.     line-color: @primary_fill;
  216.     [tunnel=1] { line-color: lighten(@primary_fill, 10%); }
  217.   }
  218.   [highway='secondary'],
  219.   [highway='secondary_link'] {
  220.     line-color: @secondary_fill;
  221.     [tunnel=1] { line-color: lighten(@secondary_fill, 10%); }
  222.   }
  223.   [railway='rail'] {
  224.     line-color: @rail_line;
  225.     line-dasharray: 1,1;
  226.     [highway='subway'] { line-opacity: 0.67; }
  227.     [zoom>15] { line-dasharray: 1,2; }
  228.   }
  229.   /*[highway='footway'],
  230.   [highway='service'],
  231.   [highway='secondary'] {
  232.     line-width: 0;
  233.   }
  234.   [highway='service'],*/
  235.   [highway='secondary'],
  236.   [highway='primary'],
  237.   [highway='motorway'] {
  238.     line-cap: round;
  239.     line-join: round;
  240.   }
  241.   [highway='footway'] {
  242.     line-join: round;
  243.   }
  244.   [tunnel=1] {
  245.     line-cap: butt;
  246.   }
  247.   /* -- widths -- */
  248.   [zoom=11] {
  249.     [highway='motorway'] { line-width: @rdz11_maj; }
  250.     [highway='primary'] { line-width: @rdz11_med; }
  251.     [highway='secondary']{ line-width: 0; }
  252.     [railway='rail']  { line-width: 0.2; }
  253.   }
  254.   [zoom=12] {
  255.     [highway='motorway'] { line-width: @rdz12_maj; }
  256.     [highway='primary'] { line-width: @rdz12_med; }
  257.     [highway='secondary']{ line-width: 0; }
  258.     [railway='rail']  { line-width: 0.4; }
  259.   }
  260.   [zoom=13] {
  261.     [highway='motorway'] { line-width: @rdz13_maj; }
  262.     [highway='primary'] { line-width: @rdz13_med; }
  263.     [highway='secondary']{ line-width: @rdz13_min; }
  264.     [highway='service']  { line-width: @rdz13_min / 3; }
  265.     [highway='footway']   { line-width: @rdz13_min / 4; line-dasharray: 1,1; }
  266.     [railway='rail']  { line-width: 0.8; }
  267.   }
  268.   [zoom=14] {
  269.     [highway='motorway'] { line-width: @rdz14_maj; }
  270.     [highway='primary'] { line-width: @rdz14_med; }
  271.     [highway='secondary']{ line-width: @rdz14_min; }
  272.     [highway='service']  { line-width: @rdz14_min / 3; }
  273.     [highway='footway']   { line-width: @rdz14_min / 4; line-dasharray: 1,1; }
  274.     [railway='rail']  { line-width: 1; }
  275.   }
  276.   [zoom=15] {
  277.     [highway='motorway'] { line-width: @rdz15_maj; }
  278.     [highway='primary'] { line-width: @rdz15_med; }
  279.     [highway='secondary']{ line-width: @rdz15_min; }
  280.     [highway='service']  { line-width: @rdz15_min / 3; }
  281.     [highway='footway']   { line-width: @rdz15_min / 4; line-dasharray: 1,1; }
  282.     [railway='rail']  { line-width: 1.5; }
  283.   }
  284.   [zoom=16] {
  285.     [highway='motorway'] { line-width: @rdz16_maj; }
  286.     [highway='primary'] { line-width: @rdz16_med; }
  287.     [highway='secondary']{ line-width: @rdz16_min; }
  288.     [highway='service']  { line-width: @rdz16_min / 3; }
  289.     [highway='footway']   { line-width: @rdz16_min / 4; line-dasharray: 2,1; }
  290.     [railway='rail']  { line-width: 2; }
  291.   }
  292.   [zoom=17] {
  293.     [highway='motorway'] { line-width: @rdz17_maj; }
  294.     [highway='primary'] { line-width: @rdz17_med; }
  295.     [highway='secondary']{ line-width: @rdz17_min; }
  296.     [highway='service']  { line-width: @rdz17_min / 3; }
  297.     [highway='footway']   { line-width: @rdz17_min / 4; line-dasharray: 2,2; }
  298.     [railway='rail']  { line-width: 3; }
  299.   }
  300.   [zoom>=18] {
  301.     [highway='secondary']{ line-width: @rdz18_min; }
  302.     [highway='service']  { line-width: @rdz18_min / 2; }
  303.     [highway='footway']   { line-width: @rdz18_min / 4; line-dasharray: 3,3; }
  304.     [railway='rail']  { line-width: 4; }
  305.     [highway='motorway'] { line-width: @rdz18_maj; }
  306.     [highway='primary'] { line-width: @rdz18_med; }
  307.   }
  308. }
Advertisement
Add Comment
Please, Sign In to add comment