国土数値情報の洪水浸水想定区域データをQGISで表現するではバッチプロセスで属性テーブルの属性をファイル名に取り出す部分でつまづいていた.今回QGISのコミュニティで質問した結果回答が得られたので結果を公開する.
「ベクタ」「空間演算ツール」「融合」と進む.
![「ベクタ」「空間演算ツール」「融合」](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/10.png)
入力レイヤ
左下のバッチプロセスとして実行をクリックする.「入力レイヤ」「オートフィル」「レイヤから選択」と進む.
![「入力レイヤ」「オートフィル」「レイヤから選択」](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/11.png)
すべて選択し,OKをクリックする.
![「すべて選択」してOK](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/12.png)
基準となる属性
基準となる属性(複数可)でA31a_205にチェックを入れる.この属性は浸水深ランクコードを示している.
![基準となる属性(複数可)でA31a_205をチェック](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/13.png)
さらに「基準となる属性(複数可)」「オートフィル」「フィルダウン」と進む.
![「基準となる属性(複数可)」「オートフィル」「フィルダウン」](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/14.png)
入力レイヤオプションをクリックする.
![工具アイコンの「入力レイヤオプション」「無効地物フィルタ」「フィルタリングしない」](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/15.png)
「入力レイヤオプション」で「無効地物フィルタ」から「フィルタリングしない」を選ぶ.この作業をレイヤの数だけ繰り返す.
![工具アイコンの「入力レイヤオプション」「無効地物フィルタ」「フィルタリングしない」](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/16.png)
融合ポリゴンの出力
「融合ポリゴンの出力」「オートフィル」「式による計算」と進む.
![「融合ポリゴンの出力」「オートフィル」「式による計算」](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/17.png)
Expression Builder
式ビルダの初期画面である.式を内側から組み立てていく.
![式ビルダの初期画面](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/18.png)
まず,INPUTをダブルクリックする.式ビルダに@INPUTと入力され,プレビューに地物が表現されている.
![変数INPUTをダブルクリック](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/19.png)
次に,@INPUTの後に, 1と入力し,@INPUT, 1を丸括弧で囲む.その左側にgetとタイプ入力する.すると候補の関数がポップアップする.
![getとタイプすると関数名が補完される](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/20.png)
get_feature_by_idを選択する.第2引数の1は1番目の地物を指定している.
![get_feature_by_idを選択](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/21.png)
更にget_feature_by_id関数の左側にattとタイプ入力すると,候補関数がポップアップする.
![attとタイプすると関数名が補完される](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/22.png)
attributeを選択し,引数を丸括弧で囲み,第2引数に’A31a_201’を指定する.これは河川コードを示している.
![attributeを選択](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/23.png)
式全体をコピーして||を挟んでペーストし,attribute関数の第2引数に’A31a_202’とタイプする.これは河川名を示している.
![式全体をコピーして||を挟んでペーストし,attribute関数の第2引数に'A31a_202'とタイプする](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/24.png)
最後に式の左側にパス,式の右側に拡張子を入力する.それぞれシングルクオーテーションで囲む.式の接続には||を用いる.パスのデリミタはバックスラッシュではなくスラッシュに置き換える.
![式の左側にパス,式の右側に拡張子を入力する.それぞれシングルクオーテーションで囲む](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/25.png)
パラメータの指定がすべて終わった状態.実行すると1分ほどで処理が終了する.
![パラメータの指定がすべて終わった状態.実行すると1分ほどで処理が終了する](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/26-1024x958.png)
レイヤパネルに処理後のレイヤが追加されている.
![レイヤパネルに処理後のレイヤが追加される](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/27.png)
不要となった入力レイヤを選択し,削除する.
![処理前のレイヤを選択し「レイヤを削除」](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/30.png)
プロパティでシンボロジを浸水深ランクコードに従って塗り分ける
詳細は国土数値情報の洪水浸水想定区域データをQGISで表現するを参照のこと.
結果
OpenStreetMapを背景に指定した結果である.
![結果](https://www.muscle-hypertrophy.com/wp-content/uploads/2024/06/31-1024x861.png)