delphi 调用百度地图WEBSERVICE转换GPS坐标
百度地图的API说明
使用方法
第一步,申请密钥(ak),作为访问服务的依据;
第二步,按照请求参数说明拼写发送http请求的url,注意需使用第一步申请的ak;
第三步,接收返回的数据(json或者xml格式)。
注:本接口支持回调。
服务地址
http://api.map.baidu.com/geoconv/v1/?
组成说明:
- 域名:http://api.map.baidu.com
- 服务名:geoconv
- 服务版本号:v1
服务参数说明
参数 | 含义 | 取值范围 | 是否必须 | 默认取值 |
---|---|---|---|---|
coords | 源坐标 |
格式:经度,纬度;经度,纬度… 限制:最多支持100个 格式举例: 114.21892734521,29.575429778924; 114.21892734521,29.575429778924 |
是 | 无 |
ak | 开发者密钥 | 是 | 无 | |
sn | 用户的权限签名 | 否 | 若用户所用ak的校验方式为sn校验时该参数必须。 (sn生成算法) | |
from | 源坐标类型 |
取值为如下: 1:GPS设备获取的角度坐标; 2:GPS获取的米制坐标、sogou地图所用坐标; 3:google地图、soso地图、aliyun地图、mapabc地图和amap地图所用坐标 4:3中列表地图坐标对应的米制坐标 5:百度地图采用的经纬度坐标 6:百度地图采用的米制坐标 7:mapbar地图坐标; 8:51地图坐标 |
否 | 默认为1,即GPS设备获取的坐标 |
to | 目的坐标类型 |
有两种可供选择:5、6。 5:bd09ll(百度经纬度坐标), 6:bd09mc(百度米制经纬度坐标); |
否 | 默认为5,即bd09ll(百度坐标) |
output | 返回结果格式 |
json或者xml |
否 | json |
返回值说明
名称 | 类型 | 含义 | 取值范围 | |
---|---|---|---|---|
status | init | 状态码 | 正常0,异常非0,详细见状态码说明 | |
result | json或者xml数组 | 转换结果 | 与输入顺序一致 | |
x | float | 横坐标 | ||
y | float | 纵坐标 |
delphi 的调用过程
procedure GpsToBaiDu(Gx,Gy:real;var Bx,By:real);
const
urs1='http://api.map.baidu.com/geoconv/v1/?coords=';
urs2='&&ak=你的秘钥';//两个&&
var
url:string;
ts:Tstringstream;
jo: ISuperObject;
xy: TSuperArray;
begin
url:=urs1+floattostr(Gx)+','+floattostr(Gy)+urs2;
ts:=Tstringstream.Create;
try
IdHTTP1.Get(url,ts);
ts.Position:=0;
jo:=so(ts.DataString);
xy:=jo['result'].AsArray;
jo:=so(xy[0].AsString);
Bx:=jo['x'].AsDouble;
By:=jo['y'].AsDouble;
except //转换失败
Bx:=gx;
By:=gy;
exit;
end;
end;
delphi 调用百度地图WEBSERVICE转换GPS坐标的更多相关文章
- delphi 调用百度地图WEBSERVICE转换GPS坐标 转
http://www.cnblogs.com/happyhills/p/3789864.html 百度地图的API说明 使用方法 第一步,申请密钥(ak),作为访问服务的依据: 第二步,按照请求参 ...
- delphi 调用百度地图api
一.调用javascript的方法 两种: 第一种:采用自编函数的方法 function ExecuteJavaScript(WebBrowser:TWebBrowser; Code: string) ...
- 教程-Delphi调用百度地图API(XE8+WIN7)
unit U_map; interface //---------------------------------------------------// //----------COPY BY 无言 ...
- Delphi XE6 通过JavaScript API调用百度地图
参考昨天的内容,有朋友还是问如何调用百度地图,也是,谁让咱都在国内呢,没办法,你懂的. 首先去申请个Key,然后看一下百度JavaScript的第一个例子:http://developer.baidu ...
- 调用百度地图API的总结
因为项目要用到百度地图,所以先摸索了一下,各种功能官方都有文档,点击可查看,文章的话我就直接写我用到的功能例子了,要用可以直接复制粘贴~ 一.主要涉及到的几个接口(先申请密钥): 1.技术一:坐标转换 ...
- Android中调用百度地图
一.调用百度地图 --第一种方法 1.下载百度地图SDK SDK可以拆分下载,需要使用那一部分功能就下载相应包含的SDK,如下图 核心的的jar 和so包,放在工程中的libs目录下 2.申请key ...
- C#的百度地图开发(三)依据坐标获取位置、商圈及周边信息
原文:C#的百度地图开发(三)依据坐标获取位置.商圈及周边信息 我们得到了百度坐标,现在依据这一坐标来获取相应的信息.下面是相应的代码 public class BaiduMap { /// < ...
- 在XAF(ASP.NET)中以ListEditor的形式调用百度地图API
因为项目需要,在系统中使用地图显示设备的地理位置.考虑过ArgGIS,Bing和Baidu地图.本来想用ArgGIS,看教程嫌麻烦.所以还是用Web地图吧.Bing的话还要申请个key,没心情.百度地 ...
- 调用百度地图Api实现的查看地图功能的小插件
1. 功能 bMap.js 可根据地理位置调用出百度地图,采用弹出框形式 2.用法 var city = '青岛市'; var address = '香港中路'; bMap.init({ city : ...
随机推荐
- linux使用收集
Centos7 命令 # 查询正运行的java进程,建议使用jps,使用ps会将tail也显示出来 jps -lvm | grep '/home/chencye/tomcat/apache-tomca ...
- BZOJ4358:permu
浅谈\(K-D\) \(Tree\):https://www.cnblogs.com/AKMer/p/10387266.html 题目传送门:https://lydsy.com/JudgeOnline ...
- 如何用windbg分析内存泄露
1. 必须在命令行中设置为要分析的进程打开用户堆栈信息:C:\Program Files\Debugging Tools for Windows (x64)>gflags.exe -i ...
- 解决 No module named PyQt5.QtWebKitWidgets
原因:在 PyQt 5.6(+) 版本中, 新增 QtWebEngineWidgets 代替QtWebKitWidgets. 示例代码:#coding: utf-8 import sysfrom Py ...
- Azure上每个VM多个IP地址
Azure的每个VM都有多种IP地址,包括DIP.VIP和PIP.具体如下: DIP地址是在VM里能够看到的IP地址,即私网地址:PIP地址是这个VM关联的公网IP地址,即公网地址:VIP地址是负载均 ...
- 网络监控之一:ss(Socket Statistics)
ss是Socket Statistics的缩写. 顾名思义,ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容.但ss的优势在于它能够显示更多更详细的有关TCP和连接状态的 ...
- mybatis 学习四 (上)resutlMap
SQL 映射XML 文件是所有sql语句放置的地方.需要定义一个workspace,一般定义为对应的接口类的路径.写好SQL语句映射文件后,需要在MyBAtis配置文件mappers标签中引用,例如: ...
- 函数指针的应用学习Demo
学习函数指针的应用 ,简单demo #include "stdafx.h" #include "SubClass.h"; //函数指针 typedef int ...
- Flash 零日漏洞复现(CVE-2018-4878)
项目地址:https://github.com/Sch01ar/CVE-2018-4878.git 影响版本为:Adobe Flash Player <= 28.0.0.137 攻击机器IP:1 ...
- Winsock 传输文件
文件传输的原理:发送方把文件读到socket发送端缓冲区中,接收方把socket接收端缓端冲区中的数据写到一个新文件中.当然了,大文件需要循环读写! 服务器端为发送端: #include " ...