Add a first version of revolution function