This MCG shape allows you generate smoothly connected spline between two objects with sagging option. You can animate start/end object. Tubo will dynamically connect two objects while trying to keep the overall length of spline.
The core engine of this MCG is hermite interpolation. This is an way to interpolate between two point using the position and vector of each point. MCG provide Hermite node by default. So I just needed to make an way to defined those 4 numbers.
Using this MCG is very easy. Just create this MCG(Create panel > Shapes > Max Creation Graph > Tubo). Then assign start and end object. Num of Vertices will determine how many verts will be created.
This MCG will try to keep overall length same. But, it doesn’t have any mathematical function to ensure the same length. Most of time, it will look OK. But, if you are seeing too much of length change, you can animate Length value to compensate.
You can choose which axis would be the direction of tube. Check Flip checkbox if you want flip the axis. You can also offset the start/end point with Start Offset/End Offset. If you check Create Offset Segment. the segment between original point and offset point will be created.
If you increase Start Tension/End Tension value, the spline from the point will look more rigid. This value is actually the multiplier for incoming/outgoing vector for hermite interpolation.
If you want to add sagging effect, increase Sag Amount value. I originally tried to use caterary curve. But, it didn’t look good since our spline is not free hang. So I used built-in affect region function which you use for soft selection control. That’s why there are Bubble/Pinch values. Even though I expose this parameters, I don’t recommend to change
By default, the sagging direction is set to world -Z. But, you can use any direction by using Gravity Ref. Object.