私はあなたがあなたの第二の方法で持っている同じ問題を経験しました。RasterをVectorにエクスポートし、v.generaliseを使用しようとすると、アルゴリズムの影響を受けていないように見える「階段状の」境界のある滑らかなポリゴンがほとんど得られます。
私は自分のタスクに合ったプロセスを見つけましたが、それが最善の方法かどうかはわかりませんが、それがあなたを助けた場合に備えて共有したいと思いました。
私が始めたのは、BoMの asciiグリッドで、次のようなものでした:
BoMが次のように生成するものに似たものが欲しかったのです。
次の手順を使用して、(満足した)結果を得ることができました。
- グリッド(私の場合はBoMのASCIIグリッド)をQGISにロードします。
- 離散クラスに再コーディングされました。(Processing Toolbox> Grass> Raster> r.recode)
- マジョリティフィルターを実行して「クリーンアップ」します。(処理ツールボックス> SAGA>ラスターフィルター>マジョリティフィルター)
- フィルターされたグリッドから1の間隔で等高線を作成し、属性「クラス」に保存しました(私のクラスは1,2,3,4などであったため)。(ラスター「メニュー」>「抽出」>「輪郭」)
- 出力コンターはやや一般化されていますが、v.generalisedと「snakes」アルゴリズムを使用して滑らかにしました(Processing Toolbox> Grass> Vector> v.generalize)
- 次に、ラインをポリゴンに変換しました(処理ツールボックス> QGISジオアルゴリズム>ベクトルジオメトリツール>ラインからポリゴンへ)
- 最後に、すべてのポリゴンがうまく描画されるように、単一パートのポリゴンを複数のパーツに変換する必要がありました。(Processing Toolbox> QGISジオアルゴリズム> Vector Geometry Tools> Singleparts to Mulitpart)。
スタイリング後の出力は次のとおりです。
誰かがもっと簡単な方法を知っているなら、私も聞きたいです。もともと、@ Rx_と同様に、ラスターをベクターに変換してから一般化すればよいと考えていました。私がしなければならなかったことは、はるかに長かった。