根据浏览器获取经纬度
根据浏览器获取经纬度(百度地图)
(后面的AK是我申请的测试用的)
可直接访问地址查看效果:https://www.buruyouni.com/web/map.html (电脑定位应该是根据ip定位的,手机根据GPS速度非常快的)
注意,页面不能直接打开,要用localhost:/xxx.html这样打开
<html>
<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta name="viewport" content="initial-scale=1.0, user-scalable=no" /><style type="text/css">body, html,#allmap {width: 100%;height: 100%;overflow: hidden;margin:0;font-family:"微软雅黑";}</style><script type="text/javascript" src="//api.map.baidu.com/api?v=2.0&ak=t7fC0AWQLTEO9YeOsWWLp8MT9S7su5g6"></script><title>浏览器定位</title>
</head>
<body><div id="allmap"></div>
</body>
</html>
<script type="text/javascript">// 百度地图API功能<!-- var map = new BMap.Map("allmap"); --><!-- var point = new BMap.Point(116.331398,39.897445); --><!-- map.centerAndZoom(point,12); -->var map = new BMap.Map("allmap");var geolocation = new BMap.Geolocation();geolocation.getCurrentPosition(function(r){if(this.getStatus() == BMAP_STATUS_SUCCESS){//var mk = new BMap.Marker(r.point);//map.addOverlay(mk);//map.panTo(r.point);alert('您的位置:'+r.point.lng+','+r.point.lat);}else {alert('failed'+this.getStatus());} })//关于状态码//BMAP_STATUS_SUCCESS 检索成功。对应数值“0”。//BMAP_STATUS_CITY_LIST 城市列表。对应数值“1”。//BMAP_STATUS_UNKNOWN_LOCATION 位置结果未知。对应数值“2”。//BMAP_STATUS_UNKNOWN_ROUTE 导航结果未知。对应数值“3”。//BMAP_STATUS_INVALID_KEY 非法密钥。对应数值“4”。//BMAP_STATUS_INVALID_REQUEST 非法请求。对应数值“5”。//BMAP_STATUS_PERMISSION_DENIED 没有权限。对应数值“6”。(自 1.1 新增)//BMAP_STATUS_SERVICE_UNAVAILABLE 服务不可用。对应数值“7”。(自 1.1 新增)//BMAP_STATUS_TIMEOUT 超时。对应数值“8”。(自 1.1 新增)
</script>
计算经纬度的距离(PHP版本):
需要注意的是这里计算的是直线距离,非路线的距离,一般情况路线距离要比直线距离要长的,下面mysql和go版本的也是计算的是直线距离,需要计算路线距离的还是得用高德或者某度的地图api来计算会真确点
<?php
/*** 计算两点地理坐标之间的距离* @param $longitude1 起点经度* @param $latitude1 起点纬度* @param $longitude2 终点经度 * @param $latitude2 终点纬度*/
function getDistance($longitude1, $latitude1, $longitude2, $latitude2){$EARTH_RADIUS = 6370.996; // 地球半径系数$PI = 3.1415926;$radLat1 = $latitude1*$PI/180.0;$radLat2 = $latitude2*$PI/180.0;$radLng1 = $longitude1*$PI/180.0;$radLng2 = $longitude2*$PI/180.0;$a = $radLat1 - $radLat2;$b = $radLng1 - $radLng2;$distance = 2 * asin(sqrt(pow(sin($a/2),2) + cos($radLat1) * cos($radLat2) * pow(sin($b/2),2)));$distance = $distance * $EARTH_RADIUS * 1000;$uint = 'm';if($distance>1000){$distance = $distance / 1000;$uint = 'km';$result = round($distance, 2);}else{$result = ceil($distance);}return $result.$uint;
}// 起点坐标
$longitude1 = 113.330405;
$latitude1 = 23.147255;// 终点坐标
$longitude2 = 113.314271;
$latitude2 = 23.1323;$distance = getDistance($longitude1, $latitude1, $longitude2, $latitude2);
echo $distance; // 2.34km?>
计算经纬度距离,mysql版本(注意mysql必须大于等于5.6,因为st_distance函数是从mysql5.6.1才加入的)
数据表:
计算经度:113.1038457 纬度:23.01989148到上面的地址的距离根据距离升序排序,计算结果单位是米
SELECT *,(st_distance(point(jd,wd),point(113.1038457,23.01989148))*111195) as juli_m FROM place ORDER BY juli_m ASC
st_distance(point(jd,wd),point(113.1038457,23.01989148))这是计算出来的度数,乘以111195得出距离单位:米
计算经纬度距离go版本
根据浏览器获取经纬度相关推荐
- 百度地图 pc浏览器获取经纬度
百度地图 pc浏览器获取经纬度 百度地图 pc浏览器获取经纬度 百度地图 pc浏览器获取经纬度 <html> <head lang="en"> <me ...
- springboot8==调用百度地图API从浏览器获取经纬度,后端使用geodesy依赖计算配送距离
见百度地图API调用文档 jspopularGL | 百度地图API SDK ================ <!--引入百度地图API用于从浏览器获取当前经纬度--> <scri ...
- php手机浏览器获取经纬度,H5移动端调用浏览器Geolocation方法获取手机gps经纬度方法...
具体请看下面代码: var x=document.getElementById("demo"); function getLocation() { if (navigator.ge ...
- 高德地图——浏览器定位+点击获取经纬度+去除高德百度地图左下角logo
高德地图--浏览器定位+点击获取经纬度+去除高德百度地图左下角logo 1.代码 <!doctype html> <html> <head><meta cha ...
- js获取浏览器当前经纬度信息
谷歌浏览器暂不支持 1.引入百度地图api和jq <script type="text/javascript" src="https://api.map.baidu ...
- vue怎么获取用户的位置经纬度_vue 实现Web端的定位功能 获取经纬度
首先我这里的需求呢, 是获取当前用户的经纬度 经过无数次的测试, 先后用了 腾讯/百度地图的api,最后绝对还是高德的js APi 废话不多说, 直接上代码. 首先在 index.html 里面 引入 ...
- html5获取坐标高德,vue 单纯的获取经纬度 百度与高德 H5
首先用百度的api举个例子 首先在index页面引入如下: 原样复制粘贴到index里就可以了,记住尾巴的ak是你自己的地图密匙哦 随后在想调用的地方写入如下 var _this = this; if ...
- vue3调用百度地图标注选择位置并获取经纬度
vue3调用百度地图标注选择位置并获取经纬度 参考了很多文章,最终结合百度文档各有采取完成地图选取经纬度. 第一步:引入百度地图,在当前需要地图的页面引入就行. const loadMapScript ...
- 浏览器如何更改定位位置-VMLogin指纹浏览器Geolocation经纬度设置
VMLogin指纹浏览器Geolocation:(经纬度地理位置) 对于某些用户的业务有模拟地理位置需求的可打开, VMLogin浏览器的Geolocation功能一般只要打开[基于IP地址填充地理位 ...
- 【python】python利用百度地图API:获取经纬度、地图撒点
本文目的: python通过百度地图API,获取所给地址的经纬度,并且在百度地图上进行撒点. 另:百度地图API功能强大,如: GPS功能(单个点沿线运动). 信息窗口示例(添加纯文字的信息窗口). ...
最新文章
- R语言将dataframe数据从宽表变为长表实战(melt函数、pivot_longer函数、gather函数)
- oracle 查询各科前3名_2020年山东高校排行榜前3无悬念,山东理工大学省内第17全国250名...
- 如何删除有病毒的网站?
- 2道python基础练习
- html52D转换3D,CSS3 Transform 2D和3D转换
- Ssm手机电脑自适应新闻博客系统实战开发
- python实现oss文件下载
- 记一次服务器故障及解决办法
- 10年年初写的述职报告
- IEEE Trans LaTex模板参考文献格式
- QML类型:Dialog(Qt Quick Dialogs 模块)
- B站大佬开发的这款无障碍看片神器火了,我有一个大胆的想法...
- 网关与路由器关系介绍
- 计算机科学与技术专业 ppt,计算机科学与技术专业.ppt
- php地图找房代码,地图搜租房功能实现
- Elasticsearch从入门到精通
- 外贸怎么在谷歌搜索客户?
- Fedora和Red Hat Enterprise Linux实用指南(第6版)(上、下册)( 入行必读的Linux圣经)...
- PageRank 笔记
- 升级电子狗显示无法连接到服务器,什么是云电子狗?电子狗云升级是什么