私はLocation Managerを使用しており、過去60秒間のユーザーの平均速度を計算しようとしています。ユーザーの平均速度を計算する最も簡単な方法は?
didUpdateLocations
が呼び出されると、毎秒ロケーションマネージャからユーザの速度が得られます。私はその速度を配列に追加します。
私の計画は、didUpdateLocations
に記録されたこの速度の配列からの平均速度を計算することです。
ただし、最初は配列が空です。 1秒ごとにデータが取り込まれますが、アレイにまだ60の速度がないのに、平均速度を計算したいと考えています。この場合、5秒後と5秒後などに記録された値を使用するだけで、平均速度はそれらの値を使用して計算されます。時間が経過すると、配列に値が設定され、最新の速度値が追加されると、最も古いものが配列から削除されます。
これを達成する簡単な方法はありますか?
宣言場所{ minLat =分(minLat、location.latitude) minLng =分(minLng、位置における 'VAR速度=アレイ()'ブレーク位置のための私の他のクラス 'に何かを.Longitude) maxLat = max(maxLat、location.latitude) maxLng = max(maxLng、location.longitude) ' 最後の2行でエラーが発生しました:"非関数型の値 'int'を呼び出すことはできません –
user2265192
@ user2265192あなたはおそらく 'max'と呼ばれる関数を持っています。' max'変数を 'maxSpeed'のようなものに変更してください。 – brimstone