java - 如何计算半径内的最大和最小纬度和经度值?

标签 java android location latitude-longitude

我想,给定一个点的纬度和经度,以及该点周围的特定半径(以公里为单位),计算纬度和经度的最大值和最小值。

根据我所做的研究,似乎如果你想精确,你应该记住两极和赤道的近似值。所以如果可能的话,我更愿意了解更多关于计算的精确版本,除非它太复杂。

最佳答案

看起来您想要“边界框”的代码。这允许您执行“商店定位器”操作,该操作不会计算数据库中每个商店的距离。步骤 0(可选)是在数据库中构建索引(针对纬度、经度)。步骤 1 是计算框 (lo_lat, hi_lat, lo_lon, hi_lon) 并在查询中使用它来过滤掉不需要的行。步骤 2 计算剩余行的距离,并删除所需圆之外的行。

这将帮助您了解详细信息:http://janmatuschek.de/LatitudeLongitudeBoundingCoordinates

关于java - 如何计算半径内的最大和最小纬度和经度值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43023738/

相关文章:

android - 从纬度和经度获取地址

android - 融合位置有时会停止

java - Android AIDE lambda

java - Liferay 构建服务

Android IAP的Java服务器端验证

java - 我试图在执行时在 android 中创建一个注册 Activity ,控制进入注册方法,之后控制停止

java - 查找我当前在 Java 中的职位

java - httpclient放置问题

java - Appium为什么要推送apk?

android - 在 Google play 上上传应用程序时遇到问题 Made via Buildozer