ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • ヘルプ
  • Sign Out
ArcGIS Desktop

ArcGIS Online

組織のマッピング プラットフォーム

ArcGIS Desktop

完全なプロ仕様の GIS

ArcGIS Enterprise

エンタープライズ GIS

ArcGIS for Developers

位置情報利用アプリの開発ツール

ArcGIS Solutions

各種業界向けの無料のテンプレート マップおよびテンプレート アプリケーション

ArcGIS Marketplace

組織で使えるアプリとデータを取得

  • ドキュメント
  • サポート
Esri
  • サイン イン
user
  • マイ プロフィール
  • サイン アウト

ArcMap

  • ホーム
  • はじめに
  • マップ
  • 解析
  • データ管理
  • ツール
  • エクステンション

ポリゴンのスムージング (Smooth Polygon)

  • サマリー
  • 図
  • 使用法
  • 構文
  • コードのサンプル
  • 環境
  • ライセンス情報

サマリー

ポリゴンのアウトラインの鋭角を滑らかにして、見た目の品質やカートグラフィック品質を向上させます。

図

ポリゴンのスムージング (Smooth Polygon) の図

使用法

  • 次の 2 つのスムージング方法があります。

    • [PAEK] (Polynomial Approximation with Exponential Kernel) (Python では PAEK) による方法は、スムージング許容値に基づいてポリゴンを滑らかにします。滑らかになったポリゴンは、元のポリゴンよりも頂点が多くなる可能性があります。[スムージングの許容値] パラメーターは、新しい頂点の計算に使用する「移動」経路の長さを制御します。長さが短いほど詳細が維持されますが、処理時間は長くなります。
    • [ベジェ挿入] による方法 (Python では BEZIER_INTERPOLATION) は、入力ラインに適合させる近似のベジェ曲線を作成することにより、許容値を使用しないでポリゴンを滑らかにします。
  • [入力バリア レイヤー] パラメーターは、滑らかになったポリゴンが横切ることを許可されないフィーチャを識別するために使用します。バリア フィーチャには、ポイント、ライン、ポリゴンのいずれかを指定できます。

  • 大きなデータセットを処理する場合は、メモリの制限を超えることがあります。このような場合、[カートグラフィック パーティション] 環境設定で関連するポリゴン フィーチャクラスを特定することにより、パーティション単位で入力データを処理することを検討します。パーティションの境界によって定義されたデータの一部が順次処理されます。結果のフィーチャクラスは、パーティション エッジにおいてシームレスで一致した形状になります。詳細については、「パーティションを使用した大きなデータセットのジェネラライズ」をご参照ください。

  • 出力ライン フィーチャクラスはトポロジ的に正確であるため、 入力データに含まれるトポロジ エラーはすべて、出力ライン フィーチャクラスでフラグが付けられます。出力フィーチャクラスには、入力フィーチャ ID と入力のトポロジ エラーがそれぞれ格納される InPoly_FID と SmoPgnFlag という 2 つのフィールドが追加されます。SmoPgnFlag の値が 1 であればトポロジ エラーが存在することを示し、0 (ゼロ) であればエラーは存在しないことを示します。

    レガシー:

    このツールの ArcGIS Pro 2.2 より前のバージョンでは、処理中にトポロジ エラーが生成されることがありました。このようなエラーを特定するために、[トポロジ エラーの処理] (Python の error_option) パラメーターと [リングのエンド ポイントを保持] (Python の endpoint_option) が使用されました。これらのパラメーターは、スクリプトとモデルでの互換性を保つために引き続きこのツールの構文に含まれていますが、現在では無視され、ツールのダイアログ ボックスでは非表示になっています。

構文

SmoothPolygon_cartography (in_features, out_feature_class, algorithm, tolerance, {endpoint_option}, {error_option}, {in_barriers})
パラメーター説明データ タイプ
in_features

スムージングの対象となるポリゴン フィーチャ。

Feature Layer
out_feature_class

作成される出力ポリゴン フィーチャクラス。

Feature Class
algorithm

スムージング アルゴリズムを指定します。

  • PAEK —Polynomial Approximation with Exponential Kernel の略です。スムージング後のポリゴンが入力ポリゴンの頂点を通らないように計算します。これがデフォルト設定です。
  • BEZIER_INTERPOLATION —頂点と頂点の間にベジェ曲線を適合させます。スムージング後のポリゴンは、入力ポリゴンの頂点を通ります。このアルゴリズムは許容値を必要としません。出力では、近似のベジェ曲線が作成されます。
String
tolerance

PAEK アルゴリズムで使用する許容値を設定します。許容値には、0 (ゼロ) より大きい値を指定する必要があります。単位は自由に指定できます。デフォルトはフィーチャの単位です。スムージング アルゴリズムに [BEZIER_INTERPOLATION] を使用するときは、プレースホルダーとして 0 を入力する必要があります。

