创建图的双重 - 平面面遍历 - vtkBoostGraphAdapter

时间:2014-10-12 20:25:15

标签: boost vtk planar-graph

我试图编写一个创建图形对偶的算法。要检查图形是否为平面,我通过vtkBoostGraphAdapter使用 Boyer-Myrvold平面度测试(Boost实现)。这样可以正常工作(仅限于vtkUndirectedGraph - s,但现在还可以)。 (boost.org/doc/libs/1_56_0/libs/graph/doc/boyer_myrvold.html)

要创建双重我需要遍历平面图的面,我还有一个名为planar_face_traversal_visitor的Boost工具。 (boost.org/doc/libs/1_56_0/libs/graph/doc/planar_face_traversal.html) 有一个人,Aaron Windsor,他实现了适当的访客类,能够在Boost中创建图形的对偶。 (https://github.com/aaw/boost_planar_graph_dual) 仅使用Boost也可以正常工作,但我也希望使用vtkBoostGraphAdapter来调整此功能。

这是我的代码:http://pastebin.com/g0Mtw6Ph

这些是我的错误:

  • 的/ usr /本地/ boost_1_56_0 /升压/ property_map /的 property_map.hpp :302:19: 类型&#const;没有可行的重载operator [] 提高:: iterator_property_map, std :: __ 1 :: allocator> > *&gt ;, boost :: vtkGraphIndexMap,std :: __ 1 :: map,std :: __ 1 :: allocator> >,std :: __ 1 :: map,std :: __ 1 :: allocator> > &安培;>'
  • / usr / local / boost_1_56_0 / boost / property_map / property_map.hpp :309:5:否 类型' const的可行重载operator [] 提高:: iterator_property_map, std :: __ 1 :: allocator> > *&gt ;, boost :: vtkGraphIndexMap,std :: __ 1 :: map,std :: __ 1 :: allocator> >,std :: __ 1 :: map,std :: __ 1 :: allocator> > &安培;>'
  • 的/ usr /本地/ boost_1_56_0 /升压/ property_map /的 property_map.hpp :302:19: 类型&#const;没有可行的重载operator [] boost :: iterator_property_map,std :: __ 1 :: allocator> *>中 boost :: vtkGraphIndexMap,std :: __ 1 :: set,std :: __ 1 :: allocator&gt ;,std :: __ 1 :: set,std :: __ 1 :: allocator> &安培;>'
  • / usr / local / boost_1_56_0 / boost / property_map / property_map.hpp :309:5:否 类型' const的可行重载operator [] boost :: iterator_property_map,std :: __ 1 :: allocator> *>中 boost :: vtkGraphIndexMap,std :: __ 1 :: set,std :: __ 1 :: allocator&gt ;,std :: __ 1 :: set,std :: __ 1 :: allocator> &安培;>'
  • / usr / local / boost_1_56_0 / boost / planar_dual.hpp :38:38:没有可行性 类型' edge_to_face_map_t'重载operator [] (又名 ' iterator_property_map&#39)

我一直在处理这个问题,在过去的几天内深入阅读源代码并尝试了几件事,但我无法弄清问题是什么。 vtkBoostGraphAdapter是否为这种用法做好了准备?

任何形式的帮助表示赞赏!

提前致谢!

西拉德

0 个答案:

没有答案