Я хочу скопировать ребра с их вершинами и свойствами из dataG.front() и добавить их в testg , я попробовал то, что нашел в разделе «Доступ к связанным свойствам» http://www.boost.org/doc/libs/1_57_0/libs/graph/doc/bundles.htmlно у меня не работает. PS: dataG - это вектор графиков.
typedef std::pair<edge_iter, edge_iter> edge_pair;
Graph testg;
if (!dataG.empty())
{
auto const& gr = dataG.front();
for (edge_pair ep = edges(gr); ep.first != ep.second; ++ep.first) //ep edge number
{
auto ep = edges(gr).first; // ep edge number
vertex_t from = source(*ep.first, gr);
vertex_t to = target(*ep.first, gr);
boost::add_vertex(gr[from], testg);
boost::add_vertex(gr[to], testg);
boost::add_edge(from, to, gr[*ep.first], testg);
}
}
свойства edge работают, но есть проблема в источнике и цели. (часть vertex_t и add_vertex), Как добавить напрямую свойства вершины в добавленную, потому что здесь есть дублирование.
PS: для получения дополнительной информации здесь приведен полный код http://pastebin.com/2iztGAa6