/**
* 生成一条路线
* @param {Object} baiduMap 百度地图的 map对象
* @param {Object} lineColor 线路颜色
* @param {Object} startPoint 起点Point对象
* @param {Object} endPoint 结束点Point对象
*/
function searchRoadLine(baiduMap,lineColor,startPoint,endPoint){
//实例化一个驾车导航用来生成线路
var drv = new BMap.DrivingRoute(baiduMap,{
onSearchComplete : function(res){
if (drv.getStatus()== BMAP_STATUS_SUCCESS) {
var plan = res.getPlan(0);
var arrPois=[];
for (var j=0;j<plan.getNumRoutes();j++) {
var route=plan.getRoute(j);
arrPois=arrPois.concat(route.getPath());
}
//#17BF00 绿色
var polyline=new BMap.Polyline(arrPois,{strokeColor : lineColor});
baiduMap.addOverlay(polyline);
}
}
});
drv.search(startPoint, endPoint);
} /**实时路况的数组*/
var polylineArray = new Array();
/**数组长度*/
var paLength=0;
/**
* 生成实时路况
* @param {Object} baiduMap
* @param {Object} lineColor
* @param {Object} points
*/
function realRoadStatus(baiduMap,lineColor,points){
//实例化一个驾车导航用来生成线路
var drv = new BMap.DrivingRoute(baiduMap,{
onSearchComplete : function(res){
if (drv.getStatus()== BMAP_STATUS_SUCCESS) {
var plan = res.getPlan(0);
var arrPois=[];
for (var j=0;j<plan.getNumRoutes();j++) {
var route=plan.getRoute(j);
arrPois=arrPois.concat(route.getPath());
}
//#17BF00 绿色
var polyline=new BMap.Polyline(arrPois,{strokeColor : lineColor});
baiduMap.addOverlay(polyline);
polylineArray[paLength]=polyline;
paLength++;
}
}
});
for (var i=0;i<points.length-1;i++) {
drv.search(points[i],points[i+1]);
}
} /**
* 点集合生成一条折线
* @param {Object} baiduMap 百度的Map图层
* @param {Object} lineColor 折线的颜色
* @param {Object} points 点集合
*/
function searchPolylineArray(baiduMap,lineColor,points){
var polyline = new BMap.Polyline(points,{strokeColor:lineColor, strokeWeight:2, strokeOpacity:0.5});
baiduMap.addOverlay(polyline);
return polyline;
} /**
* 创建一个地图弹出框
* @param {Object} marker 点击Mark弹出对话框
* @param {Object} htmlContent 对话框的html
*/
function createMapWinInfo(marker,htmlContent){
var infoWindow = new BMap.InfoWindow(htmlContent);
marker.addEventListener("click", function(){
this.openInfoWindow(infoWindow);
});
} /**
* 创建一个地图弹出框带 标题栏
* @param {Object} marker 覆盖物
* @param {Object} width 信息栏的宽
* @param {Object} height 信息栏的高
* @param {Object} title 信息栏的主题
* @param {Object} htmlContent 主要内容
*/
function createMapWinInfoTitle(marker,width,height,title,htmlContent){
var opts = {
width : width, // 信息窗口宽度
height: height, // 信息窗口高度
title : title , // 信息窗口标题
enableMessage:false, //设置允许信息窗发送短息
}
var infoWindow = new BMap.InfoWindow(htmlContent, opts); // 创建信息窗口对象
marker.addEventListener("click", function(){
this.openInfoWindow(infoWindow); //开启信息窗口
});
} /**
* 创建一个标注
* @param {Object} baiduMap 百度地图
* @param {Object} imageUrl 图片的Url
* @param {Object} withed 图片的宽
* @param {Object} height 图片的高
* @param {Object} point Mark的位置
*/
function createMarker(baiduMap,imageUrl,withed,height,point){
var myIcon= new BMap.Icon(imageUrl,new BMap.Size(withed,height));
var marker = new BMap.Marker(point,{icon:myIcon});
baiduMap.addOverlay(marker);
return marker;
}
/**
* 通过经纬度创建一个标注
* @param {Object} baiduMap 百度地图
* @param {Object} imageUrl 图片的Url
* @param {Object} withed 图片的宽
* @param {Object} height 图片的高
* @param {Object} lgt Mark的经度
* @param {Object} lat Mark的纬度
*/
function createMarkerlgtlat(baiduMap,imageUrl,withed,height,lgt,lat){
var point = new BMap.Point(lgt,lat);
var myIcon= new BMap.Icon(imageUrl,new BMap.Size(withed,height));
var marker = new BMap.Marker(point,{icon:myIcon});
baiduMap.addOverlay(marker);
return marker;
} /**
* 创建一个点
* @param {Object} lgt 点的经度
* @param {Object} lat 点的纬度
*/
function createPoint(lgt,lat){
var point = new BMap.Point(lgt,lat);
return point;
}
/**
* 移除地图上的覆盖物
* @param {Object} baiduMap
* @param {Object} obj
*/
function removeMapOverlay(baiduMap,obj){
baiduMap.removeOverlay(obj);
} /**
* 移除地图上所有的覆盖物
* @param {Object} baiduMap
*/
function removeMapOverlays(baiduMap){
baiduMap.clearOverlays();
} /**
* 设置中心点
* @param {Object} baiduMap
* @param {Object} point 点或者城市名称
*/
function setBMapCenter(baiduMap,point){
baiduMap.setCenter(point);
} /**
* 初始化百度地图
* @param {Object} lgt 初始化坐标点的经度 纬度
* @param {Object} lat
*/
function createBMap(lgt,lat){
var baiduMap=new BMap.Map("allmap",{enableMapClick:false});//关闭底图可点功能
var point = new BMap.Point(lgt,lat);
baiduMap.centerAndZoom(point, 14);
baiduMap.enableScrollWheelZoom(true); //启动滚轮放大缩小功能
return baiduMap;
}
/**
* 初始化百度地图
* @param {Object} cityName 城市名称
*/
function createBMapCity(cityName){
var baiduMap=new BMap.Map("allmap",{enableMapClick:false});//关闭底图可点功能
baiduMap.centerAndZoom(cityName, 13);
baiduMap.enableScrollWheelZoom(true); //启动滚轮放大缩小功能
return baiduMap;
}

