如何使用 Tinkerpop 3 找到顶点之间的最短路径,但搜索深度有限制?

How to find the shortest path between Vertices, but have a limit to search depth, using Tinkerpop 3?

我试图在 Tinkerpop 3 中找到两个顶点(fromNode 和 toNode)之间的最短路径,但我需要在某个深度 N 后停止搜索。如果没有这个限制,我将永远无法完成该图太大。

到目前为止这是我能想到的最好的:

titanGraph.traversal().V(fromNode)
    .repeat(out().simplePath())
    .times(N)
    .emit(hasId(toNode)).path();

这个问题,以及我尝试过的所有其他方法,是长度为 N 的路径被 returned 作为结果,即使它们没有到达节点。

我需要 return fromNode 和 toNode 之间长度为 N 或以下的所有路径。

你走对了路

titanGraph.traversal().V(fromNode)
    .repeat(out().simplePath())
    .times(N)
    .emit(hasId(toNode)).hasId(toNode).path();