Here's my problem. I've got a very large graph (say a few thousand nodes). This graph is planar, although that doesn't really affect much. Small clusters of vertices are grouped into "regions". The edges within a region are marked as "on", and those between regions are marked as "off". I need to be able to pull all vertices from a region and some or all of its neighboring regions, as well as all induced edges, into a local graph that I do work on. At first I thought of using the subgraph function together with copy_graph, but the subgraph interface is pretty unintuitive, so I'm avoiding it for now. I have a mechanism to iterate over all the vertices in a region, but not the edges. How can I get an iterator to the edges around a given vertex or set of vertices? adjacency_iterator isn't the right tool. Is there an exhaustive list of all iterators available in BGL somewhere?