zoukankan      html  css  js  c++  java
  • 百度地图常用2.0使用以及调用js

    /**
     * 生成一条路线
     * @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;
    }
  • 相关阅读:
    Dr.Watson
    得到当前操作系统的版本的
    屏蔽回车关闭对话框事件
    一个发邮件的类(用CDO实现)
    怎样配置SQL Server发送电子邮件
    无进程DLL木马的又一开发思路与实现
    Write AutoUpdating Apps with .NET and the Background Intelligent Transfer Service API
    WINDOWS编程入门一个初级问题的分析
    智能客户端技术总结(一)
    【.NET】C#.NET ADO.NET数据访问模型概述
  • 原文地址:https://www.cnblogs.com/Mockingjays/p/5606736.html
Copyright © 2011-2022 走看看