クリーン(Clean)(カバレッジ)の仕組み

[クリーン(Clean)] を使用すると、ポリゴンまたはライン カバレッジのトポロジを作成できます。

ポリゴン トポロジを作成する場合:

ライン トポロジを作成する場合:

[クリーン(Clean)] は、カバレッジ アークおよびラベル ポイントに対してジオメトリック解析を実行し、カバレッジ ノードおよびポリゴンを識別して、ポリゴンおよびアークノード トポロジを構築します。[クリーン(Clean)] が実行する特定のジオメトリック解析操作を以下で説明します。

[クリーン(Clean)] は、アーク間の交差部を検索し、アークを分割して、交差部をノード(アーク端点)としてコーディングします。

[クリーン(Clean)](カバレッジ)の例 1

[クリーン(Clean)] の実行中、ファジー許容値内にある複数のアーク座標はスナップされます(たとえば、同じ座標ポイントになります)。内部アーク座標とノード間やアーク間に違いは生まれません。ファジー許容値に応じてアーク頂点が動くという事実を踏まえると、ファジー許容値とカバレッジ解像度との関係を理解しておくことは大切です。以下の「クリーン(Clean)の許容値の設定」をご参照ください。

[クリーン(Clean)](カバレッジ)の例 2

[クリーン(Clean)] は、アークで囲まれたエリアを識別することでポリゴンとアークノード トポロジを構築し、各ポリゴンの境界を画定するアークのリストを作成します。また、[クリーン(Clean)] は、ノード数を計数し、各ノードの開始ノードと終了ノード、および各アークの左右にある内部ポリゴン数を確定します。[ライン] オプションの場合、内部ポリゴン番号は 0 に設定されます。

[クリーン(Clean)](カバレッジ)の例 3
Set of arcs enclosing each polygon
Polygon number  Number of Arcs  Arc numbers
1               4               1,2,9,4
2               4               1,3,5,4
3               4               2,8,6,3
4               4               6,8,9,5
Polygons to the left and right of each arc
Arc number  From-node  To-node  Left Poly  Right Poly
1           1          2        1          2
2           2          7        1          3
3           2          3        3          2
4           4          1        1          2
5           4          3        2          4
6           5          3        4          3
7           5          6        3          3
8           7          5        4          3
9           7          4        1          4

[クリーン(Clean)] は、ダングル アークの長さをダングル長と比較し、ダングル長より短いダングル アークを削除します。ダングル アークは、その左右に同じポリゴン内部番号が付いていて、ダングル ノードで終わります。

[クリーン(Clean)](カバレッジ)の例 4
Polygons to the left and right of each arc
Arc number  Left poly  Right poly  Length
1           1          2           5.0
2*          1          1           0.2
3           1          3           8.8
4           2          3           1.2
5*          2          2           0.2
6           2          4           1.3
7*          1          1           0.2
8           4          3           1.9
9*          3          3           1.5
10          4          3           1.9
11*         1          1           0.2
12          4          1           3.1

* Dangling arcs 
+ Arc length is longer than dangle length = 1.0

指定されたダングル長に基づき、アーク 9 はカバレッジ内に維持され、アーク 2、5、7、11 は削除されます。

[ポリゴン] オプションの場合、[クリーン(Clean)] は、ユーザ ID を各ポリゴンに割り当てるために使用できる各ポリゴン内のラベル ポイントを検索します。ラベル ポイントのないポリゴンは、ユーザ ID にゼロが割り当てられます。ポリゴンのラベル ポイントが複数ある場合は、いずれか 1 つが任意に選択されてポリゴンのユーザ ID に割り当てられます。

[クリーン(Clean)](カバレッジ)の例 5
Polygon Internal no.  Polygon User-ID
1                     0
2                     101
3                     102
4                     0

[クリーン(Clean)] は、使用するオプションに応じて、PAT または AAT を構築します。[クリーン(Clean)] は、各ポリゴンの面積と周長を計算し、この情報をポリゴンの内部番号およびユーザ ID と共に PAT 内に格納します。入力カバレッジ用に PAT がある場合、ポリゴンの元の内部番号を介して、その PAT 内の追加アイテムが出力カバレッジの PAT に結合されます。

