关于ArcGis for javascript整合百度地图 天地图 高德地图进行搜索
1.ArcGis for javascript整合百度地图搜索
1.1.首先引入百度地图的api
<!-- 引入百度地图API -->
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=********"></script>
1.2.初始化百度地图搜索相关的实例
function initBDMAP() {
bdMap = new BMap.Map('myMap');
lon = 120.00000000; // 经度
lat = 30.00000000; // 纬度
bdMap.centerAndZoom(new BMap.Point(lon, lat), 11); // 根据经纬度实例化百度地图, 在进行搜索时, 会默认搜索经纬度所在的城市
const options = {
onSearchComplete(results) {
if (bdMapLocal.getStatus() === BMAP_STATUS_SUCCESS) {
// 运行到这里说明搜索成功, 搜索结果在results对象里面, 处理结果集
......
}
},
};
bdMapLocal = new BMap.LocalSearch(tdtMap, options); // 初始化百度地图搜索API, 将百度地图实例<bdMap>和回调函数<options>绑定到搜索API
}
1.3.调用搜索API进行搜索
bdMapLocal.search(param); // 当调用搜索API的search方法时, 会自动进行搜索, 并且自动进入回调函数
2.ArcGis for javascript整合天地图搜索
2.1.引入天地图API
<!-- 引入天地图提供地名搜索服务 -->
<script type="text/javascript" src="http://api.tianditu.com/api?v=4.0"></script>
2.2.初始化天地图的实例
function initTDTMAP() {
tdtMap = new T.Map('tdtMap');
// 设置显示地图的中心点和级别
lon = 120.00000000;
lat = 30.00000000;
tdtMap.centerAndZoom(new T.LngLat(lon, lat), 12);
const tdtConfig = {
pageCapacity: 50, // 一次最多能查询多少条数据
onSearchComplete: TdtLocalSearchResult, // 接收数据的回调函数
};
// 创建搜索对象
TdtLocalSearch = new T.LocalSearch(tdtMap, tdtConfig);
}
2.3.创建回调函数
function TdtLocalSearchResult(result) {
// 根据返回类型解析搜索结果
switch (parseInt(result.getResultType(), 10)) {
case 1:
// 解析点数据结果
parsingSearchResults(result.getPois());
break;
case 2:
// 解析其他点数结果
......
break;
......
default:
console.log('天地图搜索路名无结果');
}
}
2.4.处理结果集
function parsingSearchResults(tdtobj) {
if (tdtobj) {
// 处理结果集
for (let i = 0; i < tdtobj.length; i += 1) {
......
}
}
}
3.ArcGis for javascript整合高德地图搜索
3.1.引入高德地图API
<!-- 引入高德地图API -->
<script type="text/javascript" src="https://webapi.amap.com/maps?v=1.4.2&key=1f675cd5121e2db5ab8bc326d3913373"></script>
3.2.初始化高德地图
function initGDMAP() {
gdMap = new AMap.Map('myMap', {
resizeEnable: true,
});
}
3.3.创建搜索的方法以及函数的回调
function gdMapSearchPaging(roadPage, roadSize, param) {
AMap.service(['AMap.PlaceSearch'], () => {
placeSearch = new AMap.PlaceSearch({ // 构造地点查询类
pageSize: roadSize, // 分页查询的每页显示记录数
pageIndex: roadPage, // 分页查询的页码参数
city: '0571', // 城市编码<高德地图的搜索是根据城市编码进行搜索>
map: gdMap,
});
});
placeSearch.search(param, (status, result) => {
if (roadData.length > 0) {
for (let i = 0; i < 10; i += 1) {
// 处理结果集
......
}
}
});
}
关于ArcGis for javascript整合百度地图 天地图 高德地图进行搜索的更多相关文章
- arcgis api 3.x for js 入门开发系列十七在线天地图、百度地图、高德地图(附源码下载)
前言 关于本篇功能实现用到的 api 涉及类看不懂的,请参照 esri 官网的 arcgis api 3.x for js:esri 官网 api,里面详细的介绍 arcgis api 3.x 各个类 ...
- iOS打开百度地图、高德地图导航
1.判断手机里是否已经安装了百度地图或者高德地图: BOOL hasBaiduMap = NO; BOOL hasGaodeMap = NO; if ([[UIApplication sharedAp ...
- ios 一步一步学会自定义地图吹出框(CalloutView)-->(百度地图,高德地图,google地图)
前言 在 ios上边使用地图库的同学肯定遇到过这样的问题:吹出框只能设置title和subtitle和左右的view,不管是百度地图还是高德地图还是自带的 google地图,只提供了这四个属性,如果想 ...
- 百度地图和高德地图坐标系的互相转换 四种Sandcastle方法生成c#.net帮助类帮助文档 文档API生成神器SandCastle使用心得 ASP.NET Core
百度地图和高德地图坐标系的互相转换 GPS.谷歌.百度.高德坐标相互转换 一.在进行地图开发过程中,我们一般能接触到以下三种类型的地图坐标系: 1.WGS-84原始坐标系,一般用国际GPS纪录仪记 ...
- 在WPF中使用谷歌地图和高德地图
原文:在WPF中使用谷歌地图和高德地图 在桌面软件开发中可能会遇到这样的需求:显示地图. 常用的地图API有Google Map和高德地图.二者都提供了各种平台的API. 为了方便集成,本文使用Jav ...
- 百度地图、高德地图、Google地图等坐标系相关梳理
1.地理坐标系与投影坐标系 地理坐标系也就是球面坐标系,是将本不是椭球体的地球进行椭球体化,从而形成球面坐标体系,国际标准的地理坐标系就是WGS-84坐标系: 只不过各个国家为了反映该国家所在区域地球 ...
- Android笔记:百度地图与高德地图坐标转换问题
安卓项目使用了百度地图的定位SDK,web端使用的也是百度地图, 后来发现界面显示百度地图不如高德效果好,web改用高德地图,原本的百度地图坐标是可以直接使用的,由于高德和百度地图的坐标系不一致 要如 ...
- 百度地图和高德地图结合在web中的使用(二)
百度地图在web中的使用(二) 背景:在做一个关于地理位置字段时,初始位置使用百度地图获取时失败,获取的位置信息不准确,奈何产品说友商好使的啊,F12看后是采用的高德,所以在这采用高德地图获取初始位置 ...
- CAD数据分块,偏移校准,加载到百度地图、高德地图、谷歌等地图上
前面分享过一篇如何将CAD海量数据显示在百度地图上(百度地图Canvas实现十万CAD数据秒级加载),但是很多开发者在CAD数据提取时遇到了问题,所以接下来的文章将介绍如何将CAD数据提取. 准备软件 ...
随机推荐
- 【leetcode刷题笔记】Two Sum
Given an array of integers, find two numbers such that they add up to a specific target number. The ...
- Python 3 软件开发规范
Python 3 软件开发规范 参考链接 http://www.cnblogs.com/linhaifeng/articles/6379069.html#_label14 对每个目录,文件介绍. #= ...
- 操作系统原理2——OS结构
操作系统原理2——OS结构 计算机系统是由硬件系统和软件系统两部分组成, 操作系统是软件系统的一个组成部分,它是直接在硬件系统的基础上工作的,所以在研究操作系统之前,先必须对计算机系统的结构有一个 ...
- linux bash缓存
http://www.xuebuyuan.com/296675.html 在已经运行的系统中更改了某些以前存在于PATH环境变量所指明的目录中的程序的存放目录后可能出现No such file or ...
- 关于jvm中的常量池和String.intern()理解
1. 首先String不属于8种基本数据类型,String是一个对象. 因为对象的默认值是null,所以String的默认值也是null:但它又是一种特殊的对象,有其它对象没有的一些特性. 2. ne ...
- python的字符串操作函数之一览
s.strip(chars) s.find(x,start,end) s.index(x.start,end)#见上: s.format()#见上: s.partition(x)#见上: s.repl ...
- 仿联想商城laravel实战---4、验证(lavarel的表单验证如何使用)
仿联想商城laravel实战---4.验证(lavarel的表单验证如何使用) 一.总结 一句话总结: 验证规则和验证信息的数组:在控制器的方法中 1.注册页面中的用户名正确(比如是否重名,字段长度是 ...
- 常见ETL工具一览,你知多少?
这些年,几乎都与ETL打交道,接触过多种ETL工具.现将这些工具做个整理,与大家分享. 一 ETL工具[国外] 1. datastage点评:最专业的ETL工具,价格不菲,使用难度一般 下载地址:ft ...
- eclipse自动提示功能没了的解决办法
由于重新配置了环境,并且eclipse也是装的4.2的,今天用的时候发现了,居然没有自动提示功能,也就是当一个对象居然点不出他的相关方法.后来网上搜索了下,成功的 办法是. 1.我window-> ...
- python glances来监控linux服务器CPU 内存 IO使用
什么是 Glances? Glances 是一个由 Python 编写,使用 psutil 库来从系统抓取信息的基于 curses 开发的跨平台命令行系统监视工具. 通过 Glances,我们可以监视 ...