使用 Geotools Dijkstra 最短路径查找器计算路径长度(以公里为单位的距离)



我使用Geotools API来计算最短路径。我有这部分代码:

DijkstraShortestPathFinder dijkstra = new DijkstraShortestPathFinder(network, n_end, weighter);
dijkstra.calculate();
Path myPath=dijkstra.getPath(n_start);

如何计算 de 长度 myPath?

你可以按如下方式计算 myPath 的长度:

Iterator pathIterator = myPath.getEdges().iterator();       
double length=0;
while (pathIterator.hasNext())
{
Edge edge= (Edge) pathIterator.next();
SimpleFeature feature = (SimpleFeature) edge.getObject();
Geometry geom = (Geometry ) feature.getDefaultGeometry();
length+=geom.getLength();
}

相关内容

最新更新