[BGL] Using custom planar embedding

Dears, I would like to use a custom embedding for a planar graph in order to pass it to the planar_face_traversal algorithm, but I couldn't get my code compiled yet (see the attachments). Could someone help me, please? Best regards, Vicente.

On Sat, Oct 17, 2009 at 7:50 PM, Vicente Helano
Dears,
I would like to use a custom embedding for a planar graph in order to pass it to the planar_face_traversal algorithm, but I couldn't get my code compiled yet (see the attachments). Could someone help me, please?
Hi Vicente, Can you explain what line is giving you an error, what the error is telling you, and why you expect that line not to give you an error? Regards, Aaron

Hi Aaron,
Sorry for the absence of data. :)
If I comment out the line:
boost::planar_face_traversal(g, &planar_embedding[0], vis);
the code compiles and runs smoothly. Otherwise, I get the following
error messages:
/home/helano/Desktop/temp/extrpg.cpp:79: instantiated from here
/usr/include/boost/property_map.hpp:351: error: no match for
‘operator+’ in ‘((const
boost::iterator_property_map<__gnu_cxx::__normal_iterator

On Sun, Oct 18, 2009 at 1:12 PM, Vicente Helano
Hi Aaron,
Sorry for the absence of data. :) If I comment out the line:
boost::planar_face_traversal(g, &planar_embedding[0], vis);
the code compiles and runs smoothly. Otherwise, I get the following error messages:
<snip>
/home/helano/Desktop/temp/extrpg.cpp:79: instantiated from here /usr/include/boost/graph/detail/adjacency_list.hpp:2644: error: no matching function for call to ‘get_property_value(const boost::no_property&, boost::edge_index_t)’
The error messages are telling you that the planar_face_traversal needs an edge index map defined. The edge index map won't be automatically initialized like your vertex index map is, so you'll have to actually iterate through the edges and give them index values manually. The example at http://www.boost.org/doc/libs/1_40_0/libs/graph/example/planar_face_traversa... shows how to do this (code block with the comment "Initialize the interior edge index"). Regards, Aaron
participants (2)
-
Aaron Windsor
-
Vicente Helano