Here is a little operator that I wrote for Blender. This operator is basically a side-result of a larger project I am working on but I thought it is worth sharing this as it might be useful for others as well.
The aim is to bring a given mesh-surface into another shape. For example, in the picture below, I would like to transform the right mesh (the origin) into the form of the left mesh (the target) while its internal topology should be maintained.
I found that the easiest way to achieve this is, to unwrap both objects and simply define in UV-space how the right mesh should cover the left mesh.
The only important point here is that any point in the UV-map of the origin mesh must be in the area of the UV-map of the target-mesh. Then, hit “map via UV” and you got
The addon and additional information as well as some debugging issues can be found and discussed in this BlenderArtists-Thread.