シェープファイルとしてポイントのセットがあり、既存の各ポイントから可能な限り長い距離を持つ新しいポイントの(座標)を見つけたいと思います。それは可能ですか?はいの場合、サンプルVBコードはありますか?おかげでデメトリス
シェープファイルとしてポイントのセットがあり、既存の各ポイントから可能な限り長い距離を持つ新しいポイントの(座標)を見つけたいと思います。それは可能ですか?はいの場合、サンプルVBコードはありますか?おかげでデメトリス
回答:
球形のボロノイ図(ティッセンポリゴン)を作成するカーククイケンダルの推奨は良いものですが、解決するための技術的な問題があるかもしれません。それまでの間、別の方法として、別のスレッドで説明されている標準のラスターソリューションを適用できます。ユークリッド距離の代わりに球面距離を使用します。
これは、5つのポイントを使用した例で、ここでは(lat、lon)として示されています。
82.7051 -145.256
60.3321 81.2881
-17.076 105.125
-38.792 -122.686
0.000 180.000
この球面距離マップは、経度-180〜180度の水平方向と緯度-90〜90度の垂直方向に地球全体に広がります。ポイントは大きな赤い点で示されます。距離は明るさとともに増加します。見かけの尾根は大円の一部でなければなりません。近くの小さな黒い点(-15.3268、-2.04352)は、最大距離11,227 kmのポイントを示します。(距離は、ITRF00楕円体基準で計算されました。)
このグリッドの解像度は1度です。より正確な解決策を得るには、そのようなポイント(およびグローバル最大値に十分近い値を持つ他のローカル最大値)にズームし、より小さくより高い解像度のグリッドで計算を繰り返すことができます。
私はこれを試したことはありませんが、これはうまくいくようです:
球の3Dボロノイ図を作成します。この結果のポリゴンは、元の既存の(シード)ポイントのほぼ中央に配置されます。
結果の各頂点をループして、最も近い既存のポイントから最も遠い頂点を見つけます。この地点は、地球上で最も遠い地点である必要があります。
コスト加重距離関数を使用して、ラスター内のすべてのセルが他のすべてのポイントからどれだけ離れているかを特定できます。
私の知る限り、この「アクセス不能の極」分析は繰り返し行う必要があります。
投影による歪みを最小限に抑えた小さな領域を見ている限り、反復ラスタアプローチが適切です。各セルについて、すべてのポイントまでの距離を計算し、最小距離を取得します。最も高い値を持つセルは極です。Spatial Analystでユークリッド距離を使用してこれを達成することもできます。
反復ベクトルアプローチはより複雑です。 Garcia-Castellanos et al 2007は、球状の地球に基づいた反復法について説明しています。彼らはCコードをオンラインで利用可能にしたようです。バッファーを使用してArcでこれを行う方法は想像できますが、それでも反復的で遅くなります。
ポイントのセットの最も遠いポイントは、セットの最も内側のポイントの逆数になります。たとえば、セットの最も内側のポイントの座標が北49度、東-144度の場合、逆数と最遠点の座標は南49度、西36度になります。地球は完全に球形ではなく、ジオイド型であるため、これは正確には真実ではありません。したがって、結果点の正確さは、使用する投影および地理システム(正投影、正投影...)に大きく依存します。地形は非常に複雑になる可能性があるため、セット全体の逆数を見つけて(セットの対poを転送)、対極点のセットで覆われた地形内で表面解析を実行すると役立ちます。あなたの質問は、他の惑星や月などの地球外体の点に関するものではないと思います。ごめんなさい、私はあなたのためのVBコードを持っていません。🙄