地图服务介绍
地图服务是指提供地图数据的接口
检索服务 SearchService
用于进行本地检索、周边检索等服务基本功能以异步方式将检索条件发送至服务器,通过您自定义的回调函数将结果返回,示例代码如下:
定义回调函数及检索选项
var SearchOptions={
complete:function(results){
var pois = results.detail.pois;
for(var i = 0,l = pois.length;i < l; i++){
var poi = pois[i];
latlngBounds.extend(poi.latLng);
var marker = new qq.maps.Marker({
map:map,
position: poi.latLng
});
marker.setTitle(i+1);
markers.push(marker);
}
map.fitBounds(latlngBounds);
},
pageIndex:1,
pageCapacity:10,
location:"北京"
}
创建类实例,并传入回调函数及检索选项
定义回调函数及检索选项
var searchService=new qq.maps.SearchService(SearchOptions);
searchService.search('银行');
以下演示在一矩形坐标范围区域内(北京西单)检索“酒店”
var southWest=new qq.maps.LatLng(39.936273,116.44004334);
var northEast=new qq.maps.LatLng(39.896775,116.35421264);
var region=new qq.maps.LatLngBounds(southWest,northEast);
ss.searchInBounds('酒店',region);
以下代码,示意在以某坐标为中心点,查找其2公里范围内的酒店
var SearchCenterLatlng=new qq.maps.LatLng(39.936273,116.44004334);
ss.searchNearBy('酒店',SearchCenterLatlng,2000);
详细类的方法、参数请点击 参考手册
地址定位 CityService
根据城市名称、经纬度、IP地址(支持自动获取用户IP)、电话区号获取城市信息本功能以异步方式将请求参数发给服务器,通过您自定义的回调函数将结果返回,示例代码如下:
配置回调
citylocation = new qq.maps.CityService({
map : map,
complete : function(results){
city.style.display = 'inline';
city.innerHTML = '所在位置: ' + results.detail.name;
map.setCenter(results.detail.latLng);
var marker = new qq.maps.Marker({
map:map,
position: results.detail.latLng
});
}
});
创建类实例
var cs=new qq.maps.CityService(callbacks);
cs.searchLocalCity();
根据指定城市名称查询城市信息
cs.searchCityByName('北京市');
使用指定经纬度查询城市信息
cs.searchCityByLatLng(new qq.maps.LatLng(39,116));
根据指定IP地址查询城市信息
cs.searchCityByIP('61.135.172.68');
根据指定电话区号查询城市信息
cs.searchCityByAreaCode('010');
地址解析 Geocoder
地址解析类用于在地址和经纬度之间进行转换的服务。 本功能以异步方式将检索条件发送至服务器,通过您自定义的回调函数将结果返回,示例代码如下:
配置回调
var callbacks={
complete:function(results){
map.setCenter(result.detail.location);
var marker = new qq.maps.Marker({
map:map,
position: result.detail.location
});
},
}
geocoder = new qq.maps.Geocoder(callbacks);
geocoder.getLocation("中国,北京,海淀区,海淀大街38号");
逆地址解析(经纬度到地名转换过程)
geocoder = new qq.maps.Geocoder({
complete:function(result){
alert('成功:'+result.detail.address);
}
});
var coord=new qq.maps.LatLng(39.987816,116.328327);
geocoder.getAddress(coord);
这篇文章对您解决问题是否有帮助?
已解决
未解决