Boost logo

Boost Users :

From: Jean Utke (utke_at_[hidden])
Date: 2004-12-03 14:30:12


Hi Doug,

thanks for your reply.
I do need to remove vertices/edges, hence the listS.
There is the issue of dot not parsing hex addresses properly and I
understand the reason for changing the code in this respect.
I can add the additional property to all my graphs but that is overhead
for me since I use the graphviz stuff for debugging only.
Rather than incurring that overhead I would prefer
to filter the hex addresses to dot-readable names and not print any
labels. If people want to see their vertices indexed and printed like
this they can add the vertex_index property and write their own label
writers.
Is there any chance for a graphviz code change that filters the hex
addresses ?

Jean

> The GraphViz writer needs to be able to generate unique labels for
> each of the nodes. The easiest way to do that is to use the indices of
> the vertices. This is required because descriptors don't necessarily
> make good labels... it worked before for some graph types by accident.
>
> To fix this, you would need to add a "vertex_index_t" property to the
> vertices in your graph and set them to values in [0, num_vertices(g)),
> usually like this:
>
> vertex_iterator vi, vi_end;
> int i = 0;
> for(tie(vi, vi_end) = vertices(g); vi != vi_end; ++vi, ++i)
> put(vertex_index, g, *vi, i);
>
> Actually, you'll probably find that using BGL algorithms becomes a lot
> easier after you've done this :)
>
> The alternative suggested by Jeffrey Holle is easier, but only if you
> don't need to remove vertices from your graph.
>
> Doug
>
> _______________________________________________
> Boost-users mailing list
> Boost-users_at_[hidden]
> http://lists.boost.org/mailman/listinfo.cgi/boost-users
>

-- 
Jean Utke
Argonne National Lab./MCS
utke_at_[hidden]
phone: 630 252 4552 
cell:  630 363 5753

Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net