  Detecting polygons defined by a set of line segments in a plane is an
important step in analyzing vector drawings. This paper presents an approach
combining several algorithms to detect basic polygons from arbitrary line
segments. The resulting algorithm runs in polynomial time and space, with
complexities of $O\bigl((N + M)^4\bigr)$ and $O\bigl((N + M)^2\bigr)$, where
$N$ is the number of line segments and $M$ is the number of intersections
between line segments. Our choice of algorithms was made to strike a good
compromise between efficiency and ease of implementation. The result is a
simple and efficient solution to detect polygons from lines.
