稲沢市−数値地図25000(その7)



 
道路区間
 

 数値地図25000には道路区間データDKがある。その様式は下記のようである。

<DoroKukan id='DK23220006466'> <Jotai>供用中</Jotai> <Yuryo>無料</Yuryo> <Shubetsu>一般道</Shubetsu> <Fukuin>13.0m以上</Fukuin> <Namae></Namae> <curve id='CV23220006567'> <CRS idref='JGD2000'/> <segment> <controlPoint>492405.1990 126910.4000</controlPoint> <controlPoint>492405.2620 126909.9160</controlPoint> <interpolation>linear</interpolation> </segment> </curve> <edge id='EG23220000042'> <boundary idref='ND23220002080'/> <boundary idref='ND23220002100'/> <geometry idref='CV23220006567'/> </edge> </DoroKukan> <DoroKukan id='DK23220006464'> <Jotai>供用中</Jotai> <Yuryo>無料</Yuryo> <Shubetsu>一般道</Shubetsu> <Fukuin>1.5m以上3.0m未満</Fukuin> <Namae></Namae> <curve id='CV23220006565'> <CRS idref='JGD2000'/> <segment> <controlPoint>492422.7870 126881.6600</controlPoint> <controlPoint>492422.7130 126880.0780</controlPoint> <interpolation>linear</interpolation> </segment> </curve> <edge id='EG23220000043'> <boundary idref='ND23220002500'/> <boundary idref='ND23220002498'/> <geometry idref='CV23220006565'/> </edge> </DoroKukan>

 XML形式のこのデータ、稲沢市全域で7MBのファイルサイズになる。ブラウザで見ることはできるのだがスクロールにじっと待たなければならない。分割形式で提供する工夫がほしいところうだ。

 XML形式に従って解釈すると、DoroKukanという要素にはJotai、Yuryo、Shubetsu、Fukuin、Namae、curve、edgeの子供要素が定義されている。 各DoroKukan要素には、属性IDが1個つけてある。その平面位置はcurve要素を参照すれば分かる。逆に、このカーブの親要素のIDを調べればJotai、Yuryo、Shubetsu、Fukuin、Namaeを知ることができる。
 curve要素にもIDが定義されている。一まとまりの点データをまとめたカーブに名前を付けて管理できれば、点の1個1個に識別子はいらない。点はCAD上に送り込めばそれ自体がオブジェクトのプロパテとしての座標値になる。

 このXML形式文書データをCADに変換する。情報を捨てることなく移し変えれば、GISデータとしては完璧だ。

 国道なら国が、県道なら県が、市道なら市が道路台帳を管理している。将来は Namaeタグにはこの台帳の名称が記入されることになるだろう。その時は、Fukuinタグに管理上の幅員がきちっと記入されているだろう。まだまだ素材といったレベルでしかない。国にも、県にも、市にも公共事業に回すお金がないという。それなら町のデータは自分で調べて記入するしかない。

 ないデータは後回し。幅員は範囲が記載されている。当面、最小幅員で処理しよう。CADで図化するデータとしては点を連続させた二重線とする。それに名称を持たせる。これで完璧。名称を持たせるためのアイデアは画層を使うことにする。

 その他の属性はCAD自体にコンバートする必要はない。EXCELのデータにコンバートする。AutoCADLTとEXCELを連動させてGIS解析可能なシステムを工夫しておけばよいだろう。

 単なる地図データとGISデータの違いは、解析等の対象になるデータであるかどうかだ。手馴れたソフトで解析処理が出来れば一番いい。AutoCADLTはそれが出来ると思う。思うなら実際やってみるしかない。

 身近なGIS解析は道路の交通量解析。定期的に行われる全国一斉交通量調査はそのデータ収集イベントだ。道路のデータには[道路区間]とは別に[道路節点]データがある。
<DoroSetten id='DS23220004680'> <point id='PT23220022820'> <CRS idref='JGD2000'/> <position>492517.1020 126821.2190</position> </point> <node id='ND23220004680'> <geometry idref='PT23220022820'/> </node> </DoroSetten>

 このXML形式文書データは、DoroSettenのDS23220004680番は節点ND23220004680番であると定義している。節点データは[道路節点]データに一旦変換される。ただそれだけ。

先ほどの
区間CV23220006565には
boundary idref='ND23220002500
boundary idref='ND23220002498
と両端の節点番号が定義されている。道路台帳のXMLデータは公開されていないが、ある路線の節点番号のリストが作られるはずだ。あるいは区間番号リストかもしれない。この道路台帳のXMLデータが登場すれば、各区間の幅員、名称は自動的にFukuin、Namaeタグに送り込むことができる。道路台帳管理がXML形式で行われる時代になろう。数値地図25000は空間データ基盤であり、それがネット公開されたことの意義は大きい。だが、まだ素材でしかないことも認識しておく必要がある。

 先ほどの交通量解析は、上の例の道路幅員を交通量に置きかえればイメージできる。区間データをScript対象にできるシステムを準備しておくこと。そのシステムのオブジェクトデータであること。これがGISデータの必要十分条件だと思う。

 
稲沢市の道路網
 

 稲沢市の道路原点はどこにあるか、ご存知だろうか。江戸期の美濃路街道、稲葉宿の本陣跡近くにある。旧保健所、中山呉服店前といえば、お分かりだろうか。
 もう30年も前、当社は道路台帳を電算化するための調査をした。IBMシステム用の帳票を作成した。当時はコンピユータを「電算機」といった。今から思えば、ノートパソコン程度の能力だったのだろう。
 下の図は数値地図25000の稲沢市道路網。道路原点の写真をリンクしておきました。その近くをクリックすると写真で道路原点を見られます。

稲沢市道路原点
 [道路区間]データDKを一度プロットした。水域のような巾があるのかと思ったが中心線でしかなかった。巾線にしておかなければならない。もう一度スクリプトを修正して変換作業を実行する。

DLINE[enter]
W[enter]
3.5[enter]
x、y、0[enter]
x、y、0[enter]
x、y、0[enter]
x、y、0[enter]

これが道路巾線のスクリプト。

この一連のスクリプトを始まる前に、
DLINE[enter]
C[enter]
N[enter]
として巾線を書いてみること。端部に横断線を入れないようにする。

 Internet Explorerを使ってスマートにjavaScriptで処理したいのだが、XMLのDOM仕様は個人PCでは原理的に不可能だ。データーを一行づつ処理するSAXのほうを使う必要がある。その見通しはあるのだが、複雑なデータ構造でもない。 ちょっとしたScriptで処理させてしまおう。さすが一市の道路全部をCAD化するのだから1時間では処理は終らない。でも、3時間はかからない。30年前を考えると夢のようだ。


2003.12.01
by Kon