最后更新时间:2025-03-21


基础视野操作


腾讯地图SDK的基础视野操作包含:

  1. 地图中心点
  2. 缩放级别
  3. 旋转角度
  4. Overlooking(倾斜)
  5. 视野动画操作

一、设置地图中心点

地图始终以中心点为准显示,可以通过调整中心点的坐标来移动地图的显示范围,示例代码如下:

// 将地图中心点移动到腾讯北京总部
[self.mapView setCenterCoordinate:CLLocationCoordinate2DMake(40.040219, 116.273348)];

还可以通过以下地图的 centerCoordinate 属性,实时获取当前地图的中心点坐标,示例代码如下:

// 获取地图中心点的坐标
CLLocationCoordinate2D centerCoordinate = self.mapView.centerCoordinate;

二、地图缩放级别

地图缩放级别相关属性如下:

属性 说明
CGFloat zoomLevel 地图的缩放级别,范围 [minZoomLevel, maxZoomLevel]
CGFloat minZoomLevel 最小缩放级别, 默认 minZoomLevel = 3
CGFloat maxZoomLevel 最大缩放级别, 默认 maxZoomLevel = 20

地图显示的默认缩放级别为13,可以通过以下方法来调整地图的缩放等级:

// 设置缩放级别为15
[self.mapView setZoomLevel:15];

通过minZoomLevel和maxZoomLevel可以限制地图的最小、最大缩放级别:

// 将地图缩放级别限制在 [11, 14]
[self.mapView setMinZoomLevel:11 maxZoomLevel:14];

注意:

  1. 如果设置了minZoomLevel和maxZoomLevel,手势操作地图缩放级别,将无法超过这个区间。
  2. 通过 setZoomLevel: 方法设置的缩放级别小于minZoomLevel或大于maxZoomLevel,则实际调整的级别就为minZoomLevel和maxZoomLevel。

三、旋转角度

旋转角度的范围是[0.f 360.f],单位为角度,以顺时针为正向。可以通过调用 setRotation: 方法来调整。示例代码如下:

// 调整地图旋转角度为180度
[self.mapView setRotation:180];

四、Overlooking(倾斜)

倾斜角度范围为[0.f, 45.f],单位为角度,可以通过调用 setOverlooking: 方法来调整。示例代码如下:

// 调整地图倾斜角度为30度
[self.mapView setOverlooking:30];

注: 自4.5.8版本起,地图俯最大仰角调整为75度,可通过以下接口来开启该功能:

- (void)enableAutoMaxOverlooking:(BOOL)enable

五、视野动画操作

腾讯地图SDK提供了动画形式过渡的视野操作,示例如下:

设置地图中心点:

[self.mapView setCenterCoordinate:CLLocationCoordinate2DMake(40.040219, 116.273348) animated:YES];

设置缩放级别:

[self.mapView setZoomLevel:15 animated:YES];

调整旋转角度:

[self.mapView setRotation:180 animated:YES];

调整倾斜:

[self.mapView setOverlooking:30 animated:YES];

六、常见问题

  1. 地图在缩放时默认是以地图的中心点,如何改为以点击的坐标为中心点进行缩放?

    地图在缩放时,默认是以地图中心点为准进行缩放。在SDK 4.3.4在mapView中提供了新的属性BOOL keepCenterDuringZoom,该属性默认为YES。设置为NO表示缩放以点击的坐标中心点为准进行缩放。

本页内容