使用 Steven Fortune 代码的纬度、长时间点和边界框的 Voronoi 图
Voronoi diagram from latitude ,longtime points and bounding box using Steven Fortune's code
我正在使用 http://ageeksnotes.blogspot.com/2010/11/fast-java-implementation-fortunes.html
List<GraphEdge> allEdges = voronoi.generateVoronoi(latValues, lngValues, maxLatitude, minLatitude, minLongitiude, maxLongitude);
我有一个点列表(纬度,经度)和这些点的边界框 "Graph edges"。
列出所有边应该是我所需要的
60.1365210529365,-1.32798132296606
60.1338473169364,-1.33199657348365
60.1392706837279,-1.33043515202468
60.1405725317445,-1.33005929108147
60.1393406902,-1.32942830065997
60.1365210529365,-1.32798132296606
//bounding box.
minLatitude[60.1365210529365]
minLongitiude[-1.32798132296606]
maxLatitude[60.1405725317445]
maxLongitude[-1.33199657348365]
给我一组 graphEdges
GraphEdge 大小 [9]
结果:
GraphEdge size [9]
SITE 1 [2] x1,y1 [60.1365210529365,-1.330748782763273]
SITE 2 [5] x2,y2 [60.13899079297949,-1.32798132296606]
SITE 1 [2] x1,y1 [60.1365210529365,-1.330748782763273]
SITE 2 [0] x2,y2 [60.13737030236351,-1.3297971588651558]
SITE 1 [2] x1,y1 [60.137370302363514,-1.3297971588651558]
SITE 2 [4] x2,y2 [60.13984127151547,-1.3299689655876374]
SITE 1 [4] x1,y1 [60.137370302363514,-1.3297971588651558]
SITE 2 [0] x2,y2 [60.138302150610734,-1.32798132296606]
SITE 1 [3] x1,y1 [60.139841271515465,-1.329968965587637]
SITE 2 [4] x2,y2 [60.1405725317445,-1.3285413738219385]
SITE 1 [1] x1,y1 [60.1365210529365,-1.330879162193689]
SITE 2 [5] x2,y2 [60.1365210529365,-1.330879162193689]
SITE 1 [3] x1,y1 [60.13907967819445,-1.32798132296606]
SITE 2 [0] x2,y2 [60.13907967819445,-1.32798132296606]
SITE 1 [2] x1,y1 [60.1404266690477,-1.33199657348365]
SITE 2 [3] x2,y2 [60.139841271515465,-1.329968965587637]
SITE 1 [1] x1,y1 [60.13678377186855,-1.33199657348365]
SITE 2 [2] x2,y2 [60.1365210529365,-1.3310840580808576]
我想 'visualize this' 怎么样?我想从原始点制作多边形。 List allEdges 的列表应该是生成多边形所需的全部内容。
不确定您希望在何种环境下使用何种软件对其进行可视化。所以我认为将纬度和经度坐标转换为 GIS 可读文件格式(如 shapefile、WKT 或 GeoJSON 等)是安全的。
一种可能的解决方案是使用也在 Java 中的 GeoTools。它具有将输入转换为 shapefile 或其他 GIS 支持格式的功能,稍后可以在各种应用程序(如 GIS Web API 和桌面应用程序)中查看。
我最终使用 JTS 拓扑套件来获取可视化所需的输出。
https://mvnrepository.com/artifact/com.vividsolutions/jts/1.13
我正在使用 http://ageeksnotes.blogspot.com/2010/11/fast-java-implementation-fortunes.html
List<GraphEdge> allEdges = voronoi.generateVoronoi(latValues, lngValues, maxLatitude, minLatitude, minLongitiude, maxLongitude);
我有一个点列表(纬度,经度)和这些点的边界框 "Graph edges"。
列出所有边应该是我所需要的
60.1365210529365,-1.32798132296606
60.1338473169364,-1.33199657348365
60.1392706837279,-1.33043515202468
60.1405725317445,-1.33005929108147
60.1393406902,-1.32942830065997
60.1365210529365,-1.32798132296606
//bounding box.
minLatitude[60.1365210529365]
minLongitiude[-1.32798132296606]
maxLatitude[60.1405725317445]
maxLongitude[-1.33199657348365]
给我一组 graphEdges GraphEdge 大小 [9] 结果:
GraphEdge size [9]
SITE 1 [2] x1,y1 [60.1365210529365,-1.330748782763273]
SITE 2 [5] x2,y2 [60.13899079297949,-1.32798132296606]
SITE 1 [2] x1,y1 [60.1365210529365,-1.330748782763273]
SITE 2 [0] x2,y2 [60.13737030236351,-1.3297971588651558]
SITE 1 [2] x1,y1 [60.137370302363514,-1.3297971588651558]
SITE 2 [4] x2,y2 [60.13984127151547,-1.3299689655876374]
SITE 1 [4] x1,y1 [60.137370302363514,-1.3297971588651558]
SITE 2 [0] x2,y2 [60.138302150610734,-1.32798132296606]
SITE 1 [3] x1,y1 [60.139841271515465,-1.329968965587637]
SITE 2 [4] x2,y2 [60.1405725317445,-1.3285413738219385]
SITE 1 [1] x1,y1 [60.1365210529365,-1.330879162193689]
SITE 2 [5] x2,y2 [60.1365210529365,-1.330879162193689]
SITE 1 [3] x1,y1 [60.13907967819445,-1.32798132296606]
SITE 2 [0] x2,y2 [60.13907967819445,-1.32798132296606]
SITE 1 [2] x1,y1 [60.1404266690477,-1.33199657348365]
SITE 2 [3] x2,y2 [60.139841271515465,-1.329968965587637]
SITE 1 [1] x1,y1 [60.13678377186855,-1.33199657348365]
SITE 2 [2] x2,y2 [60.1365210529365,-1.3310840580808576]
我想 'visualize this' 怎么样?我想从原始点制作多边形。 List allEdges 的列表应该是生成多边形所需的全部内容。
不确定您希望在何种环境下使用何种软件对其进行可视化。所以我认为将纬度和经度坐标转换为 GIS 可读文件格式(如 shapefile、WKT 或 GeoJSON 等)是安全的。
一种可能的解决方案是使用也在 Java 中的 GeoTools。它具有将输入转换为 shapefile 或其他 GIS 支持格式的功能,稍后可以在各种应用程序(如 GIS Web API 和桌面应用程序)中查看。
我最终使用 JTS 拓扑套件来获取可视化所需的输出。 https://mvnrepository.com/artifact/com.vividsolutions/jts/1.13