【愚公系列】2022年06月 微信小程序-地图的使用之面聚合

154 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第13天,点击查看活动详情

前言

地图基础属性:

属性类型默认值必填说明最低版本
longitudenumber中心经度1.0.0
latitudenumber中心纬度1.0.0
scalenumber16缩放级别,取值范围为3-201.0.0
min-scalenumber3最小缩放级别2.13.0
max-scalenumber20最大缩放级别2.13.0
markersArray.标记点1.0.0
coversArray.即将移除,请使用 markers1.0.0
polylineArray.路线1.0.0
circlesArray.1.0.0
controlsArray.控件(即将废弃,建议使用 cover-view 代替)1.0.0
include-pointsArray.缩放视野以包含所有给定的坐标点1.0.0
show-locationbooleanfalse显示带有方向的当前定位点1.0.0
polygonsArray.多边形2.3.0
subkeystring个性化地图使用的key2.3.0
layer-stylenumber1个性化地图配置的 style,不支持动态修改
rotatenumber0旋转角度,范围 0 ~ 360, 地图正北和设备 y 轴角度的夹角2.5.0
skewnumber0倾斜角度,范围 0 ~ 40 , 关于 z 轴的倾角2.5.0
enable-3Dbooleanfalse展示3D楼块2.3.0
show-compassbooleanfalse显示指南针2.3.0
show-scalebooleanfalse显示比例尺,工具暂不支持2.8.0
enable-overlookingbooleanfalse开启俯视2.3.0
enable-zoombooleantrue是否支持缩放2.3.0
enable-scrollbooleantrue是否支持拖动2.3.0
enable-rotatebooleanfalse是否支持旋转2.3.0
enable-satellitebooleanfalse是否开启卫星图2.7.0
enable-trafficbooleanfalse是否开启实时路况2.7.0
enable-poibooleantrue是否展示 POI 点2.14.0
enable-buildingboolean是否展示建筑物2.14.0
settingobject配置项2.8.2
bindtapeventhandle点击地图时触发,2.9.0起返回经纬度信息1.0.0
bindmarkertapeventhandle点击标记点时触发,e.detail = {markerId}1.0.0
bindlabeltapeventhandle点击label时触发,e.detail = {markerId}2.9.0
bindcontroltapeventhandle点击控件时触发,e.detail = {controlId}1.0.0
bindcallouttapeventhandle点击标记点对应的气泡时触发e.detail = {markerId}1.2.0
bindupdatedeventhandle在地图渲染更新完成时触发1.6.0
bindregionchangeeventhandle视野发生变化时触发,2.3.0
bindpoitapeventhandle点击地图poi点时触发,e.detail = {name, longitude, latitude}2.3.0
bindanchorpointtapeventhandle点击定位标时触发,e.detail = {longitude, latitude}2.13.0

polygon

指定一系列坐标点,根据 points 坐标数据生成闭合多边形

属性说明类型必填备注最低版本
dashArray边线虚线Array默认值 [0, 0] 为实线,[10, 10]表示十个像素的实线和十个像素的空白(如此反复)组成的虚线2.22.0
points经纬度数组array[{latitude: 0, longitude: 0}]2.3.0
strokeWidth描边的宽度number2.3.0
strokeColor描边的颜色string十六进制2.3.0
fillColor填充颜色string十六进制
zIndex设置多边形 Z 轴数值number2.3.0
level压盖关系string默认为 abovelabels2.14.0

一、面聚合

1.wxml

<map id="mapp" latitude="{{latitude}}" longitude="{{longitude}}" scale="16" 
	 show-compass="true"show-scale="true" 	
	 polygons="{{polygons}}">
</map>

2.js


Page({
  data: {
    polygons: [{
      strokeWidth: 1,
      strokeColor: '#000000',
      fillColor: '#ffffff',
      points: [
        {
          latitude: "23.08288402644847",
          longitude: "113.30218549997039"
        },
        {
          latitude: "23.085168159298544",
          longitude: "113.33830101347007"
        },
        {
          latitude: "23.046124888637255",
          longitude: "113.34326689639329"
        },
        {
          latitude: "23.04654030072217",
          longitude: "113.28683640541976"
        },
        {
          latitude: "23.081845770334308",
          longitude: "113.28299913608771"
        },
        {
          latitude: "23.083506975476055",
          longitude: "113.30286266433609"
        },
        {
          latitude: "23.08288402644847",
          longitude: "113.30218549997039"
        }
      ]
    }],
    latitude: 23.08288402644847,
    longitude: 113.30218549997039
  }
})


3.wxss

#mapp {
	height: 1000rpx; 
	width: 100%;
}

4.实际效果

在这里插入图片描述