I am using davidmoten RTree to index the edges from the graph. however, rtree is not adding the edges in the entry. RTreeIndexer.class
public static RTree<Integer, Line> createRTree(CoreGraph graph) {
RTree<Integer, Line> rtree = RTree.create();
Map<Integer, Map<Integer, Double>> adjMap = graph.getAdjancencyMap();
for (Entry<Integer, Map<Integer, Double>> entry : adjMap.entrySet()) {
int startNodeId = entry.getKey();
double startLong = graph.getNodeFromMap(startNodeId).getLongitude();
double startLatit = graph.getNodeFromMap(startNodeId).getLatitude();
Map<Integer, Double> adjList = entry.getValue();
for (Entry<Integer, Double> adjacentNodes : adjList.entrySet()) {
int endNodeId = adjacentNodes.getKey();
double endLong = graph.getNodeFromMap(endNodeId).getLongitude();
double endLatit = graph.getNodeFromMap(endNodeId).getLatitude();
Line line = Geometries.line(startLong, startLatit, endLong, endLatit);
int edgeId = graph.getEdgeId(startNodeId, endNodeId);
if (rtree.isEmpty()) {
rtree.add(edgeId, line);
}
}
}
return rtree;
}