Unfold a loop by perturbing a small amount in the direction of tangent vector

35 Views Asked by At

I am interested in designing an animation of unfolding a loop. I am trying to unfold it by taking a tangent at each point and then adding a small amount of $\delta$ in the direction of the unit tangent vector. The problem is that if I give a fixed amount of $\delta$ at every point, it just ends up expanding the entire loop instead of giving the feel of unfolding.

I am trying to unfold a circle into a straight line in this way.

Can someone suggest the best possible way to do this efficiently? Thanks!