需要一个独立的Java库来对lat/lon数据执行空间计算

Jim*_*ugh 17 java polygon spatial geospatial great-circle

我正在寻找一个能够对lat/lon数据集进行空间计算的Java库.以下是我正在寻找的一些功能:

  • 计算两点之间的大圆距离
  • 确定点是否位于简单的闭合多边形内,其中多边形由有序的点列表定义
  • 确定点"A"和点"B"之间的直线是否与简单的闭合多边形相交,其中多边形由有序的点列表定义
  • 确定点"A"是否在点"B"的某个半径范围内

想要的:

  • 想要一个依赖于数据库地理空间组件的库,例如Oracle Spatial,并且不能独立运行.
  • 想要一个图书馆,其目的是生成图形/地图等.我正在为现有应用程序构建分析模块,最终目标不是创建漂亮的图片.
  • 想要一个库来搜索大量的空间数据.如果它也碰巧这样做,那没关系,但我不会使用该功能.

该组织计划最终获得Oracle Spatial的许可证(因此,此时将覆盖空间搜索),但是现在我需要在不依赖数据库提供的空间的情况下在小数据集上实现我上面提到的分析功能.支持.

Ree*_*sey 12

我相信GeoTools会满足您的要求.请注意,它确实具有用于执行图形/贴图的工具,但是它们可以很容易地保持未使用状态.

  • GeoTools套件似乎涵盖了我的所有要求.与GeoTools一起打包的JTS库似乎涵盖了我对"点/形状A"与"点/形状B"用例交互的所有需求.GeoTools GeodeticCalculator类在getOrthodromicDistance()方法中处理Great Circle距离计算.几乎需要Maven 2来设置JAR依赖项,但我只需将它出售给项目中的权限.谢谢你的推荐! (4认同)

Adr*_*sbe 5

有一个新的Spatial4J库似乎可以满足您的需求,它支持各种空间和形状

Spatial4j是一个通用的空间/地理空间ASL许可的开源Java库(...)

到目前为止我还没有使用它,但是它README已经完成了,而且存储库很受欢迎,并且它可以在maven存储 库中使用,当我最终在repo和这个问题上时,我正在寻找这样的空间库.