principal axis rotation utility functions, new pure function returns random point over cylinder surface
random cylinder test case