国立公園とベクトルタイル地図

こんにちは。これは [FOSS4G Advent Calendar 2020](https://qiita.com/advent-calendar/2020/foss4g) の記事です。国立公園とベクトルタイル地図に関する話題を書きます。

## 国立公園

国立公園というと、まず大型の野生動物が徘徊する原野が思い浮かぶと思います。世界初の国立公園であるアメリカ合州国の[イエローストーン国立公園](https://ja.wikipedia.org/wiki/%E3%82%A4%E3%82%A8%E3%83%AD%E3%83%BC%E3%82%B9%E3%83%88%E3%83%BC%E3%83%B3%E5%9B%BD%E7%AB%8B%E5%85%AC%E5%9C%92)などがそれですね。これらはアメリカ合州国当局が土地を占有して自然保護のための区域を設定して管理が行われています。しかしながら、日本の国立公園については、このはほぼ当てはまりません。

日本の国立公園は自然公園法という法律に基づいて環境省により設置されますが、環境省はそのほとんどの土地を所有していません。約 1/4 が私有地、残りが国有地または公有地（自治体などが所有する土地）になっています。また、その国有地の大部分は林野庁が所管する国有林で、これは国立公園として整備されているものではありません。

このような制度のあり方には「地域制国立公園」という名前がついていて、土地の所有権とは関係なく開発行為に対して規制を設けながら、地域とのパートナーシップに基づいて貴重な自然資質や稀有な景観を守っていく、という設計の制度になっています。国立公園中では地域の住民が産業を営みながら生活しています。持続的開発、里山・里海などの概念と親和的なスキームですね。

なお、国立公園以外の自然公園には、国定公園や都道府県立自然公園があります。国定公園は環境大臣が指定して都道府県知事が管理するもの、都道府県立自然公園は都道府県知事が指定して管理するものという区分になっています。

### 日本の国立公園と開発規制

日本の国立公園は現在 34 箇所あるようです。

- 利尻礼文サロベツ国立公園
- 知床国立公園
- 阿寒摩周国立公園
- 釧路湿原国立公園
- 大雪山国立公園
- 支笏洞爺国立公園
- 十和田八幡平国立公園
- 三陸復興国立公園
- 磐梯朝日国立公園
- 日光国立公園
- 尾瀬国立公園
- 秩父多摩甲斐国立公園
- 小笠原国立公園
- 富士箱根伊豆国立公園
- 南アルプス国立公園
- 上信越高原国立公園
- 妙高戸隠連山国立公園
- 中部山岳国立公園
- 白山国立公園
- 伊勢志摩国立公園
- 吉野熊野国立公園
- 山陰海岸国立公園
- 瀬戸内海国立公園
- 大山隠岐国立公園
- 足摺宇和海国立公園
- 西海国立公園
- 雲仙天草国立公園
- 阿蘇くじゅう国立公園
- 霧島錦江湾国立公園
- 屋久島国立公園
- 奄美群島国立公園
- やんばる国立公園
- 慶良間諸島国立公園
- 西表石垣国立公園

これらの各国立公園の詳細は環境省のサイトに掲載されています。 
https://www.env.go.jp/park/parks/index.html

---

それぞれの国立公園ではゾーニングによる開発規制が行われています。ざっくりと規制が厳しい順に並べると次のようなゾーンがあります。


|ゾーン|規制の概要|
|:---|:---|
|特別保護地区 ・ 海域公園|とても厳しい規制。落葉落枝一つ持ち帰ってはいけない|
|特別地域|開発行為に一定の規制がある。例えば建物の建坪率などに制限があり、開発に先立って許認可を経る必要がある。|
|普通地域|いわゆるバッファーゾーン。大規模な開発に対して一定の規制がある|

なお、それぞれの国立公園で地域の実情に併せて規制の内容も変わります。地域に固有の特定の希少動植物の採集が禁止されたりします。

国立公園内で開発行為を行う場合は環境省の出先機関である各地の自然保護館事務所との調整が必要で、許認可や届出を行います。環境省の職員である自然保護官（レンジャー）がこれに対応します。

### 国立公園と GIS

国立公園の区域はさまざまな境界を利用して設置されます。例えば次のような境界が使われます。

- 林班界
- 河川区域界
- 道路中心線から一定距離をオフセットした境界
- 地目界
- 字界
- 神社の所有林の境界
- 海岸線界
- etc.

国立公園の計画や見直しの際には、これらのデータを別々の公的機関からかき集め、時には現地を踏査し、GIS ソフトウェア上でデータを統合して公園区域のポリゴンのデータのデータを作成します。できあがったポリゴンは 1/25,000 地形図 などにオーバーレイされて印刷されるなどし、各自然保護官事務所で使われます。


## 国立公園の区域のベクトルタイルをビルドする

開発行為は国民の所与の権利なので、自らが所有する土地やこれから取得しようとする土地が国立公園に当たるのか、あるいは厳しい規制がある場所なのかどうか、というのは当然気になるはずです。環境省に問い合わせるにしても、まずは簡易なアプリなどでざっくりと境界を確認したいところ。そこで、環境省のオープンデータとオープンソースソフトウェアを使ってベクトルタイルをビルドし、ウェブ地図として表示してみます。

国立公園の区域のデータは以下の[生物多様性センター](http://gis.biodic.go.jp/webgis/index.html)のウェブサイトからダウンロードできます。  
http://gis.biodic.go.jp/webgis/sc-026.html?kind=nps

アンケートに答えるとダウンロードできるようになるようです。なお、国立公園以外にも植生、湿地などの自然情報や、鳥獣保護区などのその他の規制区域のデータがあり、これらも同様の方法でベクトルタイルに変換できるはずです。

### ツール

以下のツールを用意します。

- ogr2ogr https://gdal.org/programs/ogr2ogr.html
- tippeacanoe https://github.com/mapbox/tippecanoe
- mb-util https://github.com/mapbox/mbutil

### タイルの作成

ダウンロードした国立公園の区域のシェープファイルを `./nps_all.shp` として保存ておきます。以下のコマンドを順に実行すると、`./docs/{z}/{x}/{y}.mvt` としてベクトルタイルが生成されます。

```shell
# GeoJSON に投影法変換
$ ogr2ogr -f GeoJSON ./nps.geojson ./nps_all.shp -lco ENCODING=URF-8
# MBTiles の生成
$ tippecanoe -o ./nps.mbtiles -zg --drop-densest-as-needed --no-tile-compression ./nps.geojson
# MBTiles をパースしてベクトルタイルのファイルを作成
$ mkdir -p ./docs && mb-util --image_format=pbf ./nps.mbtiles ./docs
# 拡張子を mvt に変更
$ find ./docs -name "*.pbf" -exec bash -c 'mv "$1" "${1%.pbf}".mvt' - '{}' \;
```

作ったタイルは GitHub Pages を使い `https://kamataryo.github.io/nationalpark-mvt/{z}/{x}/{y}.mvt` として静的ホスティングしています。このタイルにスタイルを当てて表示したものが次のウェブサイトです。ベースは弊社 [Geolonia](https://geolonia.com) の地図を使っています。
https://kamataryo.github.io/nationalpark-mvt

ベクトルタイルを利用しているため、ポップアップで規制区域の内容を表示するなどのインタラクティブな操作が可能です。

![スクリーンショット 2020-12-10 12.52.26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/125062/b71b1384-724e-79ca-3f14-e8eb215ce112.png)


---

### 注意事項

国立公園周辺での開発を行う際は自然保護官事務所等に規制区域の照会をしてください。許認可を経ずに開発行為を行うと自然公園法に触れる可能性があります。