Well, my method seems to handle a direction change quite well without missing anything. So I don't know what I would change.