We present a network flow based, degree of freedom analysis for graphs that arise in geometric constraint systems. For a vertex and edge weighted constraint graph with m edges and n vertices, we give an O(n(m + n)) time max-flow based algorithm to isolate a subgraph that can be solved separately. Such a subgraph is called dense. If the constraint problem is not overconstrained, the subgraph will be minimal. For certain overconstrained problems, finding minimal dense subgraphs may require up to O(n(2)(m + n)) steps. Finding a minimum dense subgraph is NP-hard. The algorithm has been implemented and consistently outperforms a simple but fast, greedy algorithm.