CSIS Discussion Paper #35

二つの領域分割図の適合度評価システム操作マニュアル その 1
A user’s manual for a computer system detecting and evaluating
the difference between two spatial tessellations
part 1

増山篤*，岡部篤行**，望月貫一郎***，児島利治****東京大学大学院工学系研究科都市工学専攻，**東京大学空間情報科学研究センター，***㈱パスコ〒113-8656 東京都文京区本郷 7-3-1
東京大学大学院工学系研究科都市工学専攻
e-mail: masu@ua.t.u-tokyo.ac.jp

目次
0 はじめに1 インストール方法
1-1 動作環境
1-2 インストール方法
2 利用方法2-1 初期設定
2-1-1 起動方法
2-1-2 データディレクトリの設定
2-2 名称のチェック
2-3 ポリゴン数のチェック
2-3-1 ポリゴン数のチェック方法
2-3-2 チェック結果のリスト表示
2-4 データの修正2-4-1 編集対象カバレッジの選択
2-4-2 画面の拡大・縮小・移動
2-4-3 オブジェクトの表示・非表示
2-4-4 修正
2-4-4-1 ポリゴン名称を修正する場合
2-4-4-2 ラインを削除して複数のポリゴンを一つのポリゴンにする場合
2-5 境界線同士の接続関係のチェック
2-6 隣接関係の相違の検出
2-6-1 隣接関係グラフの作成，および，二領域分割図間での相違の検出
2-6-2 隣接関係の表示
2-7 フィーチャーの選択方法
2-7-1 ARCEDIT コマンドによる選択
2-7-2 ポリゴン名称による選択
2-7-3 選択中のポリゴン名称の表示
3 エラー，トラブルへの対処法

0 はじめにこのシステムは，本来同一であるべき二つの領域分割図間における属性および空間的構成の相違の検出を行い，その程度を評価し，その結果をユーザに示すものです．さらに，必要に応じて，その相違を解消するように，データに対して修正を行う機能も有しています．
このシステムにおいて，主として，全部で四つの評価機能がありますが，それぞれの機能の内容，それぞれにおける入力・出力は以下の通りです．

機能①

ポリゴン名称における数字の使用法の統一

入力：ポリゴン名称に算用数字の用いられたポリゴンカバレッジ（領域分割図）
出力：入力カバレッジにおける算用数字を漢数字に修正したカバレッジ

○○１丁目

○○一丁目
△△２丁目

××３丁目

△△二丁目
××三丁目

□□４丁目

修正前

□□四丁目

修正後
図 1

機能②

ポリゴン名称を用いたポリゴンの一対一対応のチェック

入力：二つのポリゴンカバレッジ
出力：二つのポリゴンカバレッジ間で一対一対応がつけられない名称，および，」その名称をつけられたポリゴンの個数「○○一丁目」というポリゴン数が一致しない

○○一丁目
△△二丁目
△△二丁目

○○一丁目

××三丁目
○○一丁目

■■四丁目

領域分割図１

名称が違う

図 2

××三丁目

□□四丁目

領域分割図２

機能③

冗長なノードの除去

入力：境界線上に冗長なノードのあるポリゴンカバレッジ
出力：冗長なノードが取り除かれたポリゴンカバレッジ

修正前

修正後

図3

機能④

ポリゴン隣接関係の可視化，および，隣接関係の不一致の検出

入力：二つのポリゴンカバレッジ
出力：ポリゴン同士の接続関係を表すグラフの各辺に，二つの領域分割図間で同じ接続関係があるかどうかを属性として持たせたもの

BBDACEA

領域分割図１DC
領域分割図２

図 4E一致する隣接関係
一致しない隣接関係

