[OSM-talk] Mapping canals

Gervase Markham gerv-gmane at gerv.net
Mon Jan 21 18:36:48 GMT 2008


Gervase Markham wrote:
> As people may know, the UK has an extensive system of canals.

OK. So here's a load of proposals rather than questions :-) There are 
quite a few, so it seems sensible to me to bat them around here as a 
unified set before taking them to the wiki.

Canals
------

Canals are denoted by a single way (rather than two banks), whose 
direction is irrelevant except in the case of locks or significant water 
flow.

Narrow sections are denoted by maxwidth. One narrowboat (just over 7 
feet) is given as 2.5m. Two boats is 5m. It's not necessary to mark a 
two-boat width restriction for bridge holes, which are implied narrow.

Cuttings and embankments are shown only when they apply to both sides of 
the canal, in which case the relevant part of the way has "cutting=yes" 
or "embankment=yes". (This is a slight simplification compared to 
existing maps.)

Winding holes are marked as nodes in the canal with 
"waterway=turning_point"; the max length of boat which can be winded is 
denoted using "maxlength", even though this is a small stretch of the 
meaning.

"boat=private" is used for private parts of the canal.

Locks
-----

(See wiki page: 
http://wiki.openstreetmap.org/index.php/Proposed_features/Lock)

The wiki page makes some good points, but I suggest we have *both* 
"waterway=lock_gate" on nodes (useful for large locks, optional for 
small ones) and "lock=yes" on canal/river ways (compulsory, easy to render).

The "lock=yes" way(s) points from the higher to the lower end of the 
lock, i.e. in the direction of water flow. So the lock "arrow" symbol 
would point in the opposite direction.

The "lock=yes" way(s) takes various lock-related information, including:

- the lock name, if it has one, with "name=<foo>".
- the maxwidth, with "maxwidth=<metres>". A standard single lock is 
2.2m, a standard double lock 4.4m.
- the maxlength, with "maxlength=<metres>". 70ft is 22m.
- the rise, with new tag "rise=<metres>".

A flight of locks with a unifying name (e.g. "Hatton Locks") is denoted 
with a node placed in an appropriately central position with new tag 
value "place=lock_flight" and "name=<name>".

Moorings
--------

Mooring info should be attached to the relevant stretch of towpath, or 
to a new dedicated way on the opposite side, for the rare offside 
moorings. "waterway=mooring" should be used, applied to ways rather than 
nodes. Only public (free or rentable) moorings should be shown. 
Renderers may choose to render the way as an icon placed at the centre 
of the length.

Alternative: the arrangement should be as in the following diagram, with 
"waterway=mooring" marked on the two vertical sections of way and all of 
the towpath marked with an = sign. This creates a sort of "area" and 
might make it easier for renderers to determine the extent of the mooring.

--towpath--o==========o----...
            |          |
--canal----o----------o----...


New tag: maxstay=<days>. Overnight is "1". This is applied to all of the 
way(s) tagged with "waterway=mooring".

Aqueducts
---------

waterway=aqueduct should be applicable to ways as well as nodes. 
Aqueducts should have "bridge=yes" and an appropriate level=.

Bridges
-------

New tag: ref_canal_bridge=<number> for bridge numbers.

New tag: bridge_type=manual_swing, powered_swing, ....

Towpaths
--------

The towpath is shown as another way alongside the canal, on the 
appropriate side, with new tag "towpath=yes". It is continuous as long 
as the towpath is; if the towpath switches sides, the way connects into 
the relevant bridge, which also has "towpath=yes".

Nodes which are part of the path can take info like water_point, etc. 
Like any path, it can take quality and access tags.

Mile markers are denoted as towpath nodes with new tag value: 
"man_made=milepost". (This could also be used on roads.)

Amenities
---------

Some changes for consistency:
Change: waterway=waste_disposal -> amenity=waste_disposal
Change: waterway=water_point -> amenity=water_point

Make sure amenity=waste_disposal is clearly defined as a refuse point.

New tag value: amenity=pumpout
New tag value: amenity=sanitary_station

Gerv





More information about the talk mailing list