この惑星(またはその特定のサブセット)で西向き(+/- 20-30度)にあるすべてのビーチを特定したい。
私の考えは、OSMをデータソースとして使用することです。タグ「natural = beach」を持つすべてのポリゴンを抽出すると、ビーチとしてフラグが付けられているすべてのエリアのデータセット/シェープファイルが得られます。ここまでは順調ですね。
また、海岸線のデータ(OSMやNatural Earthなど)を使用して、ビーチの向きを特定できることも知っています。
小さな不一致を修正するためにビーチの形状をバッファリングし、これらを海岸線と交差させると、形状のどちら側が水に面しているかに関するデータが得られます。交差するすべてのポイントの最大値/最小値を使用すると、方位がわかります。(90度+/- 20-30度なら問題ありません...)
そして、それは私が失われた場所です...
私の好みのツールはQGISですが、PostGISも同様です。
このパズルを解く方法を知っている人はいますか?
4
バッファを使用する代わりに..シェープファイル内のすべてのアイテムを東に少しずらし、海岸線シェープファイルとビーチシェープファイルの間でインターセクトを実行する方法を理解する方が簡単ではありませんか?それらは、ビーチが西に面している場所でのみ重なります。
—
ティムクウェリエ14
ティム-いいアイデア。「奇妙な」形状に対して本当に機能するかどうかはわかりません。私は別のアイデアを受け取りました:海岸線を線として取り、草のv.netを使用してビーチポリゴンの重心は重心を最も近い線(またはpostgis)にスナップします。これで、方向を表す線ができました。トリガを使用して、重心の始点から終点までの方位を計算します。良いことですが、QGIS内に完全にはありません。もっと賢いアイデアはありますか?
—
jdoe 14
文字が足りなくなった場合、セントロイドのx値>海岸線のポイントx値の場合、ビーチは西に面しています。2つのx座標とy座標により、y軸に向かう角度を計算できます。(y2-y1)/(x2-x1)は線の傾きを示し、度に変換できます
—
Tim Couwelier
データをラスタライズし、オープンウォーター値をゼロに設定し、ビーチを1に設定してから、テレイン分析->アスペクトツールを実行できます。下り勾配の方向のラスタを取得し、十分に「西側」のセルを選択できます。
—
WxMacMan 14年