python - 使用 geopy 将英里转换为纬度和经度

标签 python geometry geolocation geography geopy

背景

我想添加一个模型管理器函数,该函数根据与坐标的接近度过滤查询集。我找到了这个blog posting代码完全符合我的要求。

代码

下面的代码片段似乎使用了 geopy此后已删除的功能。它通过限制纬度和经度的范围来粗略地缩小查询集的范围。

    # Prune down the set of all locations to something we can quickly check precisely
    rough_distance = geopy.distance.arc_degrees(arcminutes=geopy.distance.nm(miles=distance)) * 2
    queryset = queryset.filter(
        latitude__range=(latitude - rough_distance, latitude + rough_distance), 
        longitude__range=(longitude - rough_distance, longitude + rough_distance)
    )

问题

由于一些使用的 geopy 函数已被删除/移动,我正在尝试重写此节。然而,我不懂计算——勉强通过几何学,我的研究让我困惑,而不是真正帮助我。

有人可以帮忙吗?我将不胜感激。

最佳答案

如果其他人现在正在看这个,因为我尝试使用 geopy 并且只是碰到它,上面的 rough_distance 代码段的现代等效项是:

import geopy
rough_distance = geopy.units.degrees(arcminutes=geopy.units.nautical(miles=1))

关于python - 使用 geopy 将英里转换为纬度和经度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4325182/

相关文章:

python - python seaborn 图中的图例标签不正确

geometry - 欧拉计划 126 : could someone explain?

c# - 将向量舍入到一个圆内有问题吗?

php - 是否有可以在给定位置时生成 IP 的服务或程序

javascript - 有没有办法重新请求用户许可获取他的位置,或者使用带有 JavaScript 的地理定位 API 删除旧设置?

python - django-import-export ForeignKeyWidget 不进行查找

python - 测试字典键是否存在,不为空且不为空

python - 如何使用 python 生成二维码并在扫描时使其打开定义的 url?

javascript - 使用 Javascript 绘制 3D 元素

android - 当应用程序在后台时将用户位置更新到服务器