パーセンテージに基づいて2つの座標間の点を計算します(球形)

Buydadip

Stackoverflowで次の答えを見つけました

私が理解していることから、これはそれを行うための適切な方法ではありません。計算は線形ですが、座標は球面にマッピングされます。それで、それを行う適切な方法は何ですか?

中点を計算する関数がありますが、パーセンテージをパラメーターとして受け入れるように中点を変更するにはどうすればよいですか。言い換えると、ポイント1と2の間にあり、ポイント1からパーセンテージ離れた中点を見つけます...

middle_point(lat1, long1, lat2, long2) {

    // Longitude difference.
    var d_long = (long2 - long1) * Math.PI / 180;

    // Convert to radians.
    lat1 = lat1 * Math.PI / 180;
    lat2 = lat2 * Math.PI / 180;
    long1 = long1 * Math.PI / 180;

    var b_x = Math.cos(lat2) * Math.cos(d_long);
    var b_y = Math.cos(lat2) * Math.sin(d_long);

    var lat3 = Math.atan2(Math.sin(lat1) + Math.sin(lat2), Math.sqrt((Math.cos(lat1) + b_x) * (Math.cos(lat1) + b_x) + b_y * b_y)); 
    var long3 = long1 + Math.atan2(b_y, Math.cos(lat1) + b_x);

    // Return result.
    return [long3 * 180/Math.PI, lat3 * 180/Math.PI];

}
Tinwelint78

答えはここにあります:http//www.movable-type.co.uk/scripts/latlong.htmlそしてここに:http//www.edwilliams.org/avform.htm#Intermediate

必要な関数は次のとおりです。「perc」は0〜100です。

intermediate_point(lat1, long1, lat2, long2, perc) {

    // Normalize percentage
    perc = perc / 100;

    // Convert to radians.
    lat1 = lat1 * Math.PI / 180;
    lat2 = lat2 * Math.PI / 180;
    long1 = long1 * Math.PI / 180;
    long2 = long2 * Math.PI / 180;

    // get angular distance between points
    var d_lat = lat2 - lat1;
    var d_lon = long2 - long1;
    var a = Math.sin(d_lat/2) * Math.sin(d_lat/2) + Math.cos(lat1) * 
        Math.cos(lat2) * Math.sin(d_lon/2) * Math.sin(d_lat/2);

    var d = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));

    var A = Math.sin((1-perc)*d) / Math.sin(d);
    var B = Math.sin(perc*d) / Math.sin(d);

    var x = A * Math.cos(lat1) * Math.cos(long1) + B * cos(lat2) * cos(long2);
    var y = A * Math.cos(lat1) * Math.sin(long1) + B * cos(lat2) * sin(long2);
    var z = A * Math.sin(lat1) + B * Math.sin(lat2);

    var lat3 = Math.atan2(z, Math.sqrt(x*x + y*y));
    var long3 = Math.atan2(y, x);

    // Return result, normalising longitude to -180°...+180°
    return [long3 * 180/Math.PI, (lat3 * 180/Math.PI + 540)%360-180];
}

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

パーセンテージに基づいて2つの座標間の点を計算します(球形)

分類Dev

パーセンテージ値に基づいて2つの色の間を補間します

分類Dev

データフレーム内の2つの連続する日付の統計間の差異のパーセンテージを計算し、条件に基づいて結果を出力します

分類Dev

Oracleのパーセンテージ計算に基づいて複数の列を更新します

分類Dev

Angularjsの入力フィールドに基づいてパーセンテージを計算します

分類Dev

MySQL:特定の値に基づいてパーセンテージ構成を計算します

分類Dev

PowerBI-上位Nの選択に基づいてパーセンテージ測定値を計算します

分類Dev

Pandas Group 2列で、1列に基づいて合計を計算しますが、アグリゲーターの合計に基づいてパーセンテージを計算します

分類Dev

SQL Serverで計算された合計に基づいて、各行のパーセンテージ値を計算します

分類Dev

パンダでgroupbyを使用して、別の列の基準に基づいてパーセンテージ/比率の合計を計算する方法

分類Dev

Excelで、2つの合計のパーセンテージを計算しようとしています

分類Dev

Excelはパーセンテージに基づいて基準の合計を取得します

