我正在尝试查找距离我当前位置大约 20 米的地方。我的数据库(MySQL)中有这个地方的坐标。 我需要的是将这个坐标从数据库中取出,并以某种方式将其与我的进行比较。如果某个“pin”距离接近 20 米,则应该发生简单的 toast 通信。
首先,我需要帮助从数据库获取当前位置
我正在使用 android studio。
最佳答案
我不会给你确切的答案,但我会给你一些线索。
处理此类问题的最佳方法是让 SQL 发挥作用并根据半径和坐标返回结果。
这是一个示例 SQL 查询
public function gettemples($latitude, $longitude, $distance, $templetype, $limitno){
$this->connect();
// $query = "SELECT * FROM temples";
$query = "SELECT *, ( 6371 * acos( cos( radians(".$latitude.") ) * cos( radians( latitude ) ) *
cos( radians( longitude ) - radians(".$longitude.") ) + sin( radians(".$latitude.") ) *
sin( radians( latitude ) ) ) ) AS distance FROM temples HAVING
distance < ".$distance." ORDER BY distance LIMIT 0 , ".$limitno."";
$stmt = $this->connection->prepare($query);
$result = $stmt->execute();
$results = $stmt->fetchAll(PDO::FETCH_ASSOC);
return $results;
}
关于java - 使用半径搜索附近的物体。谷歌地图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41364510/