optimize Rotate3D