日本全国の海岸線データを取得する
最近、JSMAP2地図を汎用のタイル地図で公開しましたが、私個人で作成できる範囲は北海道が精いっぱいです(東京も公開予定)。また、北海道でも倍率14倍と13倍までは作成しますが、それ以外の倍率は簡易的に作成する予定です。そこで、まずは日本全国の海岸線データを取得することにしました。
※ここで使用している地図のデータは、「© OpenStreetMap contributors」です。
1.海岸線データの取得に手間取る
北海道の海岸線は、国土地理院の国土基本情報20万を使ってきましたが、日本全国全部となると、膨大な数の地図を購入しなければなりません。それはできないので、フリーの海岸線データを利用します。
しかしながら、海岸線データの取得を簡単に考えていたにも関わらず、思いの他うまくいきませんでした。
OpenStreetMap地図をOverpassで取得する
Overpassを使ってOpenStreetMapの地図を取得し、JSMAP2や他のコンバーターを使って海岸線を取得しようとしたのですが、うまく行きません。大きな原因としてはデータ量が大きすぎるためですが、かつ、取得したOSMファイルの記述も例外が出てコンバートがうまくできませんでした。
国土数値情報を使う
国土交通省の国土数値情報に海岸線データがあるのですが、非商用と制限されています。私の場合は非商用扱いで問題ないと思いますが、間接的にアフィリエイトへの誘導があると見なされそうなので使うのをやめました。
既にコンバーターは作ってあるので、別の形で非商用としての利用をするかもしれません。
2.海岸線の取得した方法
いろいろな方法を試して、以下の方法で海岸線データを取得できました。
OpenStreetMapの海岸線データをダウンロード
上記のサイトで、OpenStreetMapの海岸線地図データをダウンロードします。形式はShapeファイルです。
QGISで日本近辺のみの海岸線データを作る
QGISを立ち上げて、新規プロジェクトを作成します。
「ブラウザ」ウインドウで、取得した海岸線のShapeファイルをダブルクリックします。すると、「地図ウインドウ」に、海岸線の描画が行われます。「レイヤ」ウインドウには、ロードしたShapeファイル名が表示されています。(海岸線が一つのレイヤで扱われる)
取得した海岸線は、世界全体です。これでは大きすぎます。それは、このまま編集してタイル地図の出力を行えば、とんでもない量のタイル地図が吐き出されてしまいます。そのため、日本周辺を切り出す必要があります。
「ポリゴンによる地物選択」を選択します。これで、マウスを使って範囲を選択できるようになります。
左クリックをする度に矩形が作成されていきます。そして矩形ができたら、右クリックで矩形を完成させます。
すると、選択範囲の海岸線が違う色で表示されます。
選択した海岸線をクリップボードにコピーします。メニューの「編集」「地物をコピー」を選択します。
そのあと、一度プロジェクトを破棄してください。そして、新規プロジェクトを立ち上げます。
メニューの「編集」「新規レイヤに地物を貼り付け」「一時スクラップレイヤ」を選択します。
すると、クリップボードに入っていた日本周辺の海岸線が貼り付けられます。これでプロジェクトを保存すれば良いですが、Shapeファイルとしても保存しておきましょう。
「レイヤ」ウインドウで日本周辺の海岸線を表示しているレイヤを選択し、右ボタンメニューを表示して「保存」を選択します。
すると、「スクラッチレイヤとして保存」ウインドウが表示されます。そこで、適当な名前を付けて「OK」をクリックします。これで、日本周辺の海岸線データを持つShapeファイルが作成されました。
3. 5倍から12倍の地図も作成予定
jsmap2.netで公開しているJSMAP2地図ですが、倍率が13倍、14倍から外れると真っ白になってしまいます(投稿時点)。これがJSMAP2タイル地図を利用している地図アプリケーション「さっぽろ周辺マップ ライト3」であればOpenStreetMapで補完するので良いのですが、Jsmap2.netでは白紙になってしまいます。
そこで、簡易的な地図で補完します。その方法は、補完する倍率によって異なってきそうです。全世界のリソースを違反することなく利用できるように、これから作業していくつもりです。