1.问题

项目中需要进行测距,当前位置到指定位置的直线距离,目的坐标使用为百度坐标,而我们在微信里获取的当前坐标为wgs-48国际坐标这里需要对其进行转换

2.转化微信坐标到百度坐标

在这里百度为我们提供了转换工具,只要按照转换文档进行转换即可,大家可以到这个网址上看看http://lbsyun.baidu.com/index.php?title=webapi/guide/changeposition应该就知道如何进行转换了,当然这里我们会用到百度的jssdk

关于jssdk我们只需要引入相应的src路径即可

<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=你的ak"></script>这里大家只需要改成你自己的ak就行了,关于这个秘钥怎么获取在上面的网址链接中百度会告诉如何取申请自己的ak

<script src="http://api.map.baidu.com/library/GeoUtils/1.2/src/GeoUtils_min.js" type="text/javascript"></script>这里使我们下面要进行测距需要使用到的工具类

因为jssdk后我们就可以转换了,这里直接上代码
function getBaiduPosition(lng,lat) {var url ="http://api.map.baidu.com/geoconv/v1/?coords="+lng+","+lat+"&from=1&to=5&ak="+config.ak;$.ajax({url: url,type: 'GET',contentType: "application/json",dataType: 'jsonp',//这里要用jsonp的方式不然会报错success: function(data) {config.lng = data.result[0].x;//经度config.lat  = data.result[0].y;//纬度}});}

这段代码就是将其他坐标转换为百度坐标,至于里面的from和to参数大家还是参考上面的网址中知道去填写。

其中这里的lng是经度,lat是纬度,这里使用的是jsonp因为出现了跨域问题所以只能通过这种方式解决,幸好百度支持^_^,这里我是将获取到转换的经纬度坐标保存到了配置文件里方便后面使用。

3.进行测距

因为目的坐标是我们可以从服务器端获取的,这里我们也获取到了当前位置的坐标,这样我们就可以测距了,这里直接上代码:

function getDistance(lng,lat){//测距需要的两点var point1 = new BMap.Point(lng,lat);var point2 = new BMap.Point(config.lng,config.lat);//进行测距var distance = BMapLib.GeoUtils.getDistance(point1, point2);return distance;// $.alert(distance);}

上面的这段代码就是进行测距的,主要使用到了工具类里面的东西,这个工具类百度是公开的源码的哦,大家有兴趣可以了解下 http://api.map.baidu.com/library/GeoUtils/1.2/docs/symbols/BMapLib.GeoUtils.html

好了经过上面的两段代码就实现了微信公众号获取到的当前位置转换成百度坐标,并进行测距。

这里需要大家注意的是两个js的引入以及转换坐标时的url的使用

转载于:https://www.cnblogs.com/clj2017/p/8267071.html

微信坐标转换百度坐标相关推荐

  1. GPS经纬度换算成百度坐标

    最近在做一个WAP页面,页面上需要展示公司所在的地图位置,但数据库里保存的是GPS经纬度,需要转换一下才能在网页上显示出来. 如何转换成百度坐标系?官方文档给的是:坐标转换接口非公开.百度搜" ...

  2. 火星坐标、百度坐标、WGS84坐标转换代码(JS、python版)

    火星坐标.百度坐标.WGS84坐标转换代码(JS.python版) 一.JS版本源码 github:https://github.com/wandergis/coordTransform /*** C ...

  3. java 火星坐标转wgs84_js中火星坐标、百度坐标、WGS84坐标转换实现方法示例

    本文实例讲述了js中火星坐标.百度坐标.WGS84坐标转换实现方法.分享给大家供大家参考,具体如下: //定义一些常量 var x_PI = 3.14159265358979324 * 3000.0 ...

  4. 地图坐标转换(84坐标、百度坐标、国测局坐标)

    由于目前世界上只有美国才有全球定位系统(GPS),当我们实际做项目时,得到的坐标数据往往都是为GPS全球定位系统使用而建立的坐标系统,即我们所说的84坐标.而基于我国国情,这些真实坐标都是已经进行人为 ...

  5. 微信公众号获取用户地理位置,转换百度坐标

    开发微信公众号,首先要先成为开发者.请自行百度. 在微信公众平台开启接口权限--接口权限-网页服务-地理位置-开启 JSSDK使用步骤 步骤一:绑定域名 先登录微信公众平台进入"公众号设置& ...

  6. 将火星坐标转换成百度坐标

    由于XX机票的项目,要用到酒店坐标定位,但是呢,服务器提供的坐标是高德 坐标,但是考虑到百度地图用的比较熟悉了,所以考虑将高德坐标转换成百度坐标来做. 以下介绍部分的内容转载自:http://blog ...

  7. php 经纬度坐标转换 WGS84、火星坐标 (GCJ-02)、百度坐标 (BD-09)

    项目有gps上报的功能, 由于前端插件问题导致大量gps定位数据转换百度坐标(BD-09)时产生极大偏移, 故需要后端做经纬度坐标转换, 看到一篇java的相关技术帖, 拿来做了修改 Ps: 坐标转换 ...

  8. GIS数据格式坐标转换(地球坐标WGS84、GCJ-02、火星坐标、百度坐标BD-09、国家大地坐标系CGCS2000)

    文章目录 前言 一.坐标系 1.地球坐标 (WGS84) 2.国测局坐标系(GCJ-02.火星坐标系) 3.百度坐标(BD-09) 4.国家大地2000坐标系(CGCS2000) 二.百度坐标系(BD ...

  9. 火星坐标转换成百度坐标

    前段时间开始接触百度地图,在业务需求的过程中会使用到导航的功能,给定一个目的地坐标,然后通过查找用户手机内已安装的地图导航软件进行导航,所以往往会遇到一个问题,你不可能确定每一个用户都会安装或使用百度 ...

最新文章

  1. 区块链100讲:智能合约审计指南
  2. python 数字转十六进制_在Python中将整数转换为十六进制
  3. .NetCore跨域
  4. SAP License:ERP到底能带给企业什么
  5. oracle无会话锁表,深入浅出oracle锁 原理篇 停止无反应的sql会话
  6. 旅游景点宣传画册PPT模板
  7. torch.stft()与librosa.stft()的对比
  8. idea切换工作空间_IntelliJIDEA使用技巧
  9. JVM——垃圾回收算法
  10. 当封号成为一种常态,网络营销人该何去何从?
  11. 罗马数字相加java_LeetCode题库 13罗马数字转整数(java)
  12. 即将发布的 Apache Spark 3.2 将内置 Pandas API
  13. Python项目:赛车
  14. POJ 2395 Out of Hay 最小生成树 Kruskal
  15. mt管理器逆向了解安卓----【mt管理器介绍】
  16. [CVE-2022-22965]Spring远程代码执行漏洞复现
  17. 优酷视频云技术解析-立哥技术
  18. EtherCAT 总线主站 FPGA 挂百兆网口串接伺服 ethercat 主站 FPGA verilog 代码 全部在 FPGA上实现,纯 Verilog 实现,无软核
  19. 破解 CentOS 7/8的 root 密码
  20. AT1278 Counting on a Triangle 题解

热门文章

  1. clipse中Access restriction: The type ‘XXX’ is not API 解决
  2. 个人信息保护呼吁“基本法”
  3. Java历程-初学篇 Day02变量,数据类型和运算符
  4. [20170302]什么是fuzzy.txt
  5. 分析JobInProgress中Map/Reduce任务分配
  6. Windows内存管理(3)--检查内存可用性,结构化异常处理 和 ASSERT
  7. Js中Array对象
  8. Vue中$nextTick的理解
  9. 三种方式实现轮播图功能
  10. ai人工智能的数据服务_从AI数据集中消除无意识的偏见