2016-09-19 7 views
1

私はこのiOSでGMSPolylineをゆっくりとスムーズに描画する方法は?

GMSMutablePath *path = [GMSMutablePath path]; 

    for (int i = 0; i <anotherArray.count; i++) { 

     NSString *string1 = [anotherArray2 objectAtIndex:i]; 
     NSString *string2 = [anotherArray objectAtIndex:i]; 
     [path addCoordinate:CLLocationCoordinate2DMake(string1.doubleValue,string2.doubleValue)]; 
    } 

     GMSPolyline *rectangle = [GMSPolyline polylineWithPath:path]; 
     rectangle.strokeColor = [UIColor blueColor]; 
     rectangle.map = mapView_; 
     rectangle.strokeWidth = 2.0f; 

しかし、私は、バックエンドサーバから取得していた場所のような場所の配列を使用してGoogleマップ上GMSPolylineを描画することができますよ。

私は10秒ごとに新しい場所を取得し、既存のパスに追加する必要があります。これらはすべて正常に動作しています。

しかし、私は既存のパスに新しい場所を追加するときに非常に高速に動いています。

原因パスの開始時にGMSMarkerがあり、ある場所から別の場所にジャンプするように見えています。

GMSMarkerをアニメーションするには、ゆっくりと1か所から別の場所に移動するにはどうすればよいですか?

答えて

0

これをチェックするtutorialGMSPolylineクラスを使用して地図上にルート線を描画する方法を説明しています。

はもっとこのようなものであるためにあなたのelseブロックを変更

:このrelated SO threadから

[CATransaction begin]; 
[CATransaction setAnimationDuration:2.0]; 
marker.position = coordindates; 
[CATransaction commit]; 

我々はGoogleマップをアニメーション化するためCore Animation を使用することができます。

作業サンプルについては、 アプリケーションの AnimatedCurrentLocationViewController.{c,m}を参照してください。

また、このSO postから、1pxの行幅を使用しないようにしてください。代わりに、4pxストローク幅を使用します。これはGitHub sampleで確認することもできます。

+0

詳細をお寄せいただきありがとうございます。 – Himanth

関連する問題