Skip to main content
2 of 3
Improved the answer formatting, added some style markup, and added a link.
elrobis
  • 6.5k
  • 1
  • 32
  • 54

I'm not a hydrologist, so I'm not aware of any metrics/heuristics that should likely govern your methods, but here's a stream-of-consciousness response for something that would be fun to try.

Interpolate points along the line:

First, I'd interpolate points along the line with an equal-length, short spacing according to a minimal granularity where the distance between points arguably equates with a distance long-enough to establish a "winding trait".

I'd experiment with something like 4x the bank-full width, or maybe the width of the 25 or 50 yr floodplain as the spacing distance. In other words, something other than a magic-number guess that could be repeated for other streams---as such an approach would make it repeatable for streams in subsequent studies.

Get change-in-bearing values for each point:

Next, I'd iterate over the points (or do this alongside the interpolation, above) and get a value for the change in bearing between each point and the two points preceding/following it. Obviously, the higher the delta value, the more winding.

Pick thresholds to classify winding intensity:

Once you had the delta values established, you could probably "eyeball" that data against your flow path and select a thresholds for value ranges that constitute various intensities of winding. Alternatively, you could use most any classification criteria as you might for a typical choropleth map.

What a fun research question to explore. I'm jealous. :)

elrobis
  • 6.5k
  • 1
  • 32
  • 54