  When can a plane graph with prescribed edge lengths and prescribed angles
(from among $\{0,180^\circ, 360^\circ$\}) be folded flat to lie in an
infinitesimally thin line, without crossings? This problem generalizes the
classic theory of single-vertex flat origami with prescribed mountain-valley
assignment, which corresponds to the case of a cycle graph. We characterize
such flat-foldable plane graphs by two obviously necessary but also sufficient
conditions, proving a conjecture made in 2001: the angles at each vertex should
sum to $360^\circ$, and every face of the graph must itself be flat foldable.
This characterization leads to a linear-time algorithm for testing flat
foldability of plane graphs with prescribed edge lengths and angles, and a
polynomial-time algorithm for counting the number of distinct folded states.
