Java 使用半径搜索附近的对象。谷歌地图
我正试图找到距离我现在位置大约20米的地方。我的数据库(MySQL)中有这些地方的坐标。 我需要的是将这个坐标从数据库中取出,并以某种方式与我的坐标进行比较。如果某个“针”接近20米,则应进行简单的吐司通信 首先,我需要从数据库中获取当前位置的帮助Java 使用半径搜索附近的对象。谷歌地图,java,android,mysql,location,Java,Android,Mysql,Location,我正试图找到距离我现在位置大约20米的地方。我的数据库(MySQL)中有这些地方的坐标。 我需要的是将这个坐标从数据库中取出,并以某种方式与我的坐标进行比较。如果某个“针”接近20米,则应进行简单的吐司通信 首先,我需要从数据库中获取当前位置的帮助 我正在使用android studio。我没有给你确切的答案,但我会给你一些线索 处理此类问题的最佳方法是让sql发挥魔力,根据半径和坐标返回结果 下面是一个示例sql查询 public function gettemples($latitude,
我正在使用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;
}
公共函数gettemples($latitude、$longitude、$distance、$templetype、$limitno){
$this->connect();
//$query=“从庙宇中选择*”;
$query=“选择*,(6371*acos(弧度(“.$LATIONE”)*cos(弧度(纬度))*
cos(弧度(经度)-弧度(“.$经度”)+sin(弧度(“.$经度”)*
sin(弧度(纬度)),作为与具有
距离<“$distance.”按距离限制0排序,“$limitno.”;
$stmt=$this->connection->prepare($query);
$result=$stmt->execute();
$results=$stmt->fetchAll(PDO::FETCH_ASSOC);
返回$results;
}
从数据库获取当前位置?IMHO,获取设备上的当前位置,然后发送到服务器,最后接收计算结果集(您周围20米范围内的位置)获取这些位置的位置,这些位置已经在数据库中