2016-07-25 12 views
0

申し訳ありませんが、私の英語は間違っていました。Google Maps API for IOSを使用したエリア境界座標

GoogleマップAPIを使用してエリアポリゴンを描画するためのエリア境界緯度/経度を取得することは可能ですか?

これを使用して、MKMapviewにオーバーレイを描画する必要があります。

提案が必要です。

ありがとうございます。

おかげで、 Chaitanya

答えて

0

はい、地理的、iOS用GoogleプレイスAPIは、場所の名前や住所など、場所に関する豊富な情報、とあなたのアプリを提供し、Google Places APIを使って緯度/経度を取得することが可能ですロケーションは緯度/経度座標として指定されます。それ以外にも、overlaysを使用して地図の広い部分にコンテンツをレイヤーすることができます。オーバーレイオブジェクトは、MKOverlayプロトコルに準拠するオブジェクトです。オーバーレイオブジェクトは、オーバーレイの形状とサイズ、およびマップ上の位置を指定するために必要なポイントを含むデータオブジェクトです。オーバーレイは、円、矩形、マルチセグメント線、単純または複雑なポリゴンなどの図形を表すことができます。独自のカスタムオーバーレイを定義して、他の図形を表すこともできます。

注:のiOS 7とOS X v10.9で

以降、オーバーレイのプレゼンテーションがMKOverlayRendererクラスのインスタンスであるoverlay rendererオブジェクトによって処理されます。レンダラの仕事は、地図ビューで表示するように求められたときにオーバーレイのコンテンツを画面に描画することです。たとえば、バスルートを表すシンプルなオーバーレイがある場合は、ポリラインレンダラを使用してバスのルートをトレースする線分を描画できます。また、各バス停の場所にバスルートとアイコンの両方を描画するカスタムレンダラーを定義することもできます。 overlaysを指定する場合は、地図の特定のレベルに追加して、他の種類の地図コンテンツの上または下にレンダリングすることができます。以前は、iOS 7に、 が少ない デクスターDatul
デクスターDatul 13:07を表示するオーバーレイ今日 MKOverlayViewクラスのインスタンスであるオーバーレイビューを使用して、画面上に描かれた再。

マップインターフェイスを設定するときに、いつでもオーバーレイオブジェクトを追加できます。マップビューは、各オーバーレイオブジェクト内のデータを使用して、対応するオーバーレイビューを画面上に表示する必要があるかどうかを判断します。オーバーレイが画面上を移動すると、マップビューはデリゲートに対応するオーバーレイレンダラーの作成を依頼します。

+0

感謝を。この部分を実装し、座標を取得するために必要なポリゴンを表示しました。 Google APIを使用してそれらを取得できますか?データ部分と詰まって実装が完了しました。 –

0

、GoogleのAPIを使用した:ジオコーダを使用して

-(CLLocationCoordinate2D)getLatLongFromAddress:(NSString*) addressStr 
{ 
    double latitude = 0, longitude = 0; 
    NSString *esc_addr = [addressStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; 
    NSString *req = [NSString stringWithFormat:@"http://maps.google.com/maps/api/geocode/json?sensor=false&address=%@", esc_addr]; 
    NSString *result = [NSString stringWithContentsOfURL:[NSURL URLWithString:req] encoding:NSUTF8StringEncoding error:NULL]; 

    if (result) 
    { 
     NSScanner *scanner = [NSScanner scannerWithString:result]; 
     if ([scanner scanUpToString:@"\"lat\" :" intoString:nil] && [scanner scanString:@"\"lat\" :" intoString:nil]) 
     { 
      [scanner scanDouble:&latitude]; 
      if ([scanner scanUpToString:@"\"lng\" :" intoString:nil] && [scanner scanString:@"\"lng\" :" intoString:nil]) 
      { 
       [scanner scanDouble:&longitude]; 
      } 
     } 
    } 

    CLLocationCoordinate2D center; 
    center.latitude = latitude; 
    center.longitude = longitude; 
    return center; 
} 

:対応するためのdatul

CLGeocoder *geocoder = [[CLGeocoder alloc] init]; 

    [geocoder geocodeAddressString:address completionHandler:^(NSArray *placemarks, NSError *error) 
    { 
     if(!error) 
     { 
      if([placemarks count] > 0) 
      { 
       CLPlacemark *placemark = [placemarks objectAtIndex:0]; 
       CLLocation *location = placemark.location; 
       CLLocationCoordinate2D coordinate = location.coordinate; 
      } 
     } 
    }]; 
+0

これを使用して、場所は取得できますが、エリアは取得できません。たとえば、テキサス州で利用できる「ダラス」を選択するとします。ポリゴンを描画するための「テキサス」境界(座標系)を取得できますか?応答してくれてありがとう –

関連する問題