Change pivot position for rotation in models

Currently, a model only has an unique pivot position on its edge to begin the rotation based according to it, but we are not able to change it.

It would be ideal if we could align to the middle or any other desired position, and then rotate the model in 360 degrees around itself or based in some different angle we’ve been chosen for its pivot previously.