wiki:Styles/Waterways

Version 3 (modified by pierzen, 2 years ago) ( diff )

Enhanchements to styles and flags

Colors waterways and flags various typology errors with red triangles (ie disconnected segments, opposite direction, transition from river to stream)

No image "waterways_guide.png" attached to Styles/Waterways

meta {
  title: "waterways";
  version: "1.10_2023-11-08";
  description: "Colors waterways and flags various typology errors with red triangles (ie  disconnected segments, transition from river to stream).";
  icon: "waterways.png";
  author: "Pierre Béland";
  watch-modified: true;
}


canvas {
    fill-color: #ffffea;
}


way  {z-index:1; width:0; casing-width: color:none;  casing-color: none; opacity:0.0;}

 node {
   z-index:1; symbol:size:0;
   symbol-stroke-color: none;
   symbol-fill-color: none;
    opacity:0.0;
    symbol-stroke-opacity:0.0;
    symbol-fill-opacity:0.0;
 }

/* Pseudo Classes */

way[waterway=rapids]  {   
   casing-width:0;    width:0;    opacity:0;    casing-opacity:0;}
way[waterway=stream], way[waterway=drain], way[waterway=ditch], way[waterway=yes]  {   
   set .waterway_sd;    color: blue;    casing-color: white;    casing-width:1;    width:6;    opacity:0.5;    casing-opacity:0.3;}


relation[natural=water],
area[natural=water]:closed { 
   z-index:1; color: #c2d5f0; width: 2; fill-color: #c2d5f0;    
fill-opacity: 0.4;
}
relation[natural=water],
area[natural=water]:closed,
area[waterway][waterway!=dam]:closed{
   set .water_area; 
   color:#c2d5f0; width:0; opacity:0; 
   fill-color:#c2d5f0; fill-opacity: 0.3; 
   casing-color:none; casing-width:0; casing-opacity:0;}
way[natural=wetland]:closed, way[natural=shoal]:closed {
   set .wetland_area; 
   color:#c2d5f0; width:0; opacity:1.0; 
   fill-opacity: 1; 
   fill-image:waterways_wetland.png;
   casing-width:0; casing-color:none; casing-opacity:0;
}
relation[natural=water] > way,
area[natural=water], 
area.wetland_area,
way[natural], 
way[coastline], 
way[place=island], 
way[place=islet]{
   set .natural_way;
   z-index:3; color:#c2d5f0; width:2; opacity:0; 
   casing-color:none; casing-width:0; casing-opacity:0;}
way[waterway=stream] > node, way[waterway=drain] > node, way[waterway=ditch] > node 
{set .waterway_sd_node;}
way[waterway=stream] >[index=1] node, way[waterway=drain] >[index=1] node, way[waterway=ditch] >[index=1] node 
{set .waterway_sd_node_deb;}
way[waterway=stream] >[index=-1] node, way[waterway=drain] >[index=-1] node, way[waterway=ditch] >[index=-1] node {   
   set .waterway_sd_node_end;     symbol-shape: pentagon;       symbol-size: 6;                 symbol-stroke-color: cyan;      symbol-fill-color: red;         symbol-stroke-width: 2;         symbol-stroke-opacity:0.6;} 
way[waterway=stream] >[index<-1] node, way[waterway=drain] >[index<-1] node, way[waterway=ditch] >[index<-1] node 
{ set .waterway_sd_node_nend;} 
way[waterway=river], way[waterway=canal], way[waterway=fairway] {
   set .waterway_rc;    casing-width:0.8;    width:12; }
way[waterway=river] > node, way[waterway=canal] > node, way[waterway=fairway] > node {   
   set .waterway_rc_node;}
