Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java neo4j空间wgs84距离_Java_Neo4j_Neo4j Spatial - Fatal编程技术网

Java neo4j空间wgs84距离

Java neo4j空间wgs84距离,java,neo4j,neo4j-spatial,Java,Neo4j,Neo4j Spatial,我使用这段代码以wgs84格式(变量co)查找距离给定点最近的nabours 因为我被告知此函数使用欧几里德距离而不是距离,所以我需要fpr wgs84格式 所以我的问题是:在neo4j satial中是否有一个函数,返回正确的距离 非常感谢我建议使用org.geotools.referencement.datum.default椭球体.WGS84.orthodromicDistance()方法。例如,请参见,它在 为了回答第二个关于找到离点最近的几何体的问题,请看一下实用方法findClose

我使用这段代码以wgs84格式(变量co)查找距离给定点最近的nabours

因为我被告知此函数使用欧几里德距离而不是距离,所以我需要fpr wgs84格式

所以我的问题是:在neo4j satial中是否有一个函数,返回正确的距离


非常感谢

我建议使用org.geotools.referencement.datum.default椭球体.WGS84.orthodromicDistance()方法。例如,请参见,它在


为了回答第二个关于找到离点最近的几何体的问题,请看一下实用方法findClosestEdges at。这将返回PointResult的集合,其中包含最近的点及其所属的几何体。如果您查看代码,您将看到它使用JTS类LocationIndexedLine来计算边的最近部分。

谢谢您的回答。我想知道是否有办法找到点和多边形之间最短的wgs84距离。欢迎JTS class LocationIndexedLine在此提供帮助。我们还实现了一个实用方法,实现了您在上要求的功能。我也会更新上面的答案。你能分享节点类中使用的点类和索引吗?以及pom文件中使用了哪些包?谢谢
for(Node n : geomPoints){
    ExecutionResult result = engine.execute("START a=node(" + n.getId() + ") "+ 
                                                    "MATCH a-[:FIRST_NODE]->()-[:NEXT*0..]->()-[:NODE]->b "+
                                                    "RETURN b");

    Iterator<Node> nodes = result.columnAs("b");
    while(nodes.hasNext()){
        Node nodesInGeom = nodes.next();
        Float lon = Float.parseFloat(nodesInGeom.getProperty("lon").toString());
        Float lat = Float.parseFloat(nodesInGeom.getProperty("lat").toString());
        Coordinate coo = new Coordinate(lon,lat);
        if(co.distance(coo)<distance) {
            distance = co.distance(coo);
            nearestNabour = nodesInGeom;
        }
    }
co.distance(coo)