调用一个百度的api:var map = new BMap.Map("container"); // 创建地图实例
map.enableScrollWheelZoom(); //启用滚轮放大缩小;
map.addEventListener("click", function(e)
{
GetBusStation(116.384628,39.995211,1);
// console.log(bus_data);
});function GetBusStation(la,lo,i)
{
var mPoint = new BMap.Point(la , lo);
map.centerAndZoom(mPoint,15);
var circle = new BMap.Circle(mPoint,1000,{fillColor:"white", strokeWeight: 1 ,fillOpacity: 0.2, strokeOpacity: 0.3});
map.addOverlay(circle); //往地图上添加圆形覆盖物;
var local = new BMap.LocalSearch(map, {renderOptions: {map: map, autoViewport: false}});
var bounds = getSquareBounds(circle.getCenter(),circle.getRadius());
local.searchInBounds("公交站",bounds);
var SearchResult = new Array();
local.setSearchCompleteCallback(function(SearchResult)
{
console.log(local.getResults());
console.log(SearchResult.Bh[0].title);
});
// bus_data = SearchResult.Bh[0].title;
// console.log(bus_data);
// return bus_data;
}
function getSquareBounds(centerPoi,r)
{
var a = Math.sqrt(2) * r; //正方形边长
mPoi = getMecator(centerPoi);
var x0 = mPoi.x, y0 = mPoi.y;
var x1 = x0 + a / 2 , y1 = y0 + a / 2;//东北点
var x2 = x0 - a / 2 , y2 = y0 - a / 2;//西南点
var ne = getPoi(new BMap.Pixel(x1, y1)), sw = getPoi(new BMap.Pixel(x2, y2));
return new BMap.Bounds(sw, ne);
}
//根据球面坐标获得平面坐标。
function getMecator(poi){
return map.getMapType().getProjection().lngLatToPoint(poi);
}
//根据平面坐标获得球面坐标。
function getPoi(mecator){
return map.getMapType().getProjection().pointToLngLat(mecator);
}为啥我调用的话他老是报错,捣鼓了很久也没有解决,求解决,小弟不懂JS只想解决这个问题。
map.enableScrollWheelZoom(); //启用滚轮放大缩小;
map.addEventListener("click", function(e)
{
GetBusStation(116.384628,39.995211,1);
// console.log(bus_data);
});function GetBusStation(la,lo,i)
{
var mPoint = new BMap.Point(la , lo);
map.centerAndZoom(mPoint,15);
var circle = new BMap.Circle(mPoint,1000,{fillColor:"white", strokeWeight: 1 ,fillOpacity: 0.2, strokeOpacity: 0.3});
map.addOverlay(circle); //往地图上添加圆形覆盖物;
var local = new BMap.LocalSearch(map, {renderOptions: {map: map, autoViewport: false}});
var bounds = getSquareBounds(circle.getCenter(),circle.getRadius());
local.searchInBounds("公交站",bounds);
var SearchResult = new Array();
local.setSearchCompleteCallback(function(SearchResult)
{
console.log(local.getResults());
console.log(SearchResult.Bh[0].title);
});
// bus_data = SearchResult.Bh[0].title;
// console.log(bus_data);
// return bus_data;
}
function getSquareBounds(centerPoi,r)
{
var a = Math.sqrt(2) * r; //正方形边长
mPoi = getMecator(centerPoi);
var x0 = mPoi.x, y0 = mPoi.y;
var x1 = x0 + a / 2 , y1 = y0 + a / 2;//东北点
var x2 = x0 - a / 2 , y2 = y0 - a / 2;//西南点
var ne = getPoi(new BMap.Pixel(x1, y1)), sw = getPoi(new BMap.Pixel(x2, y2));
return new BMap.Bounds(sw, ne);
}
//根据球面坐标获得平面坐标。
function getMecator(poi){
return map.getMapType().getProjection().lngLatToPoint(poi);
}
//根据平面坐标获得球面坐标。
function getPoi(mecator){
return map.getMapType().getProjection().pointToLngLat(mecator);
}为啥我调用的话他老是报错,捣鼓了很久也没有解决,求解决,小弟不懂JS只想解决这个问题。
参数:results: LocalResult 或 Array<LocalResult>