Alf*_*rse 8 ios google-maps-sdk-ios
我正在开发iOS应用程序,包括GoogleMaps.GoogleMaps SDK for iOS的实施过程尚未完成.
但我想知道如何计算GMSCamera zoom以在地图上显示整条路线.
在Apple Map中,我们使用span,也许.但GoogleMaps SDK没有跨度.
请给我建议.
Ras*_*spu 18
实际上,在当前版本的SDK中,您可以使用fitBounds:
GMSCoordinateBounds *bounds = [[GMSCoordinateBounds alloc] initWithPath:yourPath];
//There are several useful init methods for the GMSCoordinateBounds!
GMSCameraUpdate *update = [GMSCameraUpdate fitBounds:bounds];
[mapView_ moveCamera:update];
Run Code Online (Sandbox Code Playgroud)
通过这种方式,你可以将数学运用到谷歌,我很确定他们真的很擅长.
这是一个可能有帮助的函数,因为它从“Google 兼容”的 MKMapView 计算缩放级别
- (NSInteger)getZoomLevel
{
MKMapView *map = (MKMapView *)self.mapView;
CLLocationDegrees longitudeDelta = map.region.span.longitudeDelta;
CGFloat mapWidthInPixels = map.bounds.size.width;
double zoomScale = longitudeDelta * 85445659.44705395 * M_PI / (180.0 * mapWidthInPixels);
double zoomer = 20 - log2(zoomScale);
if ( zoomer < 0 ) zoomer = 0;
return (NSInteger)zoomer;
}
Run Code Online (Sandbox Code Playgroud)
如果您可以获取坐标并将其传递进去,那么应该没问题。
| 归档时间: |
|
| 查看次数: |
7445 次 |
| 最近记录: |