ラインの単純化 (Simplify Line) とポリゴンの単純化 (Simplify Polygon) の詳細

[ラインの単純化 (Simplify Line)] ツール、[ポリゴンの単純化 (Simplify Polygon)] ツール、および [共有エッジの単純化 (Simplify Shared Edges)] ツールは、ラインとポリゴンを単純化して、小さな縮尺でも表示できるようにフィーチャの複雑さを緩和します。これらのツールは、固有の特性と形状を維持しながらフィーチャの複雑さを緩和するために、比較的重要ではない頂点を識別および削除します。 単純化にはさまざまなアルゴリズムがあり、それぞれが少し異なる結果を生成します。

単純化のアルゴリズム

トポロジ整合性の維持

このツールでは、処理中にトポロジが維持されます。トポロジ エラーは発生しません。単純化によってトポロジ違反が発生する場合、これらのツールはジオメトリを 2 つのパーツに分割してから、それぞれを別々に単純化します。これは、再帰的な処理です。サブパーツもさらに分割される場合があります。この方法でトポロジを維持できない場合は、そのフィーチャの処理を中断して、近隣フィーチャを処理してから再開し、トポロジを維持できるかどうかが確認されます。

レガシー:

以前のバージョンでは、処理中にトポロジ エラーが生成される可能性がありました。これらのエラーを識別し、必要に応じて解決するためのパラメーターが用意されていました。これらのツールでトポロジ エラーが発生することはなくなったので、エラーの確認と解決の必要性はなくなりました。[トポロジ エラーの確認] (Python では error_checking_option) と [トポロジ エラーを解決] (Python では error_resolving_option) パラメーターは、スクリプトとモデルの互換性のためにツールの構文に含まれていますが、実際の機能はなくなり、ツールのダイアログには表示されません。

入力フィーチャクラス内に存在したトポロジ エラーにフラグを付けるために、SimPgnFlag フィールド ([ポリゴンの単純化 (Simplify Polygon)] の場合) または SimLnFlag フィールド ([ラインの単純化 (Simplify Line)] の場合) が出力フィーチャクラスに追加されています。以前のバージョンでは、これらのフィールドを使用して、ツールの処理によって発生したトポロジ エラーにフラグを付けていました。また、トポロジの解決でも、以前のバージョンは、フィーチャごとに許容値を変更して、それらの値を MinSimpTol フィールドと MaxSimpTol フィールドに格納していました。現在の実装では、これらの許容値フィールド内の値は同じで、[単純化許容値] パラメーターに指定された値と等しくなります。これらのフィールドのいずれかに依存する既存のモデルまたはスクリプトを必ず変更してください。

[入力バリア レイヤー] パラメーターを使用すると、単純化されるラインまたはポリゴンとクロスしてはならないフィーチャを含む 1 つ以上のフィーチャクラスを定義できます。この例としては、単純化された道路を配置できない湖と河川、等高線がクロスできない標高点やその他の測量マーカー、単純化されたデータが完全に内部に留まる必要がある行政区分などが挙げられます。

結果の解析と品質向上

ツールはラインとポリゴンのアウトラインを 1 つずつ単純化します。ラインまたはアウトラインが長くなるほど、結果の見栄えは向上します。ソース データを収集または構築する際に、次のことに注意してください。可能な場合は常に、ラインの端点を鋭角なセクションではなく、長く滑らかなセクションに配置します。

入力フィーチャクラスにおけるトポロジの問題 (交差ポイントがない状態で他のフィーチャとオーバーラップするフィーチャ) には、入力フィーチャクラス内のフィールドにフラグが付けられます。このフィールドの名前は、SimPgnFlag ([ポリゴンの単純化 (Simplify Polygon)] の場合) と SimLinFlag ([ラインの単純化 (Simplify Line)] の場合) です。これらのフィールドの 1 という値は、入力フィーチャクラス内のそのフィーチャにトロポジ エラーが存在することを示しています。

参照用に、入力フィーチャのオブジェクト ID に対応する ID フィールドも出力フィーチャクラスに追加されています。このフィールドは、InPoly_FID ([ポリゴンの単純化 (Simplify Polygon)] ツールの場合) または InLine_FID ([ラインの単純化 (Simplify Line)] ツールの場合) と呼ばれます。また、使用された許容値を格納するために、MinSimpTol および MaxSimpTol フィールドが出力に追加されています。

長さがゼロのラインに単純化されたラインの端点 ([ラインの単純化 (Simplify Line)] の場合)、または面積がゼロのポリゴンや [最小エリア] パラメーターで定義された最小エリアより小さなポリゴンに単純化されたポリゴン ([ポリゴンの単純化 (Simplify Polygon)] の場合)、あるいは両方 (共有エッジの単純化 (Simplify Shared Edges) の場合) を表すポイント フィーチャのポイント出力フィーチャクラスが作成されます。空のジオメトリまたは [最小エリア] パラメーターで定義された最小エリアより小さなポリゴンに単純化されたポリゴン。

大規模データセットの操作

これらのツールにおけるトポロジの処理では、複数のフィーチャを同時に考慮する必要があります。大規模なデータセットを操作するとき、メモリ制限を超える可能性があります。この場合、パーティションごとに入力データを処理することを検討してください。これには、[カートグラフィック パーティション] 環境設定で、入力データをカバーおよび分割する、関連のポリゴン フィーチャを特定します。パーティションの境界によって定義されたデータの一部が順次単純化されますが、出力フィーチャクラスはパーティションのエッジにおいてシームレスかつ一致しています。詳細については、「パーティションを使用した大きなデータセットのジェネラライズ」をご参照ください。

参照

Douglas, David H., and Thomas K. Peucker. 1973. "Algorithms for the Reduction of the Number of Points Required to Represent a Digitised Line or its Caricature." The Canadian Cartographer, 10(2): 112–122.

Wang, Zeshen, and Jean-Claude Müller. 1998. "Line Generalization Based on Analysis of Shape Characteristics." Cartography and Geographic Information Systems 25(1): 3–15.

Zhou, Sheng, and, Christopher B. Jones. 2005. "Shape-Aware Line Generalisation with Weighted Effective Area." In Developments in Spatial Handling: 11th International Symposium on Spatial Handling, edited by Peter F. Fisher, 369–80.

Visvalingam, M., and, J. D. Whyatt. 1992. "Line Generalisation by Repeated Elimination of the Smallest Area," Cartographic Information Systems Research Group (CISRG) Discussion Paper 10, The University of Hull.