基础地图类型设置(切换) 地图SDK提供了3种预置的地图类型,包括普通地图、卫星图、空白地图。另外提供了2种常用图层实时路况图以及百度城市热力图。 百度地图SDK为您提供了3种类型的地图资源(普通矢量地图、卫星图和空白地图),BMKMapType提供图层类型常量,详细如下:
类型名称 |
说明 |
---|---|
BMKMapTypeStandard | 标准地图(包含3D地图) |
BMKMapTypeSatellite | 卫星地图 |
BMKMapTypeNone | 空白地图 |
开发者可以利用BMKMapView中的setMapType方法来设置地图类型,下面做简单展示。
标准地图
基础的道路地图。显示道路、建筑物、绿地以及河流等重要的自然特征。
设置标准地图的代码如下:
//切换为标准地图 [_mapView setMapType:BMKMapTypeStandard];
//切换为标准地图 mapView?.mapType = BMKMapType.standard
标准地图效果如下图:
卫星地图
设置卫星地图的代码如下:
//切换为卫星地图 [_mapView setMapType:BMKMapTypeSatellite];
//切换为卫星地图 mapView?.mapType = BMKMapType.satellite
卫星地图效果如下图:
空白地图
设置空白地图的代码如下:
//设置地图为空白类型 [_mapView setMapType:BMKMapTypeNone];
//设置地图为空白类型 mapView?.mapType = BMKMapType.none
空白地图效果如下图:
使用空白地图, 基础地图将不会被渲染。在地图类型中设置为BMKMapTypeNone,将不会使用流量下载基础地图图层。支持叠加任何覆盖物。
适用场景:与瓦片图层(tileOverlay)一起使用,节省流量,提升自定义瓦片图下载速度。如果您对自定义瓦片图的使用感兴趣,请参考BMKTileLayer和BMKTileLayerView两个以及Demo中关于瓦片图的详细使用说明,请到产品下载页面下载Demo。 瓦片图效果如下图:
实时路况图
全国范围内已支持绝大部分城市实时路况查询。标准地图和卫星地图,均支持叠加实时路况图。路况图依据实时路况数据渲染,开启实时路况的核心代码如下:
//打开实时路况图层 [_mapView setTrafficEnabled:YES];
//打开实时路况图层 mapView?.isTrafficEnabled = true
关闭实时路况的核心代码如下:
//关闭实时路况图层 [_mapView setTrafficEnabled:NO];
//关闭实时路况图层 mapView?.isTrafficEnabled = false
路况图可以设置按钮,按需打开或者关闭实时路况图。 路况图果如下图:
百度城市热力图是百度基于强大的地理位置大数据,根据实时的人群分布密度和变化趋势,用热力图的形式展现给广大开发者。 百度城市热力图的使用方式和实时路况图类似,只需要简单的接口调用,即可在地图上展现样式丰富的热力图层。
注意:只有在地图层级介于11-20级时,可显示城市热力图。
在地图上开启百度城市热力图的核心代码如下:
//打开百度城市热力图图层(百度自有数据) [_mapView setBaiduHeatMapEnabled:YES]; //关闭百度城市热力图图层(百度自有数据) [_mapView setBaiduHeatMapEnabled:NO];
//打开百度城市热力图图层(百度自有数据) mapView?.isBaiduHeatMapEnabled = true //关闭百度城市热力图图层(百度自有数据) mapView?.isBaiduHeatMapEnabled = false
百度城市热力图效果如下图: