C++ LEMON 图形库 - 使用 graphToEps() 显示 arc/edge 地图

C++ LEMON Graph Library - Show arc/edge map with graphToEps()

使用 LEMON C++ library and GraphToEps, I am trying to visualize a grid graph 和伴随的边(或弧)权重,没有运气。到目前为止,这是我的 main() 中的内容:

// Create graph and init maps
GridGraph g = GridGraph(5, 5);
GridGraph::NodeMap<Point> coords(g);
GridGraph::EdgeMap<int> weights(g, 1);

// Set positions of nodes for graphToEps use
for(GridGraph::NodeIt u(g); u != INVALID; ++u ) {
    coords[u] = g.pos(u);
}

cout << "Create 'graph.eps'" << endl;
graphToEps(g,"graph.eps").
        coords(coords).
        title("Sample .eps figure").
        run();

我可以使用 graphToEps.nodeTexts(id) 获取节点文本(为简单起见,我在上面的代码中省略了),如 graphToEps demo 所示,但我找不到类似 edgeTexts(weights(id))arcTexts(weights(id)).

上面代码的输出如下所示,我希望地图 weights 的权重位于相应边的顶部。

Grid graph image

非常感谢任何帮助。

似乎没有内置的方法来执行此操作。 我最终连接到打印节点文本的 graphToEps 部分,然后找出所有边缘的文本放置位置。所有边都是 "printed" 就好像它们是节点一样。

我可能会在今年晚些时候提出拉取请求。