チュートリアル: QGIS、MerginとInputを使った現場調査
2. プロジェクトの準備
2.4. 調査用のレイヤを追加する
ベクトルレイヤは、Inputアプリの調査用レイヤとして追加することができます。
ここでは、リモートセンシングによる作物被覆分類のためのグラウンドトゥルースデータを収集するための調査レイヤーを作成します。
以下の手順で行っていきます。
- 必要な属性を持つポイントのベクタレイヤーを作成します。
- ポイントのスタイリング
- ウィジェットを使って属性フォームを作る
- 入力プレビューパネルの設定
必要な属性を持つポイントのベクタレイヤーを作成する
1. メインメニューでレイヤ | レイヤの作成 | 新規GeoPackageレイヤと進みます。
2. ブラウズボタン をクリックし、プロジェクトフォルダに進み、前回のセクションで作成したGeoPackage(例. survey.gpkg)を選択します。
3. テーブル名にGroundtruthと入力します。ジオメトリタイプはポイントを選択します。座標系はEPSG:32632と設定します。
4. それでは属性を追加していきます。GeoPackageではユニークな地物IDが自動的に生成されるので、IDを属性として追加する必要はありません。下のスクリーンショットのように属性を追加します。フィールドリストに追加ボタンで追加します。
5. 終わったらOKをクリックします。
6. ポップアップが上書きするか新しいレイヤを追加するか尋ねてきます。新しいレイヤを追加を選択すると、それがGeoPackageに追加されます。
調査ポイントのスタイリング
ウィジェットを使って属性フォームを作る
値 | 説明 |
---|---|
1 | Crop land |
2 | Tree cover |
3 | Shrubland |
4 | Grassland |
5 | Wetland |
6 | Artificial |
7 | Bare soil |
8 | Fallow land |
9 | Seasonal water |
10 | Permanent water |
18. 制約を非NULLに設定します。作物マッピングの目的から考えて最も選択される可能性が高いため、デフォルトの規定値を1にします。
値 | 説明 |
---|---|
1 | Wheat |
2 | Maize |
3 | Rice |
4 | Barley |
5 | Soybeens |
6 | Pulses |
7 | Cotton |
8 | Potatoes |
9 | Alfalfa |
10 | Sorghum |
21. 制約に次の式: "Land cover type" = 1と書きます。これはLand Coverの値が1の時のみ入力可能になることを意味します。式制約を強制をチェックすることでユーザーが制約を上書きできない様にすることができます。
入力プレビューパネルの設定
Google マップと同様に、マップ上で地物が識別されるとプレビュー パネルが表示されます。特定のレイヤを有効にするには、QGIS デスクトップの プロジェクトのプロパティでこのオプションを有効にする必要があります。
29. プレビューパネルの設定では、まずGroundtruthレイヤで右クリックしプロパティを選択する必要があります。そのあと表示名タブを選択します。
-
タイトル - これは、フィールド名または式のいずれかである 「表示名」を使用します。
-
コンテンツ - コンテンツエリアに表示するものは3つのオプションがあります。1.フィールドの値、2.画像、3.HTMLです。ここでは "HTML Map Tip" を使用します。QGIS は常にマップチップの内容を HTML と解釈しますが、Input はさらに 2 つのモードを許可するために構文を拡張します。マップチップが指定されていない場合、Input は最初の 3 つのフィールドを使用し、それらの属性値を表示しようとします。
フィールドの値
「description」と「time」フィールドの値を表示するマップチップのサンプルコンテンツです。
# fields
fid
date and time
マップチップの内容が1行目に# fields マーカーが付いている場合、以下の行はプレビューに記載すべきフィールド名として理解されます。最大で3つのフィールドが表示されます。式は使用できません。
イメージ
フィールド「image_1」のファイルパス(プロジェクトディレクトリへの相対パスを含む)で指定された画像を表示させるマップチップのサンプルです。
# image
file:///[%@project_folder%]/[% "Picture" %]
マップチップの1行目に# image マーカーがある場合、次の行が画像のURLとして理解されます。ファイルシステム上の通常のファイルであるか、ネットワークからのリモート画像であっても良いです。画像のURLに埋め込まれた表現は評価されます([% 1+1 %]で囲まれています)。
HTML
HTML ページとしてレンダリングされて表示されるマップのコンテンツのサンプルです。
<p><strong>Notes:</strong>[% "notes" %]</p>
マップチップに特別なマーカーが含まれていない場合、マップチップはHTMLコンテンツであることが前提となります。HTML の限られたサブセットのみがサポートされます。https://doc.qt.io/qt-5/richtext-html-subset.htmlを参照ください。