1

メートルをマップビュー領域に変換する方法を探しています。

CLLocationhorizontalAccuracyは double で、メートル単位の精度を表します。とを持つ を取りregionThatFits:ます。メートルを経度/緯度スパンに変換するにはどうすればよいですか?MKCoordinateRegionspanlongitudeDeltalatitudeDelta

4

1 に答える 1

2

答えが見つかりました。緯度 1 度は約 111 キロメートル、つまり 111120 メートルに相当するようです。

- (MKCoordinateRegion)regionForAccuracyOfLocation:(CLLocation *)location
{
    CLLocationDegrees spanInDegrees = (CLLocationDegrees) (location.horizontalAccuracy / 222240);

    MKCoordinateSpan span = MKCoordinateSpanMake(spanInDegrees, spanInDegrees) ;
    CLLocationCoordinate2D coordinate = location.coordinate;
    MKCoordinateRegion region = MKCoordinateRegionMake(coordinate, span);

    return region;
}
于 2011-05-02T08:43:33.453 に答える