gpt4 book ai didi

gis - 使用geotools api的WGS84 crs中线段和点之间的最短距离

转载 作者:行者123 更新时间:2023-12-03 21:39:52 27 4
gpt4 key购买 nike

在 geotools 中,您可以使用 Geometry 类中的距离函数找到两个几何图形之间的距离。 Geometry 有一个 Point 子类,但没有 Geometry 的线段子类。然而,有 LineSegment 类派生自 LineString,它不是 Geometry 类的子类。我尝试使用 JTS,但看起来 JTS 仅适用于笛卡尔坐标系。

问题:如何在 WGS84 crs 中找到 LineSegment 和 Point 之间的最短距离(以米为单位)。

请注意:我知道在不使用 geotools 的情况下可以在 SO 上找到答案。由于我们在我们的项目中使用了 geotools 并且代码可维护性非常重要,所以我想在 geotools 中做到这一点。

最佳答案

简单的解决方案(假设您的点靠近直线是使用 JTS 找到最近的点(现在忽略地球的曲率),然后使用 GeodeticCalculator 找到两点之间的距离。对于短距离,这个应该没事。

如果您需要更高的精度,您需要重新投影线并指向平面投影,并直接使用 JTS 在该投影中进行所有计算。

PS LineString 扩展几何(检查您拥有哪种几何)。

关于gis - 使用geotools api的WGS84 crs中线段和点之间的最短距离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24809534/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com