WebGISの構築2−DMデータの仕様
今回は、DMデータの仕様を確認します。
DMデータの仕様
DMデータとは、各自治体が作成する1/2,500基本図をディジタル納品するためのフォーマットです。
図式(レイヤ)やフォーマットを含めた仕様は、公共測量作業規定(下記URL)に記載されています。
https://psgsv2.gsi.go.jp/koukyou/jyunsoku/index.html
DMデータファイルの特徴を以下に示します。
- 1レコード84バイトの固定長テキスト
- レコード終端は、CR+LF(0x0D+0x0Aの2バイト)
- 日本語の文字コードはシフトJIS
- 図郭ごとに1ファイルとして提供される(図郭サイズ:縦1.5Km、横2.0Km)
- ファイルの拡張子は、”.dm”
ファイルの命名規則
ファイル名は、座標系番号+図郭名で表現され、以下のようになります。
座標系番号2桁+図郭名7桁+拡張子”.dm”
以下に図郭名の付与規則を示します。
今回使用する大阪市の場合、平面直角座標6系ですので、先頭2文字は”06”となります。
座標系原点(6系は、北緯36度0分0秒、東経136度0分0秒)からの距離により5桁が求められ(上記の例では、”OC”+”59”+”2”)、ファイル名”06OC592.dm”が決まります。
地図上で原点から大阪市までの距離を確認すると南に約140Km、西に約50Kmほどですので、上記が正しいことがわかります。
収容されるレコード
前述のように、DMファイルはテキストファイルで提供され固定長レコード形式となっています。
レコードの先頭2バイトには、”レコードタイプ”という項目があり、レコードに収容される情報を表しています。
以下に、レコードタイプの一覧(公共測量作業規定のほぼ抜粋)を示します。
[table id=15 column_widths=”20%|10%|60%” /]
大阪市DMファイルの取得
では、大阪市のDMデータをダウンロードします。サイズは圧縮後で90MB程度です。(解凍後は330MB程度となります)
ダウンロード先は以下(G空間情報センター)となります。
https://www.geospatial.jp/ckan/dataset/h30-dm-pdf-dxf
ダウンロードしたzipファイルを解凍すると、拡張子”.dm”のファイル109個に加え、”INDEX.dmi”、”図郭割図.PDF”の2ファイルが作成されます。
”図郭割図.PDF”の内容は、以下のように109の図郭の配置が示されています。
図郭レコードを例に、”.dm”ファイルの実データを確認してみましょう。
図郭レコードの定義は以下のようになっていて、レコードタイプ”M ”のレコードの直後に図郭の座標などを持つレコード(図郭レコード(b))が続く構成となっています。
ダウンロードした”06OC592.dm”をテキストエディタで開くと、以下のようになります。
ファイルの1行目の先頭に”M ”が確認できます。その後に図郭番号”06OC592”と続いていきます。
2行目は、仕様書の通り図郭左下の測地座標などを持つ”図郭レコード(b)”が確認できます。
その他のDMデータの仕様を以下に示します。
- インデックスレコード(レコードタイプ”I ”)は、ファイル”INDEX.dmi”に収容される
- ファイル”.dm”には、インデックスレコード以外のすべてのレコードが収容される
- ファイルの最後にEOF(0x1A)が設定される
まとめ
今回は、DMデータの仕様を確認し、実際のDMデータをダウンロードして内容を確認しました。
次回は、Pythonを使ってDMデータをmbtiles形式に変換する作業を行なっていきます。
以下に大阪市DMデータを使ったデモサイトがあります。
[blogcard url=”https://labo.takamoto.biz/osakadm.html”]
マウス右ボタンドラッグで3D表示できます。
なお、IE(インターネットエクスプローラ)では表示できませんので、Chromeなど他のブラウザをご利用ください。