mysql算gps距离_mysql JS 计算两GPS坐标的距离函数:
sql:
drop function getDistance;
DELIMITER $$
CREATE DEFINER=`root`@`localhost` FUNCTION `getDistance`(
lng1 float(10,7)
,lat1 float(10,7)
,lng2 float(10,7)
,lat2 float(10,7)
) RETURNS double
begin
declare d double;
declare radius int;
set radius = 6378140; #假设地球为正球形,直径为6378140米
set d = (2*ATAN2(SQRT(SIN((lat1-lat2)*PI()/180/2)
*SIN((lat1-lat2)*PI()/180/2)+
COS(lat2*PI()/180)*COS(lat1*PI()/180)
*SIN((lng1-lng2)*PI()/180/2)
*SIN((lng1-lng2)*PI()/180/2)),
SQRT(1-SIN((lat1-lat2)*PI()/180/2)
*SIN((lat1-lat2)*PI()/180/2)
+COS(lat2*PI()/180)*COS(lat1*PI()/180)
*SIN((lng1-lng2)*PI()/180/2)
*SIN((lng1-lng2)*PI()/180/2))))*radius;
return d;
end
$$
DELIMITER ;
select getDistance(39.9458190611,116.7906536806,39.9475430611,116.7971416806);
JS:
//进行经纬度转换为距离的计算
function Rad(d){
return d * Math.PI / 180.0;//经纬度转换成三角函数中度分表形式。
}
//计算距离 返回米,参数分别为第一点的纬度,经度;第二点的纬度,经度
function GetDistance(lat1,lng1,lat2,lng2){
var radLat1 = Rad(lat1);
var radLat2 = Rad(lat2);
var a = radLat1 - radLat2;
var b = Rad(lng1) - Rad(lng2);
var s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a/2),2) +
Math.cos(radLat1)*Math.cos(radLat2)*Math.pow(Math.sin(b/2),2)));
s = s *6378.137 ;// EARTH_RADIUS;
s = Math.round(s * 10000) / 10; //输出为米
//s=s.toFixed(4);
return s;
}
mysql算gps距离_mysql JS 计算两GPS坐标的距离函数:相关推荐
- 坐标反算计算起始方位角_谁会坐标正算反算的公式,怎么计算两个坐标的方位角...
匿名用户 1级 2013-06-15 回答 现在都用5800了,谁还用4800.通过方位角和距离,求出和已知点都坐标增量.然后求出该点坐标.如果你都已知点是个假设的,那么还要用坐标转换,求出真正的坐标 ...
- mysql gps数据查询_Mysql数据库中计算两GPS坐标的距离
Mysql数据库中计算两GPS坐标的距离有两种方式: 1.直接使用SQL语句:#lat为纬度, lng为经度, 一定不要弄错 declare @lng1 float; declare @lat1 fl ...
- JS 计算两个点(经纬度)的距离;判断某一点是否在某一区域范围内
JS 计算两个点(经纬度)的距离 经度相同,纬度不同 纬度每隔0.00001度,距离相差约1.1米. 纬度每隔0.0001度,距离相差约11米. 纬度每隔0.001度,距离相差约111米. 纬度每隔0 ...
- 经纬度计算距离html,js版谷歌地图计算两经纬度坐标点的距离
球面上两点间大圆劣弧的距离html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- java版谷歌地图计算两经纬度坐标点的距离
球面上两点间大圆劣弧的距离 public class GoogleMapHelper {private static double EARTH_RADIUS = 6378.137; //地球半径//将 ...
- JS计算两个日期时间差,天 小时 分 秒格式
JS计算两个日期时间差,天 小时 分 秒格式 function getDateDiff(dateTimeStamp) {var minute = 1000 * 60;var hour = minute ...
- 两个坐标的距离C语言,计算两个经纬度直线距离 安卓app开发
.Net计算方式 public static class CCalculationGPSCoordinateDistance { private const double dEARTH_RADIUS ...
- JS 计算两个时间的间隔
js 计算两个时间之间间隔的天数 var start = new Date('2019-12-10'); //开始的时间 var end = new Date('2020-01-09'); //结束的 ...
- Android 高德地图根据地址获取经纬度,计算两个坐标的距离
1.到高德开放平台申请,获取key 高德开放平台:https://lbs.amap.com/ 2.下载高德定位及地址搜索SDK:https://download.csdn.net/download/m ...
最新文章
- C#正则表达式引发的CPU跑高问题以及解决方法
- 扩展和修改 Enterprise Library 缓存应用程序块
- shell在二级python_在python下运行时在shell脚本之间传递shell变量[duplicate]
- python CMAKE的使用
- Heap(堆结构/优先队列)-Swift实现
- SAP UI5 onDataLoaded hook的用法
- zabbix专题:附加 zabbix配置文件详解
- 手机伪原创视频处理工具 视频md5修改器ios
- 是指直接进行国际联网的计算机信息网络,网络安全合规指引题库:计算机信息网络直接进行国际联网,可以使用邮电部国家公用电信网提供的国际出入口信道。单位和个人也可以自行建立信道进行国际联网。()...
- java 200以内质数_Java:2-200内的质数
- 苹果屏蔽更新描述文件_iOS屏蔽更新文件失效,教你两个技巧暂停更新
- excel处理几十万行数据_如何用Excel处理200万行以上数据?
- 论文翻译——Skin Lesion Synthesis with Generative Adversarial Networks
- Qua Vadis Eclipse? 第一部分
- 看到强烈的太阳光你会不由自主的打喷嚏吗?
- 服务器怎么直接访问数据库文件路径,如何在服务器中找到数据库文件路径
- ANTLR4: No method for rule r or it has arguments
- 项目启动成功,但是Eureka页面不显示
- 百度云(主机管理密码、FTP登录密码、MySQL账号密码)配置 - 入口篇
- 正则匹配ip地址,手机号,对象类型