|
9 | 9 | // |
10 | 10 |
|
11 | 11 | #import "SVGeocoder.h" |
| 12 | +#import <MapKit/MapKit.h> |
12 | 13 |
|
13 | 14 | #define kSVGeocoderTimeoutInterval 20 |
14 | 15 |
|
@@ -72,13 +73,7 @@ + (SVGeocoder *)geocode:(NSString *)address completion:(SVGeocoderCompletionHand |
72 | 73 | return geocoder; |
73 | 74 | } |
74 | 75 |
|
75 | | -+ (SVGeocoder *)geocode:(NSString *)address bounds:(MKCoordinateRegion)bounds completion:(SVGeocoderCompletionHandler)block { |
76 | | - SVGeocoder *geocoder = [[self alloc] initWithAddress:address bounds:bounds completion:block]; |
77 | | - [geocoder start]; |
78 | | - return geocoder; |
79 | | -} |
80 | | - |
81 | | -+ (SVGeocoder *)geocode:(NSString *)address region:(NSString *)region completion:(SVGeocoderCompletionHandler)block { |
| 76 | ++ (SVGeocoder *)geocode:(NSString *)address region:(CLRegion *)region completion:(SVGeocoderCompletionHandler)block { |
82 | 77 | SVGeocoder *geocoder = [[self alloc] initWithAddress:address region:region completion:block]; |
83 | 78 | [geocoder start]; |
84 | 79 | return geocoder; |
@@ -108,23 +103,15 @@ - (SVGeocoder*)initWithAddress:(NSString*)address completion:(SVGeocoderCompleti |
108 | 103 | } |
109 | 104 |
|
110 | 105 |
|
111 | | -- (SVGeocoder*)initWithAddress:(NSString *)address bounds:(MKCoordinateRegion)region completion:(SVGeocoderCompletionHandler)block { |
| 106 | +- (SVGeocoder*)initWithAddress:(NSString *)address region:(CLRegion *)region completion:(SVGeocoderCompletionHandler)block { |
| 107 | + MKCoordinateRegion coordinateRegion = MKCoordinateRegionMakeWithDistance(region.center, region.radius, region.radius); |
112 | 108 | NSMutableDictionary *parameters = [NSMutableDictionary dictionaryWithObjectsAndKeys: |
113 | 109 | address, @"address", |
114 | 110 | [NSString stringWithFormat:@"%f,%f|%f,%f", |
115 | | - region.center.latitude-(region.span.latitudeDelta/2.0), |
116 | | - region.center.longitude-(region.span.longitudeDelta/2.0), |
117 | | - region.center.latitude+(region.span.latitudeDelta/2.0), |
118 | | - region.center.longitude+(region.span.longitudeDelta/2.0)], @"bounds", nil]; |
119 | | - |
120 | | - return [self initWithParameters:parameters completion:block]; |
121 | | -} |
122 | | - |
123 | | - |
124 | | -- (SVGeocoder*)initWithAddress:(NSString *)address region:(NSString *)regionString completion:(SVGeocoderCompletionHandler)block { |
125 | | - NSMutableDictionary *parameters = [NSMutableDictionary dictionaryWithObjectsAndKeys: |
126 | | - address, @"address", |
127 | | - regionString, @"region", nil]; |
| 111 | + coordinateRegion.center.latitude-(coordinateRegion.span.latitudeDelta/2.0), |
| 112 | + coordinateRegion.center.longitude-(coordinateRegion.span.longitudeDelta/2.0), |
| 113 | + coordinateRegion.center.latitude+(coordinateRegion.span.latitudeDelta/2.0), |
| 114 | + coordinateRegion.center.longitude+(coordinateRegion.span.longitudeDelta/2.0)], @"bounds", nil]; |
128 | 115 |
|
129 | 116 | return [self initWithParameters:parameters completion:block]; |
130 | 117 | } |
|
0 commit comments