/**
* 生成一条路线
* @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. 汇编中resb这样的指令是什么意思?

    转载下来,方便以后查看 原作网址:http://blog.csdn.net/m1j2t3/article/details/5681657 汇编中resb这样的指令是什么意思? 还有我在汇编程序中看到这 ...

  2. extjs+MVC4+PetaPoco+AutoFac+AutoMapper后台管理系统(附源码)

    前言 本项目使用的开发环境及技术列举如下:1.开发环境IDE:VS2010+MVC4数据库:SQLServer20082.技术前端:Extjs后端:(1).数据持久层:轻量级ORM框架PetaPoco ...

  3. c++动态库封装及调用(2、windows下动态库创建)

    DLL即动态链接库(Dynamic-Link Libaray)的缩写,相当于Linux下的共享对象.Windows系统中大量采用了DLL机制,甚至内核的结构很大程度依赖与DLL机制.Windows下的 ...

  4. 【Hadoop】Seondary NameNode不是备份NameNode!!

    昨天和舍友聊天时无意中提起Secondary NameNode,他说这是备用NameNode.我当时就有点疑惑..之后查阅了相关资料和博客,算是基本理解了什么是Secondary NameNode. ...

  5. redis外部访问

    1.redis的搭建这里就不做描述的了,可以参考我的另外一个博客. http://www.cnblogs.com/ll409546297/p/6993778.html 2.说明一下我们在其他服务器上面 ...

  6. maven的两种打包方式

    1.maven目前在web上面的使用方式很普遍,而打包的方式也存在很多方式 2.因为涉及一个项目调用另外一个项目的包,并将另外一个项目打成jar的形式便于管理 3.maven打包第一种方式: 将项目检 ...

  7. Linux 下获取本机IP

    http://blog.csdn.net/K346K346/article/details/48231933 int main () { /* struct ifaddrs *ifap, *ifa; ...

  8. Fat Jar - Myeclipse插件安装使用方法- 完美解决

    Eclipse可以安装一个叫Fat Jar的插件,用这个插件打包非常方便,Fat Jar的功能非常强大. 工具/原料 Eclipse Kepler Fat Jar 方法/步骤 1 Fat Jar功能非 ...

  9. VS Help Viewer 显示内容为HTML源码的问题

    万恶的IE10 为了学习,安装了一套Windows Server 2012+SQL 2012+VS 2012的环境,整体感觉还不错,只是在使用Help Viewer查看帮助的时候,发现显示内容居然为H ...

  10. InnoDB锁冲突案例演示

      Preface       As we know,InnoDB is index organized table.InnoDB engine supports row-level lock bas ...