分類Dev

2つの値の間のパーセンテージを計算します(合計の場合)

分類Dev

一意の各列の値に基づいてパーセンテージを計算する

分類Dev

他の行の値に基づいてパーセンテージを計算する

分類Dev

2つのテーブルを結合し、2つに基づいて値を計算します

分類Dev

1日の合計のさまざまな値に基づいて、生産パーセンテージ(時間単位)を平均しますか?

分類Dev

jQuery-複数の条件に基づいてパーセンテージを計算する

分類Dev

サイン/コサインに基づいてポイントの座標を計算します

分類Dev

Rの別の変数の頻度に基づいて1つの変数のパーセンテージを計算する方法

分類Dev

PythonとOpenCVを使用して2つの画像間の差異のパーセンテージを計算するにはどうすればよいですか?

分類Dev

Rの4つの条件/座標範囲に基づいてサブセットデータを抽出します

分類Dev

タイムゾーンオフセットに基づいて別の国の時間を計算します

分類Dev

サブグループのいくつかの列に基づいてパーセンテージを計算する

分類Dev

列名に基づいて2つの列間の相関を計算します

分類Dev

2番目の列に基づいてパーセンテージシーケンスを作成します

分類Dev

パンダ-2つのセルの類似した内容に基づいて行をマージします

分類Dev

SQL-顧客の支出に基づいてパーセンタイルを計算します

分類Dev

2つの値の間のパーセンテージを計算する

Related 関連記事

  1. 1

    パーセンテージに基づいて2つの座標間の点を計算します(球形)

  2. 2

    パーセンテージ値に基づいて2つの色の間を補間します

  3. 3

    データフレーム内の2つの連続する日付の統計間の差異のパーセンテージを計算し、条件に基づいて結果を出力します

  4. 4

    Oracleのパーセンテージ計算に基づいて複数の列を更新します

  5. 5

    Angularjsの入力フィールドに基づいてパーセンテージを計算します

  6. 6

    MySQL:特定の値に基づいてパーセンテージ構成を計算します

  7. 7

    PowerBI-上位Nの選択に基づいてパーセンテージ測定値を計算します

  8. 8

    Pandas Group 2列で、1列に基づいて合計を計算しますが、アグリゲーターの合計に基づいてパーセンテージを計算します

  9. 9

    SQL Serverで計算された合計に基づいて、各行のパーセンテージ値を計算します

  10. 10

    パンダでgroupbyを使用して、別の列の基準に基づいてパーセンテージ/比率の合計を計算する方法

  11. 11

    Excelで、2つの合計のパーセンテージを計算しようとしています

  12. 12

    Excelはパーセンテージに基づいて基準の合計を取得します

  13. 13

    2つの値の間のパーセンテージを計算します(合計の場合)

  14. 14

    一意の各列の値に基づいてパーセンテージを計算する

  15. 15

    他の行の値に基づいてパーセンテージを計算する

  16. 16

    2つのテーブルを結合し、2つに基づいて値を計算します

  17. 17

    1日の合計のさまざまな値に基づいて、生産パーセンテージ(時間単位)を平均しますか?

  18. 18

    jQuery-複数の条件に基づいてパーセンテージを計算する

  19. 19

    サイン/コサインに基づいてポイントの座標を計算します

  20. 20

    Rの別の変数の頻度に基づいて1つの変数のパーセンテージを計算する方法

  21. 21

    PythonとOpenCVを使用して2つの画像間の差異のパーセンテージを計算するにはどうすればよいですか?

  22. 22

    Rの4つの条件/座標範囲に基づいてサブセットデータを抽出します

  23. 23

    タイムゾーンオフセットに基づいて別の国の時間を計算します

  24. 24

    サブグループのいくつかの列に基づいてパーセンテージを計算する

  25. 25

    列名に基づいて2つの列間の相関を計算します

  26. 26

    2番目の列に基づいてパーセンテージシーケンスを作成します

  27. 27

    パンダ-2つのセルの類似した内容に基づいて行をマージします

  28. 28

    SQL-顧客の支出に基づいてパーセンタイルを計算します

  29. 29

    2つの値の間のパーセンテージを計算する

ホットタグ

アーカイブ