Linear Unit
endpoint_option
(オプション)

これは、現在使用されていない従来のパラメーターです。以前は、孤立したポリゴン リングの端点を維持するかどうかを指定するために使用されていました。このパラメーターは、スクリプトとモデルでの互換性を保つために引き続きこのツールの構文に含まれていますが、ツールのダイアログ ボックスでは非表示になっています。

孤立したポリゴン リングの端点を維持するかどうかを指定します。このオプションは、PAEK アルゴリズムでのみ機能します。

  • FIXED_ENDPOINT —孤立したポリゴン リングの端点を維持します。これがデフォルト設定です。
  • NO_FIXED —孤立したポリゴン リングの端点を使用してスムージングします。
Boolean
error_option
(オプション)

これは、現在使用されていない従来のパラメーターです。以前は、処理中に生成された可能性のあるトポロジ エラーの処理方法を指定するために使用されていました。このパラメーターは、スクリプトとモデルでの互換性を保つために引き続きこのツールの構文に含まれていますが、ツールのダイアログ ボックスでは非表示になっています。

ラインの交差や重なりなど、プロセスで発生する可能性があるトポロジ エラーの処理方法を指定します。

  • NO_CHECK —トポロジ エラーをチェックしません。これがデフォルト設定です。
  • FLAG_ERRORS —トポロジ エラーが見つかった場合はフラグを付けます。
String
in_barriers
[in_barriers,...]
(オプション)

スムージングの際にバリアとしての役割を果たすフィーチャを含む入力。滑らかになった結果のポリゴンはバリア フィーチャに接したり、バリア フィーチャを横切ったりしません。

Feature Layer

コードのサンプル

SmoothPolygon (ポリゴンのスムージング) の例 (Python ウィンドウ)

次の Python ウィンドウ スクリプトは、イミディエイト モードで SmoothPolygon ツールを使用する方法を示しています。

import arcpy
import arcpy.cartography as CA
arcpy.env.workspace = "C:/data"
CA.SmoothPolygon("soils.shp", "C:/output/output.gdb/smoothed_soils", "PAEK", 100)
SmoothPolygon (ポリゴンのスムージング) の例 2 (スタンドアロン スクリプト)

次のスタンドアロン スクリプトで、この SmoothPolygon ツールの使用方法を示します。

# Name: SmoothPolygon_Example2.py
# Description: Eliminate small islands before simplifying and smoothing lake boundaries
# Import system modules
import arcpy
import arcpy.cartography as CA
import arcpy.management as DM
# Set environment settings
arcpy.env.workspace = "C:/data/Portland.gdb/Hydrography"
# Set local variables
inLakeFeatures = "lakes"
barriers = "C:/data/Portland.gdb/Structures/buildings"
eliminatedFeatures = "C:/data/PortlandOutput.gdb/lakes_eliminated"
simplifiedFeatures = "C:/data/PortlandOutput.gdb/lakes_simplified"
smoothedFeatures = "C:/data/PortlandOutput.gdb/lakes_smoothed"
# Eliminate small islands in lake polygons.
DM.EliminatePolygonPart(inLakeFeatures, eliminatedFeatures, 100, "OR", 0, 
                        "CONTAINED_ONLY")
# Simplify lake polygons.
CA.SimplifyPolygon(eliminatedFeatures, simplifiedFeatures, "POINT_REMOVE", 50, 
                   200, "RESOLVE_ERRORS", "KEEP_COLLAPSED_POINTS", barriers)
# Smooth lake polygons.
CA.SmoothPolygon(simplifiedFeatures, smoothedFeatures, "PAEK", 100, "", 
                 "FLAG_ERRORS", barriers)

環境

  • 現在のワークスペース
  • 出力データのデフォルト Z 値
  • 出力データの M ドメイン
  • 出力データの XY ドメイン
  • 出力座標系
  • 範囲
  • 出力データに M 値を含む
  • 出力データに Z 値を含む
  • テンポラリ ワークスペース
  • XY 許容値

ライセンス情報

  • ArcGIS Desktop Basic: いいえ
  • ArcGIS Desktop Standard: はい
  • ArcGIS Desktop Advanced: はい

関連トピック

  • ジェネラライズ ツールセットの概要
  • 競合解決とジェネラライズの概要
  • ジオプロセシングによる競合解決/ジェネラライズ ワークフローの自動化
  • ラインのスムージング (Smooth Line)
  • ポリゴンの単純化 (Simplify Polygon)
  • パーティションを使用した大きなデータセットのジェネラライズ

ArcGIS Desktop

  • ホーム
  • ドキュメント
  • サポート

ArcGIS プラットフォーム

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Esri について

  • 会社概要
  • 採用情報
  • Esri ブログ
  • ユーザ カンファレンス
  • デベロッパ サミット
Esri
ご意見・ご感想をお寄せください。
Copyright © 2019 Esri. | プライバシー | リーガル