我有车辆的地理位置和我在城市中的点,我需要找到那些在我的点半径 5 公里范围内的车辆。我可以用 S2 单元 ID 表示车辆位置和我的点。但我如何查询?
我可以将所有用户的数据存储在数据库中并对 S2 单元 ID 进行查询吗?由于 S2 cell id 使用 Hilbert 曲线,我们可以知道那些具有更接近 S2 cell id 的车辆彼此之间的距离更近。或者我必须在这里使用任何其他方法来执行搜索操作?
我正在创建一个超本地送货服务应用程序。只有距离用户 5 公里半径范围内有商店,我才能接收订单。我以 geojson 格式存储商店位置。h3-js 中是否有一个函数,它将获取半径、商店数组、h3 索引,然后返回距给定 h3 索引 5 公里范围内的商店列表。或者我如何使用 h3-js 来实现这个?
我以前可以使用的代码现在不能用于从 GEOS 到 s2 的转换。
我不确定如何创建此错误的可重现示例。sf 包附带的示例数据集可以很好地使用此代码,因为我确信它们也已更新为可以与 s2 包一起使用。最好的
ranges <- st_read("Data/Range maps/PRISM_shorebird_ranges_breeding/PRISM_shorebird_ranges_breeding.shp")
ranges2 <- ranges %>%
group_by(binomial) %>%
select(-seasonal, -Shape_Area) %>%
summarize()
Error in s2_geography_from_wkb(x, oriented = oriented, check = check) :
Evaluation error: Found 2 features with invalid spherical geometry.
[1] Loop 0 is not valid: Edge 319 has duplicate vertex with edge 322
[2] Loop 0 is not valid: Edge 53052 has duplicate vertex with edge 53055.
Run Code Online (Sandbox Code Playgroud)
我尝试了如何解决连接空间数据时的球面几何故障中的解决方案
您有两个选择:
1. 通过脚本中的 sf::sf_use_s2(FALSE) 关闭 s2 …