将地图框缩放到边界框

时间:2014-08-29 06:05:58

标签: ios mapkit mapbox route-me

我有一个RMMapView的实例,它有一个路径路径注释。我需要获得整个路线的snapShot,因为我需要在其他地方使用UIImage。这是我的代码:

RMSphericalTrapezium trapezium = [self.mapView latitudeLongitudeBoundingBox];
[self.mapView zoomWithLatitudeLongitudeBoundsSouthWest:trapezium.southWest northEast:trapezium.northEast animated:NO];  
UIImage* image = [self.mapView takeSnapshot];

但是,图像仅包含终点注释,并且未适当缩放以包含完整路径(+开始注释和结束注释)。

这段代码有什么问题?如何正确设置缩放级别?

我使用mapbox-ios-sdk

1 个答案:

答案 0 :(得分:1)

以这种方式缩放只是移动到地图的边界框但是没有考虑任何注释(但是,整个地图不包含你的注释听起来很奇怪注释 - 我必须看到图像才能更好地理解)。

您可能想要的是迭代所有注释并创建包含所有注释的边界框。 RMAnnotation.m内的此代码可以帮助您在迭代地图注释时在其他地方重复使用它:

https://github.com/mapbox/mapbox-ios-sdk/blob/abe470a4764b586ca1dc915dd0da46eb0bdef7f9/MapView/Map/RMAnnotation.m#L210-L234