way[waterway=river] >[index=1] node, way[waterway=canal] >[index=1] node, way[waterway=fairway] >[index=1] node 
{set .waterway_rc_node_deb;}
way[waterway=river] >[index=-1] node, way[waterway=canal] >[index=-1] node, way[waterway=fairway] >[index=-1] node {   
   set .waterway_rc_node_end;     symbol-shape: pentagon;       symbol-size: 6;                 symbol-stroke-color: cyan;      symbol-fill-color: red;         symbol-stroke-width: 2;         symbol-stroke-opacity:0.6; }
way[waterway=river] >[index<-1] node, way[waterway=canal] >[index<-1] node, way[waterway=fairway] >[index<-1] node  {   
   set .waterway_rc_node_nend;}
way.waterway_rc, way.waterway_sd {
   set .waterways; }
node.waterway_rc_node, node.waterway_sd_node {
   set .waterways_node; }
node.waterway_rc_node_deb, node.waterway_sd_node_deb {
   set .waterways_node_deb; }
node.waterway_rc_node_end, node.waterway_sd_node_end {
   set .waterways_node_end; }
node.waterway_rc_node_nend, node.waterway_sd_node_nend {
   set .waterways_node_nend; }

area.natural_way > node, way.natural_way > node
{set .natural_node;
   z-index: 1; symbol:size:0;
   symbol-stroke-color:#c2d5f0;
   symbol-fill-color: none;
    opacity:0.0;
    symbol-stroke-opacity:0.0;
    symbol-fill-opacity:0.0;
}

/* ways and nodes  - distinct waterways  */   

way[waterway=river]  {   
   z-index:10; color:blue;   casing-color: blue;}
