Here's a great example of what you can do with an 'Adaptive Family' in REVIT.
Once placed there are control nodes along the sweep that you can pull around to change the path of the sweep.
I placed 3 of them then tugged on the controls to make them wind in and out of each other.
. . . . and as you can see, you can apply a 'material' to them just like any other family.