使用neo4j路由地理数据

时间:2013-04-02 12:43:03

标签: routing neo4j

我在PostGIS中有一个道路网络,我已经在那里进行了几次治疗。每条道路现在都有自定义成本,而不仅仅是基于其长度。这些只是折线,我目前没有netwotk节点的图层。我想使用 neo4j 计算此网络上的最短路径。我想象有两种方法可以做到:

  • 使用neo4j-spatial,我可以导入从PostGIS数据库中获取的shapefile。但是,我无法控制导入过程。我只是尝试了它,但我找不到节点,例如,因为我不知道它们的id(由shapefile导入器创建的节点)

  • 如果不使用neo4j-spatial,我可以编写自定义转换器来创建网络节点及其关系,并将其导入neo4j。但是,我认为这种方式会让我失去在neo4j中运行地理查询的能力(例如,用户选择从XY点开始,找到最近的网络节点)

你有建议吗?

由于

1 个答案:

答案 0 :(得分:1)

使用Neo4j-Spatial,您可以创建一个EditableLayer并为其添加线条,从而使用可用的空间操作,例如, https://github.com/neo4j/spatial/blob/master/src/test/java/org/neo4j/gis/spatial/LayersTest.java#L121示例包含多边形,并对其进行搜索。