回転した楕円を説明するデータがあります (緯度経度座標での楕円の中心、長軸と短軸の長さ (キロメートル単位)、楕円が向いている角度)。病巣の場所はわかりませんが、どうにかしてそれらを把握する方法があると思います。特定の緯度経度点がこの楕円内にあるかどうかを判断したいと思います。ポイントがデカルト グリッド上の楕円内にあるかどうかを判断する良い方法を見つけましたが、緯度経度ポイントを処理する方法がわかりません。どんな助けでも大歓迎です。
-コーディ O.
私の問題をさらに調査し、別のフォーラムに投稿した後、私は解決策を見つけることができました。私の楕円は比較的小さいので、真の(平らな)楕円だと思いました。楕円の焦点の緯度を特定することができました。関心のあるポイントから各焦点までの距離の合計が2a(主軸の半径)未満の場合、楕円内にあります。しかし、提案をありがとう。-コーディ
デカルト平面でこれを行う標準的な方法は、レイキャスティング アルゴリズムを使用することです。球体上にいるため、楕円を正確に表すには大円距離を使用する必要があります。
編集:標準のレイキャスティングアルゴリズムは楕円で機能しますが、その精度はa)楕円がどれだけ小さいか、b)赤道にどれだけ近いかに依存します。179 -> 180/-180 -> -179 になる日付変更線のような特殊なケースに注意する必要があります。
デカルト グリッドの問題を解決する方法が既にあるので、ポイントをUTM座標に変換するだけです。ポイントと長さはすべてメートル単位になり、チェックは簡単になります。この LL から UTM への変換を行うための多くの matlab コードが利用可能です。このように。
説明では、楕円の軸の長さについては触れていません。それらが非常に長い場合 (数百 km など)、このアプローチはうまくいかない可能性があり、大円などについて考える必要があります。変換先の UTM ゾーンを必ず指定する必要があります。すべてのポイントを同じ UTM ゾーンに配置したい場合、ポイントを関連付けることができません。