ArcGISシステムツールを使用してポリゴンの面積を計算するにはどうすればよいですか?

Aug 21 2020

「ジオメトリ属性の追加」ツールが好きです。内部に図心など、いくつかの優れたオプションがあります。ドキュメントには次のように記載されています。

このツールは、[ジオメトリ計算]ダイアログボックスまたは[フィールド計算]ジオプロセシングツールを使用して実行できるタスクを自動化する簡単で効率的な方法を提供します。

残念ながら、ポリゴンの面積や線の長さを計算する方法がわかりません。

ツールを起動すると、それらが表示されます。

ドキュメントでは、選択したカップルの説明に「AREA-POLY_AREA:ポリゴンの領域」と「LENGTH:線の長さ」と記載されています。

ただし、ポリゴンを含む投影フィーチャクラスとして入力を提供すると、これらのオプションが表示されなくなり、測地線のみが表示されます。

スクリプトやフィールド計算機でそれを行う方法は知っていますが、システムツールは高速なので使用したいと思います。

ArcGISシステムツールを使用してポリゴンの面積を計算するにはどうすればよいですか?

回答

2 Hornbydd Aug 23 2020 at 00:55

このツールを使用している間、データセットの座標系に基づいて計算するためのさまざまなプロパティが提供されていることに気づきませんでした。

それはあなたのデータセットと関係があるのだろうか?ブリティッシュナショナルグリッドにいくつかのポリゴンがあり、以下に示すように両方のオプションが提供されます。

投影座標系を使用したデータセット(British National Grid)

しかし、WGS84にあるポリゴンデータセットを使用すると、次の1つのオプションしか表示されません。

WGS84を使用したデータセット

ArcMapの私のバージョンは10.6です

更新:リンクしたサンプルを確認すると、問題を再現でき、AREAオプションが削除された理由を突き止めました。問題は、スクリプトの検証コード、具体的にはupdateParameters関数の行に関係しています。

gcsOrMercator = False if not sr.GCSName and sr.PCSName.upper().find("MERCATOR") == -1 else True

データセットにはGCS名はありませんが、投影名に「mercator」という単語が含まれているため、変数gcsOrMercatorはTrueで終了します。その後、検証コード内にはオプションを取り除きAREAそしてPERIMETER_LENGTHその変数に基づいてオプションの利用可能なリストから。これがESRIコードの見落としなのか、それともメルカトル図法の領域の作成の問題なのかはわかりません。私が理解しているように、メルカトルは座標系の極限で精度が低下します。それがそれであるならば、私の最初の推測は正しかった、そのデータセットとあなたはそれをローカル座標系に投影する必要があるでしょう、その時点であなたはあなた自身です、私はニュージーランドにとって何が最善かわかりません、私は訪問するのに素晴らしい国を知っていますが!

:)