百度地图 通过坐标搜索地址并显示一定范围内的点集合

百度地图 通过坐标搜索地址并显示一定范围内的点集合_第1张图片效果图
效果:添加点标注-坐标搜索地址(逆地址解析)-形成一个范围圈-判断其余点是否在圈内

添加标注

  // 获取坐标值
                var latlon = $('.latlon').val().split(',');
                // 添加点标注
                var point = new BMap.Point(latlon[0], latlon[1]);
                marker = new BMap.Marker(point);
                map.addOverlay(marker);

地址解析

// 逆地址解析
            var geoc = new BMap.Geocoder();
            geoc.getLocation(point, function(rs){
                // console.log(rs)
                // 显示地址
                $('.local').html(rs.address)
            });

范围圈

// 获取圆半径
        var r = $('.radius').val() * 1000;
        // 创建以点为中心的圆
        circle = new BMap.Circle(point,r,
            {
                strokeColor:"#e61623", //线颜色
                strokeWeight:2, //线宽
                fillColor:"#f18900", // 填充色
                fillOpacity:'0.1',  // 填充透明度
            });
        map.addOverlay(circle);

判断

// 显示圆范围内的点
        for(var i = 0;i < points.length;i++){
            var result = BMapLib.GeoUtils.isPointInCircle(points[i], circle);
            if (result == true) {
                circleMarker = new BMap.Marker(points[i]);
                map.addOverlay(circleMarker);
            }
        }

完整代码




    
    
    
    

    
    地图展示


    
    
    
    当前位置:
    

你可能感兴趣的:(百度地图)