polygon autoorientation
intersection detection