add rotate(), densify() and degrade()