Repulsing polygon can be created as a sum of repulsing at only one side triangles.
Used lens (only a small part, need more experiments with these). Added box-polygon constructor.