added shape rotation