OK, I've had a chance to look at this again... unfortunately it's toward the end of the day and I need to test a hunch since I'm not accustomed to this type of data. I'm just touching base with you before proceeding further. I don't think we need to compute anything , at least not for polygon geometry, with the fields pertaining to N values (is this not pertaining to flow?) -- I'm talking about these fields, according to what you attached:
channel_N2
leftbandN
rightbank_
However, I may have discovered a pattern with these fields (I have to test to see if my hunch is true though.):
LeftBank
RightBank
Shape_Leng
Looking at a single 'strand' cross-section line, say FID 171, with the values LeftBank 0.3254, RightBank 0.41533, Shape_Leng 1641.142808, it seems you can locate the points along the line with:
0.3254(1641.142808) = 534.028 (approx.)
0.41533(1641.142808) = 681.616 (approx.)
Then 681.616 - 534.028 = 147.588
...and if I carefully measure along that line FID 171 between the points in the shapefile you provided, using ArcMap's measuring tool, I get 147.58792.
So I'd say we have a winner algorithm for computing the points - I'll test further by 'chopping' your lines with the points for the segment lengths, make the computation as in the above, and make sure the results closely match the GIS computed length geom segments...pretty sure this isn't coincidental.
From there, I believe there are python methods for getting the 3 polygon sets you ask. Well, it's looking up, what do you think?