way[waterway=drain] {z-index:5; color: #3434ff; width: 1; }
way[waterway=fairway] {z-index:10; color:blue; casing-color:white;}

way[place=island],
way[place=islet] { 
   z-index:2; color: #c2d5f0; width: 2; fill-color: white;fill-opacity: 0.2; opacity:1;}

way|z7-[waterway=dam]!:closed { 
   z-index: 16; color: black; width: 6; opacity:0.8; casing-width:6; casing-color: #c2d5f0; casing-opacity: 0.6;
}
relation|z7-[waterway=dam] > way:closed, area|z7-[waterway=dam]:closed { 
   z-index: 16; color: black; width: 2; fill-color: #222222; fill-opacity: 0.4;}
way|z1-6[waterway=weir] { 
   z-index: 16; color: black; width: 2; opacity:0.5; }

way|z7-[waterway=weir] { 
   z-index: 16; color: black; width: 4; opacity:1; casing-width:6; casing-color: #c2d5f0; casing-opacity:0.7; dashes: 32, 12;}

/* ways styles by zoom-level */

way|z1-10.natural_way {
   z-index:1; width:1; color:#c2d5f0;  casing-width:; casing-color:none; opacity:0.8; casing-opacity:0; }

way|z11-.natural_way
{
   z-index: 1; casing-width:0;    width:3; color:#c2d5f0;   opacity:0.8; }
area.wetland_area {
   z-index:2; 
   color:#c2d5f0;   opacity:0.5;
   width:2;
}

way|z1-13.waterway_sd {z-index:5; casing-width:1.3;   width:0.7;}
way|z14-15.waterway_sd {z-index: 5; casing-width:1.3;   width:3.3; opacity:1.0}
way|z16-.waterway_sd {z-index: 5; casing-width:1.3;   width:3.3; opacity:1.0}
way|z1-13.waterway_rc {z-index:10; casing-width:0.7;  width:2; opacity:1;}
way|z14-15.waterway_rc {z-index:10; casing-width:2;   width:2.5;}
way|z16-.waterway_rc {z-index:10; casing-width:2;   width:2.5;}
way|z16-[waterway=fairway] {z-index:10; casing-width:2;  width:2.5;  color:blue;   casing-color: white;}

way[waterway=canal]  { 
        z-index:10; width:4; color:white; opacity:1;
        casing-color:blue; casing-width:3;casing-opacity:1;
        dashes: 22, 8, 22;
}
        
way[waterway=canal][lock]  {   
        z-index: 10; dashes: 6,12;}
way[waterway=lock_gate]  {   
        z-index: 10; dashes: 6,12;
   color:orange;
   casing-color: blue;
   casing-width:3;
   width: 8;}
   
way|z6-.waterway_sd[tunnel]  {
   z-index:17; width:6; color:white;  dashes:3,3,3,3; opacity:0.5; left-casing-color:blue; left-casing-width:3; left-casing-opacity:1; right-casing-color:blue; right-casing-width:3; right-casing-opacity:1; casing-color:blue; casing-width:3; casing-opacity:1;
}
way|z6-.waterway_rc[tunnel]  {
   z-index:16; width:10; color:white;  dashes:2,2,2,2; casing-color:blue; casing-width:3; casing-opacity:0.8; opacity:1; left-casing-color:blue; left-casing-width:3; left-color:white; left-dashes:12,2,12,2; left-casing-opacity:1; right-casing-color:blue; right-casing-width:3; right-casing-opacity:1;
}

way|z14-[waterway=rapids] {   
   color: blue;
   casing-color: white;    casing-width:2;    width:7;    opacity:0.5;    casing-opacity:0.3;    dashes: 6,12,6;}

/* way attributes applied at the end  */

area[natural=water][intermittent=yes]:closed, area[waterway=dock][dock=drydock]:closed { 
   z-index:1; color: #c2d5f0; width: 2; 
   fill-color:#ffffaa;  fill-image:waterways_intermittent.png;
   opacity:1; fill-opacity: 1;
}   
way.waterways[intermittent=yes] {
   z-index:10; width:8; dashes: 42,3; color:yellow; casing-color:blue; opacity: 0.7; casing-opacity:1; left-casing-color:blue; left-casing-width:3; left-casing-opacity:1; right-casing-color:blue; right-casing-width:3; right-casing-opacity:1; casing-color:blue;}

/* Nodes styles  */

node|z1-14 {
    z-index: 1; symbol-fill-color: none;
    symbol-stroke-color: #808080;
    symbol-shape: square; 
        width:0;
        symbol-size: 0; 
        symbol-stroke-width:0 ; 
    fill-opacity:0.0;
        symbol-stroke-opacity:0;
}

node|z12-14 {
    z-index: 1; symbol-shape: square; 
        symbol-size: 1;         
    symbol-stroke-color: #3434ff;
        symbol-fill-color: white;
        symbol-stroke-width: 0.9;
        symbol-stroke-opacity:0.5;
}
node|z15- {
    z-index: 1; symbol-shape: square; symbol-size: 6;   
        opacity:1;
    symbol-stroke-color: #4d4dff;
        symbol-fill-color: #e6fffa;
        symbol-fill-opacity:1;
        symbol-stroke-width: 2;
        symbol-stroke-opacity:0.7;
}
node|z16- {
    z-index: 1; symbol-shape: square; symbol-size: 8;   
        opacity:1;
    symbol-stroke-color: #4d4dff;
        symbol-fill-color: #e6fffa;
        symbol-fill-opacity:1;
        symbol-stroke-width: 2;
        symbol-stroke-opacity:1;
}
node|z14-[waterway=dam], way > node|z14[waterway=dam] {
  z-index: 10;
  symbol-size:12;
  symbol-shape: rectangle;
  symbol-stroke-color: #808080;
  symbol-stroke-width: 2;
  symbol-fill-color: white;}

way[waterway=canal] > node|z16- {   
  z-index: 10; symbol-size:10;
  symbol-shape: circle;
  symbol-fill-color: white;
  symbol-fill-opacity: 1.0;
  symbol-stroke-width: 2;
  symbol-stroke-color: red;}
node|z9-[waterway=lock_gate] {   
  z-index: 11; symbol-shape: circle; 
  symbol-size:24;
  symbol-stroke-color: navy;
  symbol-stroke-width: 8;
  symbol-fill-color: red;
  symbol-fill-opacity:0.8; symbol-stroke-opacity:0.8;
}

/* connected - disconnected nodes styles */
  
/* waterways_node_end  */
node.natural_node {
   z-index:45; symbol-shape: triangle; 
   symbol-size:4; opacity:1;
   symbol-stroke-color: red;
   symbol-stroke-opacity:0.6;
}


/* flag end-node on natural way - not working properly
node.waterways_node_end.natural_node,
node.waterways_node_end!.waterway_node_nend {
    z-index:15; symbol-shape: triangle; opacity:1; symbol-size: 25; symbol-stroke-color: red; symbol-fill-color: red; symbol-stroke-width: 5; symbol-stroke-opacity:0.3; }
*/
node.waterways_node_end!:connection {
  z-index: 15; symbol-shape: triangle;
  symbol-fill-color: red;
  symbol-fill-opacity:1;
  symbol-stroke-color: #00ffff;
  symbol-stroke-width: 1;
  symbol-stroke-opacity:0;
}
node|z1-7.waterways_node_end!:connection {
   z-index:15; symbol-size:4;
}
node|z8-13.waterways_node_end!:connection {
   z-index:15; symbol-size:18;
}
node|z14-.waterways_node_end!:connection {
   z-index:15; symbol-size:28;
   symbol-stroke-opacity:0.6;
}
node.waterway_rc_node_end.waterway_sd_node_nend {
  z-index: 15; symbol-shape: triangle;
  symbol-fill-color: red;
  symbol-fill-opacity:1;
  symbol-stroke-color: #00ffff;
  symbol-stroke-width: 1;
  symbol-stroke-opacity:0;
}
node|z1-7.waterway_rc_node_end.waterway_sd_node_nend {
   z-index: 15; symbol-size:5; opacity:1;}
node|z8-13.waterway_rc_node_end.waterway_sd_node_nend {
   z-index: 15; symbol-size:20; opacity:1; symbol-stroke-opacity:1;}
node|z14-.waterway_rc_node_end.waterway_sd_node_nend {
   z-index:15; symbol-size:26;  opacity:1; symbol-stroke-width: 3; symbol-stroke-opacity: 0.6;}

/* flag waterway end node on natural way */

node|z8-12.waterways_node_deb
{
  z-index: 1; symbol-shape: square;
  symbol-size:7;
  symbol-fill-color: purple;
  symbol-fill-opacity:1;
  symbol-stroke-color: #00ffff;
  symbol-stroke-width: 0.5;
  symbol-stroke-opacity:1;}
node|z13-.waterways_node_deb
{
  z-index: 1; symbol-shape: square;
  symbol-size:9;
  symbol-fill-color:white;
  symbol-fill-opacity:1;
  symbol-stroke-color: purple;
  symbol-stroke-width: 4;
  symbol-stroke-opacity:1;}
node.waterways_node_end.natural_node!.waterways_node_deb
{
  z-index: 15; symbol-shape: triangle;
  simbol-size:22;
  symbol-fill-color:red;
  symbol-fill-opacity:1;
  symbol-stroke-color: #00ffff;
  symbol-stroke-width: 0.6;
  symbol-stroke-opacity:1;}

/* ways-nodes selected */

way:selected { 
   z-index: 15; width:15;  casing-width:3; color:red;
}
node|z14-:connection:selected {
  z-index: 15; symbol-stroke-color: crimson;
  symbol-stroke-width: 5;
  symbol-fill-color: yellow;
}
node|z1-13.natural_node_connection {
        z-index: 1; symbol-size:0;
        symbol-stroke-width:0;
        symbol-stroke-color: none;
        symbol-fill-color: none;
}
node|z14-.natural_node_connection {
        z-index: 1; symbol-size:10;
        symbol-stroke-width:2;
}

Styles_Waterways-style.mapcss, Styles_Waterways.zip

Attachments (25)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.