高德地图只显示某个省份

实现效果:
在这里插入图片描述

<!DOCTYPE HTML>
<html>
<head>
<meta name="viewport" content="width=device-width initial-scale=1.0 maximum-scale=1.0 user-scalable=0">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>区域掩模</title>
<style>
body,html,#container{ margin:0;width: 100%;height: 100%}
</style>
</head>
<body>
<div id="container"></div>
<script language="javascript" src="https://webapi.amap.com/maps?v=1.4.14&key=de45c1a0e7ea44bea49388cea9cca2f7&plugin=AMap.DistrictSearch"></script> 
<script language="javascript">

    var opts = {
        subdistrict: 0,
        extensions: 'all',
        level: 'province'
    };
    //利用行政区查询获取边界构建mask路径
    //也可以直接通过经纬度构建mask路径
    var district = new AMap.DistrictSearch(opts);
    district.search('青海省', function(status, result) {
        var bounds = result.districtList[0].boundaries;
        var mask = []
        for(var i =0;i<bounds.length;i+=1){
            mask.push([bounds[i]])
        }
        var map = new AMap.Map('container', {
            mask:mask,
            center:[95.77,36.62],
            viewMode:'3D',
            zoom:5,
			mapStyle: 'amap://styles/021981e1781074e215441507a954df4b', //设置地图的显示样式
        });
        //添加高度面
        var object3Dlayer = new AMap.Object3DLayer({zIndex:100});
        map.add(object3Dlayer)
        var height = -8000;
        var color = '#red';
        var wall = new AMap.Object3D.Wall({
            path:bounds,
            height:height,
            color:color
        });
        wall.transparent = true
        object3Dlayer.add(wall)
        //添加描边
        for(var i =0;i<bounds.length;i+=1){
            new AMap.Polyline({
                path:bounds[i],
                strokeColor:'#3078AC',
                strokeWeight:3,
                map:map
            })
        }
    });
    </script>
</body>
</html>

二,只显示某个省份简单写法

代码:

<!DOCTYPE HTML>
<html>
<head>
<meta name="viewport" content="width=device-width initial-scale=1.0 maximum-scale=1.0 user-scalable=0">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>区域掩模</title>
<style>
body,html,#container{ margin:0;width: 100%;height: 100%}
</style>
</head>
<body>
<div id="container"></div>
<script language="javascript" src="https://webapi.amap.com/maps?v=1.4.14&key=de45c1a0e7ea44bea49388cea9cca2f7&plugin=AMap.DistrictSearch"></script> 
<script language="javascript">

    var opts = {
        subdistrict: 0,
        extensions: 'all',
        level: 'province'
    };
    //利用行政区查询获取边界构建mask路径
    //也可以直接通过经纬度构建mask路径
    var district = new AMap.DistrictSearch(opts);
    district.search('青海省', function(status, result) {
        var bounds = result.districtList[0].boundaries;
        var mask = []
        for(var i =0;i<bounds.length;i+=1){
            mask.push([bounds[i]])
        }
        var map = new AMap.Map('container', {
            mask:mask,
            center:[95.77,36.62],
            viewMode:'3D',
            zoom:5
        });
        //添加描边
        for(var i =0;i<bounds.length;i+=1){
            new AMap.Polyline({
                path:bounds[i],
                strokeColor:'#3078AC',
                strokeWeight:20,
                map:map
            })
        }
    });
    </script>
</body>
</html>

直接新建个html,把上述代码复制进去,然后chrome浏览器打开据可以了。
如果不行的话,就是高德地图的key,你得用你自己的。
没有自己的key,就需要在高德这里注册这个key:https://console.amap.com/dev/key/app
另外,因为这里用了获取省份边界的插件,所以是需要这个plugin的:
在这里插入图片描述

  • 0
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 12
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值