 # How to parametric railway viaduct derived from railtrack curve and terrain data?

Hello,

I am new to grasshopper but not entirely to Rhino or parametric modelling as such, done some stuff in Dynamo.

My goal is to make a parametric viaduct (basic geometry slab+truss girder (only shell without details)+piers+pads) which would be driven primarily by 3d track curve and terrain mesh + other parameters.

I would divide the ultimate goal into few “modules” which would be relatively independent.

1. module would do the following:
-take 3d curve and polygonize it into equal length segments (curve would be assigned with a starting point and designated length of a segment) so that the polyline is optimized in respect to
3d curve and it is average of circumscribed and inscribed pylogon of that curve
-i suppose this is not as easy as it may sound because finding such a polyline is iterative process, not straight forward since output polyline segments must be equal in length (equal length division of input curve would not yield desired outcome)
-Any ideas how or if its even possible?

2. module would be a parametric girder as such driven by one segment of polyline from 1. module
-this is easier task there are only two things of interest here. this module has to retrieve length parameter of a polyline segment and slope angle of that segment (because truss rest area must be exactly horizontal - thus is variable part of truss dependent on slope).
-parametric geometry driven by two parameters from a segment is obtained and now how to use those two points of start and end of a segment to magnet two fictitious “adaptive” points of the girder geometry
-I wonder how to emulate Dynamo behaviour and parametric blocks in revit so i assign points from polyline and say this two points of this girder are these two points on a segment so that this girder is moved and oriented correctly onto that.

3. module would be piers which would also kind of magnet to some points to girders and their geometry would be dependent on distance to the terrain so that the bottom of piers would always reach some minimal length (any point of the volume below must meet this condition) below the assigned terrain mesh.
-Any ideas how to achieve this behaviour?

Thank you experienced users for your insight 