2
drawMapRect:zoomScale:inContext:
標準の[0-20]ズームレベルに基づいてGoogle Mapsなどのマッピングプラットフォームで使用する描画ルールを作成したいと思いますが、MKZoomScaleをその縮尺に変換する式が見つからないようです。何かお手数ですか?MKZoomScaleを標準[0-20]ズームレベルに変換するにはどうすればよいですか?
drawMapRect:zoomScale:inContext:
標準の[0-20]ズームレベルに基づいてGoogle Mapsなどのマッピングプラットフォームで使用する描画ルールを作成したいと思いますが、MKZoomScaleをその縮尺に変換する式が見つからないようです。何かお手数ですか?MKZoomScaleを標準[0-20]ズームレベルに変換するにはどうすればよいですか?
MKMapView
@interface MKMapView (Additions)
- (double)zoomLevel;
@end
@implementation MKMapView (Additions)
- (double)zoomLevel {
double totalTilesAtMaxZoom = MKMapSizeWorld.width/256.0;
NSInteger zoomLevelAtMaxZoom = log2(totalTilesAtMaxZoom);
return MAX(0, zoomLevelAtMaxZoom + log2f(self.zoomScale));
}
@end
にこのカテゴリを試してみてください