Fail if any polygon points for rotate_extrude are less than 0
delete ps when short-circuiting return, no need for explicit boost::format