是否可以检查 WKT 几何是否与另一块几何相交(通过 Cypher)?
例如,如何对它们进行空间搜索以返回与给定边界框相交的任何内容?
例如,如果我有空间索引节点:
@NodeEntity
class Route {
@GraphId Long id;
@Indexed(indexType = IndexType.POINT, indexName = "routeSpatial") String wkt
}
和两个这样的例子:
{ wkt: "LINESTRING (12 10, 14 12, 17 12, 18 10) }
和
{ wkt: LINESTRING (18 15, 18 12, 14 9, 14 6, 17 3, 20 3) }
看起来:
@Query("START n=node:routeSpatial('bbox:[15.000000, 20.000000, 9.000000, 16.000000]') RETURN n")
尽管与两条线相交,但不返回任何内容。
而一个完全包围两个几何形状的边界框,
@Query("START n=node:routeSpatial('bbox:[7.000000, 24.000000, 2.000000, 17.000000]') RETURN n")
两者都返回。
有人能帮助我吗?