Lat_to_Travel = CurLat - TargetLat
Long_to_Travel = CurLong - TargetLong
Time_to_Travel = ETA - now
距離が比較的小さい場合は、これらの 3 つの次元(*)で直線的な進行を仮定しても問題ないでしょう。次に、表示する中間位置の数 (10 など) を決定し、それに応じて各中間点を計算する必要があります。
NbOfIntermediates = 10 // for example
Lat_at_Intermediate(n) = CurLat + (1/NbOfIntermediates * Lat_to_travel)
Long_at_Intermediate(n) = CurLong + (1/NbOfIntermediates * Long_to_travel)
Time_at_Intermediate(n) = now + (1/NbOfIntermediates * Time_to_travel)
この中で最も複雑なのは、ユニットを正常に保つことです。
( * )直線的な進行を仮定してもよいかどうかについてのいくつかの考慮事項...
明らかに、物理的要素(海流、風、可視性...)の現実の詳細は、この問題では地理的要素よりも重要かもしれません。空間数学。
車両が直線的に一定の速度で移動すると仮定すると、[一般に]緯度次元で線形性を仮定しても問題ありません。[技術的に言えば、地球は厳密には球体ではありません。これは完全に真実ではありませんが、非常に近いです]。ただし、緯度の比較的大きな変化を含むより長い距離では、経度次元に沿った角度の進行は線形ではありません。この理由は、赤道から遠ざかるにつれて、直線マイル (またはキロメートル...) で表される経度が減少するためです。次の表は、さまざまな緯度の場所でのこの効果の大まかなアイデアを示しています。
緯度 度の長さ おおよその例
(経度の)で
海里
0 60 クアラルンプール、ボゴタ、ナイロビ
20 56.5 メキシコシティ、メッカ、ムンバイ、リオデジャネイロ
45 42.5 ジュネーブ、ボストン、シアトル、北京、ウェリントン (NZ)
60 30 Oslo, Stockholm, Anchorage AK, サンクトペテルブルク ロシア
特定の緯度についてこれを計算するには、この便利なオンライン計算機を参照してください。
これを理解するもう 1 つの方法は、フロリダ州ジャクソンビルまたはカリフォルニア州サンディエゴの緯度で真東 (または西) に移動すると、1 度の経度をカバーするのに 52 マイルかかることを確認することです。モントリオールまたはシアトルの緯度では、わずか 40 マイルしかかかりません。