point and vector rotation