Boost C++ - 生成布局
Boost C++ - generating a layout
我最近一直在处理用 C++ 绘制图形。我的问题是,如何修复最后的错误:
required from here
/usr/include/boost/graph/random_layout.hpp:30:8: error: ‘const class boost::random::linear_congruential_engine<unsigned int, 48271u, 0u, 2147483647u>’ has no member named ‘random_point’
put(position_map, v, topology.random_point());
^
对于这个小代码片段:
boost::minstd_rand gen;
PositionVec position_vec(num_vertices(component));
PositionMap position(position_vec.begin(), get(vertex_index, component));
topology_type topo(gen, -width/2, -height/2, width/2, height/2);
boost::random_graph_layout(component, position, gen);
我做错了什么?
非常感谢。
根据参考
template<typename Graph, typename PositionMap, typename Topology>
void
random_graph_layout(const Graph& g, PositionMap position_map,
const Topology& space); // <---
您应该作为 random_graph_layout
拓扑对象而非生成器的第三个参数传递。
所以打电话给
boost::random_graph_layout(component, position, topo);
我最近一直在处理用 C++ 绘制图形。我的问题是,如何修复最后的错误:
required from here
/usr/include/boost/graph/random_layout.hpp:30:8: error: ‘const class boost::random::linear_congruential_engine<unsigned int, 48271u, 0u, 2147483647u>’ has no member named ‘random_point’
put(position_map, v, topology.random_point());
^
对于这个小代码片段:
boost::minstd_rand gen;
PositionVec position_vec(num_vertices(component));
PositionMap position(position_vec.begin(), get(vertex_index, component));
topology_type topo(gen, -width/2, -height/2, width/2, height/2);
boost::random_graph_layout(component, position, gen);
我做错了什么?
非常感谢。
根据参考
template<typename Graph, typename PositionMap, typename Topology>
void
random_graph_layout(const Graph& g, PositionMap position_map,
const Topology& space); // <---
您应该作为 random_graph_layout
拓扑对象而非生成器的第三个参数传递。
所以打电话给
boost::random_graph_layout(component, position, topo);