2021-05-21
スマホやいちごロケなどで使うGPSデバイスから取得できる緯度経度ですが、数字だけではピンと来ません。 都道府県や市区町村名がわかると便利ですね?

Geoloniaさんのオープンソースで、国交省のオープンデータと、GitHubを活用した完全無料の逆ジオコーダー「@geolonia/open-reverse-geocoder」が登場しました!
緯度経度から都道府県・市区町村を検索できるオープンソースの逆ジオコーダーをベクトルタイルで作りました! - Geolonia blog


緯度経度地図」に組み込み、地方公共団体コード、都道府県、市区町村の表示対応。

JavaScript(Node.js)で動くコードを、ブラウザやDenoで気軽に使えるESモジュール対応に変更して使用しています。
taisukef/open-reverse-geocoder: オープンソースかつ無料で利用できる逆ジオコーダーです。
使い方は簡単、こんなJavaScriptのコードをHTML内のスクリプトや、Denoのサーバーコードに書くだけでOKです!登録不要、すぐ動きます。

import { openReverseGeocoder as geocoder } from 'https://taisukef.github.io/open-reverse-geocoder/src/main.js'; const res = await geocoder([139.7673068, 35.6809591]); console.log(res); // { code: "13101", prefecture: "東京都", city: "千代田区" }

緯度経度から市区町村を調べるプログラムはこちら main.js国土地理院の行政区域データをベクトルタイルに変換したものをGitHub Pagesに置き、緯度経度から該当するベクトルタイルを調べて、中にあるどのポリゴンに当たるかを調べて返しています。 ポリゴン内判定や、座標変換用のライブラリ global-mercatord3-geo, d3-array を追加でESモジュール化して対応。

URLでインポートできるESモジュールは、世界中の知見をプログラムでどんどんつないでいく感じが楽しい!

Tweet
クリエイティブ・コモンズ・ライセンス
本ブログの記事や写真は「Creative Commons — CC BY 4.0」の下に提供します。記事内で紹介するプログラムや作品は、それぞれに記載されたライセンスを参照ください。
CC BY / @taisukef / アイコン画像 / プロフィール画像 / 「一日一創」画像 / RSS