RivEX will take a point or polyline dataset representing bank side features (e.g. erosion or bank protection) and code them into left or right. Such data will typically appear offset from the centreline. 

Bank side is determined as if you were facing downstream.  The code assumes your network is fully orientated in a source to sea direction (this is a requirement of many of the RivEX tools). 

Navigate to the tool and choose your bank side data (point or polyline layer), set a sensible search tolerance and click on OK to start the tool. In the example below a point dataset has been used with a 25m tolerance.

Bank side dialog

If your data generates any indeterminate values (I) or the buffer was too small to select any network for a bank side feature (X) then RivEX will warn you with a message similar to below. It is simply to remind you to go back and check your data. 

Bank side progress report

What search tolerance should you use? To choose the most appropriate value you need to understand how the tool works.  Your chosen tolerance is used to create a buffer around the bank feature and this polygon is used to select any intersecting river network. If for example your river was 20m wide then the centreline should be 10m away from the bank edge (where your bank side data is), so a search tolerance of say 15m would generate a buffer big enough to select the centreline. 

If you put in an unsuitably large value such as 1Km then the buffer would select a much larger portion of the river network, possibly even another catchment. Equally if you enter a very small value then the buffer will not select any network and the tool cannot test which side of the river your data is. 

Rivers increase in width with increasing distance from source so a 15m search tolerance may eventually stop selecting any network, you should choose a value that will encompass all possible channel widths. 

Some bank side data (e.g. erosion) by its very nature will be near the centreline of a river but if you are mapping physical features such as set-back embankments which can be many hundreds of meters from the bank top then it is possible for RivEX to erroneously identify which side your data is on, especially if you've set a large search tolerance. 

The tool creates a new text field called Side.  If your data is a GeoDatabase FeatureClass then it's alias name is Bank Side. The codes written to this field are listed in the table below 




Left bank


Right bank


Unable to determine which side (see below for more information)


Buffer did not select any part of the river network, your data was too far from the centreline


An error occurred in the code during processing, this flags the problem

The way RivEX determines which side a polyline is to the river is described below: 

1.For a bank feature polyline whose buffer selects more than one river polyline then RivEX will determine which of the polylines is nearest. This situation would typically happen at tributaries. 

2.Once a single river polyline has been identified it then "explodes" the bank feature polyline into it's vertices and get the distance and side it is to the selected river polyline. It sums up all the distances for any vertices on the right side and any on the left side. 

3.The majority sum determines which side the feature is on. If there are exactly the same sum of distances for left and right vertices then RivEX is unable to determine which side the feature is on. The image below shows a polyline which cross the river but as the majority of vertices are on the right side, the feature is correctly labelled right side. 

How bank side tool works