1 インストール方法
1-1 動作環境
このシステムは，Arc/Info 上で動作するように開発されたものですが，Arc/Info のバージ
ョンについては，日本語版 Ver.7.0.2 以降について動作確認がとれています．また，Windows系のオペレーティングシステムでは，Windows NT，Unix 系のオペレーティングシステム
では，SunOS，HP-UX で動作確認が取れています．
ただし，Windows NT 上において利用する場合には，本システムと一緒に配布されている「ack for Win95」もインストールして下さい．なお，「ack for Win95」はhttp://www.vector.co.jp/soft/win95/util/se042025.html
からもダウンロードできます．
1-2 インストール方法
まず，システムをインストールするディレクトリに，Windows 版，Unix 版各々のディレクトリ（menu, chkline, chknamem, chkphs, editaml）をファイルごと全てコピ―して下さい．
次に，ディレクトリ menu 下の main.aml をテキストエディタで開き，下記の部分が正しく記述されているか確認して下さい．Windows 版では，「＆s .os = win」
，SUN では，「&s.
os = sun」，HP では，「&s .os = hp」です．

/*/* 適合度評価システム main.aml/*/* 2000.1.15&ec &off

OS を示す&args locate&s .os = win /* win, sun, hp and so on&s .fzdef = 0.000001 /* fuzzy toleranceｃf フォルト値w ..
&s .hdir = [show workspace]&s .menupath = %.hdir%/menu

最後に，このシステムには C プログラムが含まれているため，C プログラムのコンパイルを行う必要があります．コンパイルは，コンピュータのオペレーティングシステムによって，そのやり方が異なります．Windows NT の場合，システムの起動時に実行ファイルをコピ-するように設定されています．前ページの OS の設定を｢win｣にして利用して下さい．
SUN の場合，システムの起動時に実行ファイルをコピーするように設定されています．前
ページの OS の設定を｢sun｣にして利用して下さい．その他の UNIX 系オペレーティングの場合，ワークステション上に C コンパイラがインストールされていれば，メインメニューに C プログラムのコンパイルを行うメニューを利用してください．具体的には，「FILE/Compile」を選択し，ワークステーションにインストールされているコンパイラを選択することによって，コンパイルを行うことができます．逆に，もし C コンパイラがインストールされていなければ，ディレクトリ chkname 下の C プログラム「checkname1.c」，「checkname2.c」を別のワークステ-ションの C コンパイラでコンパイルし，実行ファイルをそれぞれ「chk1.exe」，「chk2.exe」と名称変更して下さい．

図 6 C プログラムのコンパイル

2 利用方法
2-1 初期設定
2-1-1 起動方法
ディスプレイの右側に起動する場合，menu ディレクトリ下で，「＆r main r」とタイプします
Arc: w <system home directory>/menu
Arc: &r main r
メインメニューがディスプレイの右側に表示されます．

図 7 メインメニュー

左側に起動する場合は，「＆r main l」と入力してください．
Arc: &r main l

2-1-2 データディレクトリの設定
カバレッジが存在するディレクトリを設定します．このシステムでは，データディレク
トリ設定しないとほとんどの機能が動作しませんので，注意してください．
設定方法は，まず，メインメニューから「FILE/Set Data Directory」を選択します．すると，ダイアログボックスが開きますので，カバレッジ名を入力し，「OK」を押してくだ
さい．

図 8 Set Data Directory の選択

図 9 データディレクトリ設定ダイアログボックス

2-2 名称のチェック
ポリゴンの属性を修正し，新しい属性 ITEM「NAME」を作成します．全角数字の漢数字への修正（例：「○○1 丁目」→「○○一丁目」），全角「ツ」の全角「ッ」への修正（例：「一ツ家」→「一ッ家」），全角「ケ」を全角「ヶ」に修正を行います．
この機能を利用するには，メインメニューから「CHECK/chk-name」を選択します（このとき，「FILE/Open Coverage」を実行している場合は，「FILE/Close」でカバレッジ修正を終了してください）．するとダイアログボックスが表示されますので，名称を修正した
い領域分割図のカバレッジ名称を指定し，また，ポリゴン名称のアイテム名を指定して下
さい．

図 10 名称チェック

図 10 名称チェックダイアログボックス

2-3 ポリゴン数のチェック
ここでは，二つの領域分割図の名称リスト間における対応関係をチェックし，一対一に対応付けられない名称を検索します．
2-3-1 ポリゴン数のチェック方法
まず，メインメニューから「CHECK/chk-npoly」を選択します（「FILE/Open Coverage」を実行している場合は，「FILE/Close」でカバレッジ修正を終了してください）．選択を行うと，図 12 のようなダイアログボックスが開きますので，名称リストの比較を行いたい二つの領域分割図に対応するポリゴンカバレッジ名を入力してください．

図 11 ポリゴン数チェック

図 12 ポリゴン数チェックダイアログボックス

2-3-2 チェック結果のリスト表示
メインメニューから「CHECK/list_name」を選択します（「FILE/Open Coverage」を実行している場合は，「FILE/Close」でカバレッジ修正を終了してください）．すると，図 2-3-4のように，ポリゴン数チェック結果がリスト表示されます．リストの 1 行目は，この例では，Coverage1，2 両方において，「伊興町狭間」という町名のポリゴンが 2 つずつ存在することを示しています．

図 13 ポリゴン数チェック結果のリスト表示

Coverage1 の市町村名

Coverage2 の市町村名

Coverage2 のポリゴン数
Coverage1 のポリゴン数
図 14 ポリゴン数チェック結果リスト
2-4 データの修正
ここでは，ポリゴン数チェック結果をもとに，名称およびポリゴン数の修正を行います．
なお，データ修正においては，ARCEDIT を利用しているため，修正コマンドは ARCEDITコマンドが基本となっています．
2-4-1 編集対象カバレッジの選択
メインメニューの「FILE/Open Coverage」を選択します．すると，図 16 のようにダイアログボックスが開きますので，カバレッジを選択し，「OK」ボタンをクリックしてください．カバレッジを変更する場合は，「Edit Coverage」を選択し，「replace」ボタンをクリックします
図 15 編集対象カバレッジの選択

図 16 ダイアログボックス

2-4-3 オブジェクトの表示・非表示
ここでは，カバレッジの修正時に利用するライン，ポリゴン，ラベル（ポリゴン名称），ノード，ポリゴン隣接関係の表示・非表示切り替えを行います．
それぞれ，表示するには，「SHOW/arc-on」，「SHOW/poly-on」，「SHOW/label-on」，「SHOW/label-on」，「SHOW/node-on」，「SHOW/link-on」を利用します．
逆に，非表示にするには，「SHOW/arc-off」，「SHOW/poly-off」，「SHOW/label-off」，「SHOW/label-off」，「SHOW/node-off」，「SHOW/link-off」を利用します．
下の図は，ポリゴン隣接関係について表示・非表示を切り替えた例です．

2-5 境界線のノードのチェック
図 17(a)

リンク非表示図 17(b)リンク表示

2-4-4 修正
表示しているカバレッジを修正します．カバレッジの修正には以下の二つの場合があります．一つは，名称を修正する場合で，もう一つは，ラインを削除して複数のポリゴンを一つのポリゴンにする場合です．ここでは，それぞれの場合における修正法を説明します．
2-4-4-1 ポリゴン名称を修正する場合
まず，メインメニューから「ED-FEATURE/poly」を選択します．

図 18 Edit Feature の選択
次に，メインメニューの SELECT 以下のメニューを用いてでポリゴンを 1 つ選択します．

市町村名称による選択

選択コマンド

選択解除コマンドUndo
図 19 Select コマンドメニュー

舎人四丁目を選択

図 20(a)

ポリゴン選択前

図 20(b)

ポリゴン選択後さらに，「EDIT/Change Name」すると，以下のダイアログボックスが表示されます．ここにおいて新しいポリゴン名称を入力し，「OK」を押すと，名称の修正を行うことができます．

図 21 名称入力ダイアログボックス
舎人四丁目を舎人町に修正

図 22(a)

修正前

図 23(b)

修正後

2-4-4-2 境界線を削除して複数のポリゴンを一つのポリゴンにする場合
まず，メインメニューから「ED-FEATURE/arc」を選択します．

図 23 Edit Feature の選択
次に，削除対象とする境界線を選択します．
間のラインを選択

この 2 つのポリゴンを統合したい場合図 24 ラインの選択
メインメニューの「EDIT/Delete」によって境界線を削除します．間違えて削除した場合は，「EDIT/Undo」を使用してください．

図 25 選択したフィーチャの削除

図 26 ラインの削除
ただし，この段階では，境界線を削除されただけであり，下図のように，一つのポリゴンに対し，二つの名称が与えられていることになる．そこで，どちらかの名称を削除するという修正も行う必要がある．

図 27 一つのポリゴンに二つの名称が存在する場合

具体的には，まず，メインメニュー「ED-FEATURE/label」を選択し，修正対象をラベルとします．その後，削除すべき方の名称を選択し，「EDIT/Delete」で削除します．

図 28 ラベルの選択・削除

修正後「FILE/SAVE」もしくは「FILE/SAVE As」で修正カバレッジを保存して下さい．

2-5 境界線同士の接続関係のチェック
ここでは，ポリゴンの境界線上における冗長なノードを除去します．具体的には，まず，メインメニューの「CHECK/chk_line」を選択します．

図 29 境界線同士の接続関係のチェックすると，下図のようなダイアログボックスが開かれるので，チェックを行うカバレッジ名，冗長なノードが削除されたカバレッジ名，および，ファジートレランスを入力します．なお，ファジートレランスとは，その値以下の距離に存在する 2 つのノード若しくは中間点（バ-テックス）を 1 つにするために用いる値です．ちなみに，デフォルト値は 0.000001（menu/main.aml の中で設定されています）ですが，これを調整することによって，図2-5-3(a)のような微妙に結合点がずれたポリゴンを図 2-5-3(b)のように 1 つのノード整理することもできます．

入力カバレッジ名選択

出力カバレッジ名
入力

図 30 チェックラインダイアログボックス

(a)

(b)
図 31 ノードの整理

交点以外のノード

図 32 ノード表示

境界線接続関係チェック前

交点のノードのみ

図 33 ノード表示

境界線チェック後

2-6 隣接関係の相違の検出
ここでは，二つの領域分割図間におけるポリゴン隣接関係を表すグラフをカバレッジとして作成し，その後，それらの比較・相違の検出を行います．
2-6-1 隣接関係グラフの作成，および，二領域分割図間での相違の検出
メインメニューから「CHECK/chk-link」を選択し，下図のようなチェックリンクダイアログボックスが表示させます．ここで比較を行う二つの領域分割図に対応するカバレッジを選択し，また，それらにおけるポリゴン隣接関係を表すグラフのカバレッジ名を指定します．このとき，二領域分割図間で相違が生じているような隣接関係に対応するリンクの検出も行い，その検出結果を各リンクに属性として保存します．

領域分割図カバレッジを選択

隣接関係グラフのカバレ
ッジ名

領域分割図カバレッジを選択

隣接関係グラフのカバレ
ッジ名

図 34 ポリゴン隣接関係のチェック

2-6-2 隣接関係の表示
隣接関係グラフを表示させるには，基本的には，2-4-3 を参照して下さい．
隣接関係グラフを比較するために，2 つのカバレッジを同時に表示したい場合もありますが，このシステムでは ARCEDIT を利用しているため，一度に複数のウィンドウを起動することができません．ARC/INFO 及びシステム自体を 2 つ起動させる必要があります．まず ARC/INFO を 2 つ起動します．
（を起動する．UNIX版の場合は，スタ-2 つの端末からそれぞれ

図 35 2 つの ARC の起動を起動する）

2回

次に，片方の ARC プロンプトで以下のようにタイプし，本システムを起動します．
Arc: &r main r
一方，もう片方の ARC プロンプトでは，以下のようにタイプし，本システムを起動します．
Arc: &r main l

隣接関係グラフ表示

図 36 数値地図と CMS ファイルの表示

図 36 は，このようにして，この領域分割図適合度評価システムを二つ起動し，二つの領域分割図それぞれについて，隣接関係グラフを表示させたものです
2-7 フィーチャーの選択方法
メインメニュー「SELECT」下のコマンドについて説明します．

市町村名称による選択

ARCEDIT の 選 択 コ マンド

図 37 SELECT コマンド

2-7-1 ARCEDIT コマンドによる選択
ARCEDIT コマンドが基になっています．
選択できるフィーチャーは，ポリゴン，ラベル，ラインのいずれも可能です．
メニュー
sel-one

ARCEDIT コマンド
sel内容
1 つのフィーチャーを選択する．マウスの左クリッで選択して下さい．

sel-manysel many

複数のフィーチャーを連続してクリックし，一度に複数のフィーチャーを選択状態にする．選択したいフィーチャーがなくなったらキーボードの「9」を押してください．次の処理が可能となります．

sel-boxsel box

ウィンドウ上に BOX を生成し，BOX 内のフィーチャーを全て選択します．マウスの左ボタンをドラッグして BOX を生成して下さい．

sel-passsel box pass

ウィンドウ上に BOX を生成し，BOX に重なるフィーチャーを全て選択します．マウスの左ボタンをドラッグして BOX を生成して下さい．

sel-polysel polygon

ウィンドウ上にポリゴンを生成し，ポリゴン内のフィ-チャ-を全て選択します．キーボードの｢4｣：最後の点を削除，｢5｣：ポリゴン全体を削除，「9」：ポリゴン生成終了

メニュー
sel-ply-pass

ARCEDIT コマンド
sel polygon pass

内容
ウィンドウ上にポリゴンを生成し，ポリゴンに重なるフィーチャーを全て選択します．キーボードの｢4｣：最後の点を削除，｢5｣：ポリゴン全体を削除，「9」：ポリゴン生成終了

sel-allasel allカバレッジの全てのフィーチャーを選択状態にします．

unselunsel many

選択状態にある複数のフィーチャーの選択を解除します．選択解除を行うフィーチャーがなくなったら「9」で終了します．

unsel-box

ウィンドウ内に BOX を生成し，BOX 内の選択状態

unsel boxにあるフィーチャーを選択解除します．
unsel-pass

unsel box pass

ウィンドウ内に BOX を生成し，BOX に重なる選択状態のフィーチャーを選択解除します．

undooops

最後の処理を無効にし，1 つ前の状態に戻します．

2-7-2 ポリゴン名称による選択「SELECT/Search by Name」を選択すると，下図のようなダイアグラムが表示されますので，ここで，ポリゴン名称を入力し，「OK」ボタンを押すと，この名称を持つポリゴンを選択することができます．

図 38 町名検索ダイアログボックス
2-7-3 選択中のポリゴン名称の表示
地図を縮小表示し，ラベルを表示しても文字が見えない場合，メインメニューの「LIST」を選択すると，選択中のポリゴンの名称がリスト表示させることが可能です．

3 エラー，トラブルへの対処法
Q1. 日本語がうまく表示できない．
A1. ARC/INFO 日本語版がうまくインストールされていないと思われます．もう一度インストールし直して下さい．
Q2. 名称チェックが動作中にエラーメッセージを発して終了する．
A2. C プログラムのコンパイルが正確になされていないと思われます．
コンパイルし直して下さい．
Q3. なかなか処理が終了しない．
A3. 大きな負荷のかかる処理を実行中の場合があります．しばらくお待ち下さい．強制終了を行うには，メインメニューの「TO-KEY」を選択して下さい．ARC のコマンドラ
インに入力可能となりますので，そこで ARC を終了して下さい．
Q4. 隣接関係グラフを表示中にノード，ポリゴン名称を表示しようとしても表示できない．
A4. 隣接関係グラフとノード，ポリゴン名称は同時に表示できません．リンクの表示を解除してからノード，ポリゴン名称を表示して下さい．
Q5. 隣接関係グラフを表示中にカバレッジの修正ができない．
（ポリゴン・ラインの選択ができない．
）
A5. 隣接関係グラフ表示中は，edit coverage がリンクファイルになっているため，市町村ポリゴンの修正を行うことはできません．隣接関係グラフの表示を解除してから市町村ポリゴンの修正を行って下さい．