[クリーン(Clean)](カバレッジ)の例 6
EXCOV.PAT before Clean
AREA   PERIMETER  EXCOV#  EXCOV-ID  COVER-TYPE
-25.0  20.0       1       0
2.0    7.5        2       0         Shrub
3.0    9.0        3       13        Trees
9.0    11.0       4       10        Grass
3.5    8.0        5       13        Forest
1.0    2.5        6       0         Water
4.5    9.0        7       14        Shrub
2.0    5.0        8       0         Forest
EXCOV.PAT after Clean
AREA   PERIMETER  EXCOV#  EXCOV-ID  COVER-TYPE
-25.0  20.0       1       0
2.0    7.5        2       0
3.0    9.0        3       13        Trees
9.0    11.0       4       10        Grass
3.5    8.0        5       13        Forest
1.0    2.5        6       0         Water
4.5    9.0        7       14        Shrub
2.0    5.0        8       0

[ポリゴン] オプションで [クリーン(Clean)] を使用する場合、ポリゴンのラベル ポイントは必須ではありませんが、用意しておくことをお勧めします。ポリゴン ラベルは、[クリーン(Clean)] の中で属性を維持するために使用されます。必須ではありませんが、ラベル ポイントに一意な ID を与えることもお勧めします。

このカバレッジを構築すると、ラベル ポイントを持つすべてのポリゴンでは、COVER-TYPE 属性値が維持されます。ラベルのないポリゴンでは、この属性は維持されません。

[ライン] オプションの場合、[クリーン(Clean)] はカバレッジのライン属性(AAT など)を自動的に構築します。また、AAT のある入力カバレッジに [ポリゴン] オプションを使用すると、[クリーン(Clean)] は出力カバレッジ内に AAT を自動的に再作成します。入力 AAT 内の追加アイテムは、アークの古い内部番号をリレート アイテムとして使用して、出力 AAT に結合されます。AAT 内の LPOLY# および RPOLY# アイテムは、新しいポリゴン内部番号と等しくなります。

次の例は、[ライン] オプションで [クリーン(Clean)] を使用した AAT の作成を示しています。最初の例は、ポリゴン トポロジを含むカバレッジです。2 番目の例はポリゴン トポロジを含まないため、LPOLY と RPOLY の番号がゼロとして記録されています。

[クリーン(Clean)](カバレッジ)の例 7
Items from VEG.AAT after Clean 
FNODE  TNODE  LPOLY  RPOLY  LENGTH  VEG#  VEG-ID
1      3      2      1      5.0     1     1
1      2      3      2      2.0     2     2
1      4      1      3      10.0    3     3
2      3      4      2      1.9     4     4
4      2      4      3      3.9     5     5
3      4      4      1      5.1     6     6
[クリーン(Clean)](カバレッジ)の例 8
Items from ROADS.AAT after CLEAN 
FNODE  TNODE  LPOLY  RPOLY  LENGTH  ROADS#  ROADS-ID
1      2      0      0      1.0     1       1
2      3      0      0      1.2     2       2
3      5      0      0      0.8     3       3
4      4      0      0      0.9     4       4
5      6      0      0      1.0     5       5

クリーン(Clean)の許容値の設定

ファジー許容値の選択は、[クリーン(Clean)] にとって重要です。出力カバレッジ内の 2 つの座標は、互いのこの距離内には存在できないので、ファジー許容値は、出力カバレッジの解像度を決定します。ファジー許容値が小さすぎる場合、次の 2 通りの問題が考えられます。

逆に、ファジー許容値が大きすぎる場合、ポリゴンが崩壊したり、マージしてはならないアークをマージしてしまう可能性があります。

ダングル長の選択には、特別な注意を払ってください。指定したダングル長よりも短いダングル アークは、すべて削除されます。

[クリーン(Clean)] は、交差するアークを分割する必要があるライン カバレッジの処理や、編集後のアークノード トポロジの再作成に使用できます。

[ビルド(Build)] ツールは、同様の処理を実行します。[ポリゴン] オプションで [ビルド(Build)] を実行すると、ポリゴン トポロジと属性(PAT など)が作成されます。[ライン] オプションで [ビルド(Build)] を実行すると AAT が作成されます。AAT がすでに存在する場合は、再構築されます。しかし、[ビルド(Build)] は [クリーン(Clean)] と異なり、座標の編集は実行しません。たとえば、アークを、他のアークと交差する部分で分割できません。別のカバレッジ コマンドである [リノード(Renumber Nodes)] は、ノードの内部番号をリセットし、カバレッジ AAT 内の各アークの開始ノードと終了ノードの内部番号を自動的に更新することで、各アークのノード番号を再設定します。

5/10/2014