百度地图常用2.0使用以及调用js的更多相关文章

  1. Android 百度地图 SDK v3.0.0 (四) 引入离线地图功能

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37758097 一直觉得地图应用支持离线地图很重要啊,我等移动2G屌丝,流量不易, ...

  2. iOS第三方地图-百度地图常用功能使用(POI搜索,地理正反编码,定位,添加标注)

    百度地图官网: http://developer.baidu.com/map/index.php?title=iossdk 百度地图集成 1.引入相关包

  3. Android 百度地图 SDK v3.0.0 (四) 离线地图功能介绍

    转载请注明出处:http://blog.csdn.net/lmj623565791/article/details/37758097 一直认为地图应用支持离线地图非常重要啊.我等移动2G屌丝,流量不易 ...

  4. Android 百度地图 SDK v3.0.0 (三) 添加覆盖物Marker与InfoWindow的使用

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37737213 上篇博客已经实现了地图的定位以及结合了方向传感器用户路痴定位方向, ...

  5. Android 百度地图 SDK v3.0.0 (三) 加入覆盖Marker与InfoWindow使用

    转载请注明出处:http://blog.csdn.net/lmj623565791/article/details/37737213 上篇博客已经实现了地图的定位以及结合了方向传感器用户路痴定位方向, ...

  6. 获取ip ,百度地图坐标点 和 在 后台调用 url()

        protected  void getip()         {             string ips = HttpContext.Current.Request.UserHostA ...

  7. Android应用之——百度地图最新SDK3.0应用,实现最经常使用的标注覆盖物以及弹出窗覆盖物

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/yanglfree/article/details/33333413 一.概述 最新版的百度地图SDK ...

  8. Android 百度地图 SDK v3.0.0 (一)

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37729091 最近公司要把百度地图集成的项目中,于是我就研究了一天百度地图的SD ...

  9. android 百度地图v3.2.0获取实际地址

    百度地图升级到v3.2.0后,api发生挺大的变化的,但是下载的Demo却不是最新版本的. 在v3.2.0之前获取详细地址只要:option.setIsNeedAddress(true); 但是升级后 ...

随机推荐

  1. PTA基础编程题目集7-1厘米换算英尺英寸

    如果已知英制长度的英尺foot和英寸inch的值,那么对应的米是(foot+inch/12)×0.3048.现在,如果用户输入的是厘米数,那么对应英制长度的英尺和英寸是多少呢?别忘了1英尺等于12英寸 ...

  2. Go 入门 - 方法和接口

    方法和接口 方法的接受者 Go中没有类,取而代之的是在结构体上定义的方法 为了将方法(函数)绑定在某一类结构体上,我们在定义函数(方法)时引入"接受者"的概念. 方法接受者在它自己 ...

  3. Emgucv安装及使用

    Emgucv安装 最近有个客户联系我,希望我能够为他们做一个识别瓷砖花纹的软件.应用场景是这样的:现场会有一个摄像头去拍摄流水线上运输的瓷砖,如果检测这块瓷砖的花纹不符合要求,则需要给PLC或输出板卡 ...

  4. AtCoder Regular Contest 100 E - Or Plus Max

    一道很好的dp题 dp[K]存的是 i满足二进制1属于K二进制1位置 最大的两个Ai 这样dp[K]统计的两个数肯定满足(i | j) <= K 然后不断做 update(dp[i | (1&l ...

  5. 优龙FS2410开发板学习过程遇到问题总结

    以下的问题及其解决办法是基于优龙FS2410开发板,不定期更新 ============================================================= 开发学习环境 ...

  6. 苏州Uber优步司机奖励政策(8月31日至9月6日)

    当周最新司机奖励(8月31日至9月6日) 滴滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http: ...

  7. oradebug 的学习 一

        说明 oradebug主要是给oracle支持人员使用的,尽管很早便有,但oracle官网很少有记载.他是个sql*plus命令行工具,有sysdba的权限就可以登入,无需特别设置.他可以被用 ...

  8. libevent学习三(Getting an event_base)

    1.一个event_base持有了一系列的事件,并监控和决定哪些事件需要激活, 2.每一个event_base背后都有一个支持其工作的方法(诸如select,poll,epoll,kquene...) ...

  9. hdu1175连连看(dfs+细节)

    连连看 Time Limit: 20000/10000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submi ...

  10. hdu2099整除的尾数(暴力 省赛)

    整除的尾数 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...