サマリー
Collector for ArcGIS は、平均海水面 (MSL) の代わりに楕円体上の高さ (HAE) を表す高度値を格納します。 地上レベルでの精度を保証するために、受信機に関連付けられているか、受信機に入力されたアンテナ高の値が、受信属性値から差し引くために使用されます。
フィールドを作成して、次の式を使用して計算された MSL 値を記録することができます。
Z 値 (MSL) = HAE - ジオイド差 – アンテナ高
この式は、ArcMap で手動で構成するか、GitHub で利用できる CollectorUtils スクリプトに組み込む必要があります。
Collector for ArcGIS の現在のバージョンは、フィーチャの実際のジオメトリとしてではなく、フィールド属性としてのみ属性値 (HAE) を格納します。 ただし、高度値を取得するには、Double タイプのフィールドを属性テーブルに追加して値を格納し、ProjectZ ジオプロセシング ツールを使用して、それらの値をジオメトリ Z 値に転送します。 詳細については、「Collector for ArcGIS: GPS メタデータの記録」および「Collector for ArcGIS: Collector はジオメトリの Z 値に高度を格納しますか?」をご参照ください。
注意: CollectorUtils スクリプトは、Esri Support によってサポートされていません。
手順
注意: このワークフローでは、一部のツールが Spatial Analyst ライセンスを必要とします。
MSL 値を計算して、それらの値をフィーチャクラスのフィールドに格納するには、下記の手順に従います。
- ArcMap のデータ コレクション用のマップを準備します。 詳細については、「Collector for ArcGIS: ArcGIS Desktop でのデータの準備」をご参照ください。
- Global Navigation Satellite System (GNSS) のフィールドを格納するように、フィーチャクラスを構成します。 Esri の推奨ワークフローを使用して、手動でフィールドを追加します。 詳細については、「Collector for ArcGIS: GPS メタデータを格納するフィーチャ サービスの構成」をご参照ください。 または、「GitHub: GNSS メタデータ フィールドの追加」からのスクリプトを使用します。
- Collector for ArcGIS を使用して、目的のフィールド データを収集します。 フィールド データの収集、データの保存、およびデータの共有のワークフローの例については、「Collector for ArcGIS: データの収集」をご参照ください。
- ステップ 3 で収集したデータを ArcMap に追加します。
- 高度値をジオメトリ Z 値に転送するには、収集したデータを ProjectZ ツールの入力として追加します。
- CollectorUtils ツールボックスをダウンロードします。
- [カタログ] ウィンドウから、このツールボックスが含まれているフォルダーに接続します。
- [ProjectZ] ツールを開きます。
- 下に示されているとおりに、必要なパラメーターを入力し、[OK] をクリックします。
- 入力フィーチャ
- 入力データの (X、Y、Z 値の) 座標系
- X 座標値
- Y 座標値
- Z 座標値
- 出力データセット、またはフィーチャクラス
- 出力座標系
以下の図は、入力用のパラメーター フィールドを示しています。
- 関連する le*binary GEOID12B ファイルをここでダウンロードします。 この画像を使用して、適切な格子線を決定します。
- [カタログ] ウィンドウで GEOID12B の *.bin ファイルへの接続を作成し、この *.bin ファイルをマップ フレームにドラッグすることによって、ダウンロードした GEOID12B の *.bin ファイルを ArcMap に追加します。
- [ラスターの投影変換 (Project Raster)] ツールを使用して、GEOID12B の *.bin ファイルをデータと同じ座標系に投影変換します。 *.bin ファイルは、マップに追加されるときにリアルタイムに投影変換されます。このとき、レイヤーが再投影変換されなければ、ある程度の不正確さがジオイド高に生じることがあります。
- [抽出値 → ポイント (Extract Values to Points)] ツールを使用して、Collector for ArcGIS で収集されたデータの特定のジオイド値を出力します。
- ステップ 9 の出力フィーチャクラス内の MSL 値を格納するために、[フィールドの追加 (Add Field)] ツールを開き、次の情報を使用してフィールドを追加します。 詳細については、「ArcMap: フィールドの追加」をご参照ください。
- フィールド名: MSL_Elevation
- タイプ: Double
- 精度: 50
- 縮尺: 10
- MSL 値をステップ 10 で作成したフィールドに出力するために、[フィールド演算] で次の式を使用します。
MSL = 高度 (HAE) - ジオイド差 (RASTERVALU) – アンテナ高
- Python (および、特定のアンテナ高 = 1 メートル) を使用する場合
!ELEVATION!.firstpoint.Z - !RASTERVALU!-1
- VB スクリプト (および、特定のアンテナ高 = 1 メートル) を使用する場合
[ELEVATION] - [RASTERVALU] -1