gpt4 book ai didi

math - 找到两个位置的交集

转载 作者:行者123 更新时间:2023-12-04 12:30:31 25 4
gpt4 key购买 nike

我想在Android中找到两个位置的交点。

我不想考虑图中所示的圆圈不相交或包含在内或完全重叠的情况。

我的问题是位置以度数给出,半径(精度)以米给出。我不知道如何混合这些单位。

在我的情况下,环境是 Android,但问题不是 Android 特定的。

Locations with Radiuses in m

最佳答案

您必须将纬度、经度转换为笛卡尔坐标系,单位为米。
这是使用中心纬度 = (latitudeCircle1 + latCircle2)/2.0 的圆柱等距投影完成的。
(中心经度相同)

( http://mathworld.wolfram.com/CylindricalEquidistantProjection.html )
在上面的链接中,要获得基于仪表的系统,您还没有乘以常数“meterPerDegreeAtEquator”,即 40000000/360.0

现在您有了在学校时的坐标 x,y。

然后你计算在学校学到的圆交点,或者在网上找到的。例如这里:https://math.stackexchange.com/questions/256100/how-can-i-find-the-points-at-which-two-circles-intersect

然后使用逆投影将笛卡尔交点转换回纬度、经度。

这适用于两个圆圈之间的距离不超过 10-100 公里。

备注 :下面是我在与您的示例代码的讨论中看到的常见错误:
请注意,x 与经度相关,y 与纬度相关。
虽然我们说纬度/经度。在此类转换公式中,您应该在参数名称等中使用 long,lat 顺序。
另见 Lat Long or Long Lat

关于math - 找到两个位置的交集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31250558/

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