double calcDistance(const Graph& g, const EdgeWeightMap& edge_weight_map, const VertexVector& vertices) { VertexVector::const_iterator it(vertices.begin()), it_end(vertices.end()); --it_end; EdgeDescriptor edge; double length = 0; for (; it != it_end; ++it) { length += distance(g, edge_weight_map, *it, *boost::next(it)); } length += distance(g, edge_weight_map, vertices.back(), vertices.front()); return length; }