緯度経度の座標変換(WGS84 / GCJ-02 / BD-09)
変換処理はすべてブラウザ内で完結します。データは送信されません
同じ建物でも、中国で使われる 3 つの座標系では別々の数値になり、互いに数百メートルずれます。WGS84 は GPS が返す生の座標、GCJ-02 は国測局による暗号化座標(Amap・Tencent・中国国内の Google が使用)、BD-09 は Baidu が GCJ-02 にさらに加えたものです。GPS の座標をそのまま Amap に載せると通りの向かい側にずれ、逆も同じです —— これは精度の問題ではなく、人為的に定義された 3 つのずれです。このツールは 3 つを同時に出し、入力との直線距離をメートルで示すので、これまでどれだけずれていたかが数字で分かります。先に 2 点だけ書いておきます。ずれは中国国内にのみ適用されます —— 国外の点は 3 つとも同じ値になります(これは GCJ-02 の仕様であり、計算漏れではありません)。そして入力の順序は明示的な選択肢です —— Google マップは「緯度, 経度」、Amap と Baidu の取得ツールは「経度, 緯度」を返すため、取り違えると結果は数百キロ動きます。
機能
- WGS84・GCJ-02・BD-09 の 3 つを同時に表示し、どれを入力にしても使える
- 入力との直線距離をメートルで算出し、ずれの大きさが数字で分かる
- GCJ-02 → WGS84 は反復による逆解で、1e-9 度(約 0.1 ミリメートル)まで収束
- 国外の点は「3 つとも同じ値になるのが正しい」と明示し、故障と誤解されないようにする
- 入力順は「緯度, 経度」と「経度, 緯度」から選択でき、逆のときは順序の問題だと指摘する
- カンマ・空白・セミコロンで区切れます。全角のカンマと空白は自動で半角に正規化
- ⚠️ 度分秒のまま貼り付けられます:`39°54′31.4″N 116°23′51.0″E`、`39d54m31.4sN`、`N39°54′31.4″`、半球記号付きの十進数(`39.908722N`)も認識します。分や秒が 60 以上のときは、それらしい座標を返すのではなくエラーにします
- 度分秒表記(39°54′31.40″N 116°23′51.00″E)も座標系ごとに 1 行ずつ出力
- Open Location Code(完全な Plus Code)も出力。番地がなくても口頭で伝えられる住所表記です
- 座標を 2 行入れると2 点間の大円距離と初期方位角も出ます(北京—上海で 1068.3 km)。距離はキロメートル・法定マイル・海里の 3 単位で表示します
- ⚠️ 距離は球面の式で計算し、楕円体の測地線との差(長距離では数 km)を結果に明記します
- そのまま開ける地図リンクを 5 つ用意:OpenStreetMap・Google マップ・Amap・Baidu マップ・Bing
- ⚠️ 各リンクはそれぞれの座標系を使います:OSM / Google / Bing は WGS84、Amap は GCJ-02、Baidu は BD-09 —— WGS84 をそのまま Baidu のリンクに貼ると数百メートルずれます
- ⚠️ 各リンクが座標系と引数の順序を表示:Amap は「経度, 緯度」で他とは逆(逆にすると別の大陸に飛びます)
- ズームは「世界 / 国 / 都市 / 街区 / 建物」の 5 段から選択。OSM と Bing のリンクに反映されます
- 小数点以下の桁数は変更可能(既定は 6 桁、約 0.1 メートル)
- 行ごとにコピーでき、「(入力)」のような注記はコピーされるテキストに混ざりません
- 処理はすべてブラウザ内で完結し、座標は送信されません
使い方
- 入力がどの座標系かを選ぶ
- 手元のデータの順序どおりに「緯度, 経度」または「経度, 緯度」を選ぶ
- 座標を貼り付ける
- 3 つの座標が即座に表示され、各行を個別にコピーできます
よくある質問
- Plus Code とは何ですか?緯度経度と何が違いますか?
- Open Location Code(Google が提唱したオープンな位置コード)は、区画を数文字の英数字に変換します。天安門なら `8PFRW95W+FX` です。用途が緯度経度とは異なります:緯度経度は機械が計算するためのもので、Plus Code は人が読み上げるためのものです —— 番地も正式な住所もない場所は多く、座標の羅列は聞き間違えられますが `8PFRW95W+FX` なら短く伝えられます。⚠️ 2 点注意:これは点ではなく区画を表します(10 桁で約 14 メートル四方、その中のどこでも同じコードになります)。また短縮コード(先頭を省略したもの)は基準地点が必要で、地図ごとに選ぶ基準が異なります —— そのためここでは完全なコードのみを出力し、基準地点を推測することはしません。
- 2 点間の距離が地図アプリと数 km 違うのはなぜですか?
- ここでは球面の式(地球を半径 6371.0088 km の球とみなす)で計算し、地図アプリは WGS84 楕円体上の測地線をたどるためです。地球は扁平なので、中長距離では 0.1% 程度の差が出ます —— 北京—上海は約 1068 km で、数 km の差になります。「だいたいどのくらいか」を知るには十分ですが、メートル単位の正確な測定には GIS ソフトをお使いください。方位角も同じで、しかも示すのは出発点での向きだけです(大円上では方位角は常に変化します)。
- 度分秒はどう計算しますか?60 秒になることはありませんか?
- 十進度の小数部分を 60 倍して分、残りを 60 倍して秒とし、秒は小数第 2 位に四捨五入します(約 3 mm で、測量のどの書式にも十分です)。この四捨五入には必ず処理すべき境界があります:`39.9999999` の秒は `60.00` に丸められ、そのまま書くと `39°59′60.00″` という存在しない表記になります。そのため秒が 60 になったら分へ、分が 60 になったら度へ繰り上げ、結果は `40°00′00.00″` になります。境界値の並びを走査するテストを用意しています。
- 国外の座標で 3 つの出力が同じになるのはなぜですか?
- GCJ-02 のずれは中国国内にのみ適用されるからです —— これはアルゴリズムの仕様であり、ここで計算し忘れているわけではありません。国外の点では、WGS84 と GCJ-02 は定義上同じ値になります。BD-09 は異なります。Baidu の層は世界中で加算されるため、国外でも BD-09 だけは他と違う値になります。出力にはその旨を説明する行が入ります。
- 3 つの座標系はどういう関係ですか?
- WGS84 は国際標準で、GPS チップが直接返す値です。GCJ-02 は中国の測量当局が WGS84 に施した非線形のずれで、中国本土の地図サービス(Amap・Tencent・Google 中国版)が使用しており、公開される座標と実際の座標が一致しないようにしています。BD-09 は Baidu が GCJ-02 の上にさらに加えたずれなので、Baidu へは他の 2 つから 2 回の変換が必要です。香港・マカオ・台湾や一部の国境地帯は各社の扱いが異なり、このツールは一般的な矩形判定を使っています。
- 入力の順序を別の選択肢にしているのはなぜですか?
- Google マップの「座標をコピー」は「緯度, 経度」を返し、Amap と Baidu の座標取得ツールは「経度, 緯度」を返すからです。どちらも似た桁数の小数で、目で見て区別できません。取り違えると数百メートルではなく数百キロずれます(緯度 39.9 を経度として読むと中央アジアに飛びます)。そのため推測はしません:順序は選択肢であり、緯度が ±90 を超えたときは単に範囲エラーを出すのではなく、「ほぼ確実に順序が逆」と原因を名指しします。
- 地図リンクがなぜずれるのですか?なぜリンクごとに別の座標なのでしょうか?
- サービスごとに使う座標系が違うからです。OpenStreetMap・Google・Bing は WGS84、Amap は GCJ-02、Baidu は BD-09 を使い、同じ建物が数百メートル違う 3 つの数値になります。そのため各リンクはそれぞれの座標系に変換した値から URL を組み立てます(1 つの座標を貼り回すのはこの手のツールで最も多い間違いで、「地図の位置が違う」という形で現れます)。⚠️ 引数の順序も異なります:Amap は `position=経度,緯度`(経度が先)で、他は緯度が先です。逆にすると数百メートルではなく別の大陸に飛びます。各リンクの左側に座標系と順序を表示しています。
- 変換の精度はどのくらいですか?
- GCJ-02 と WGS84 の間では、順変換は解析式、逆変換は 1e-9 度(約 0.1 ミリメートル)まで反復します。BD-09 の組は近似的な逆変換です。逆解の式が、微小な 2 つの擾乱を計算する際に元の値ではなく変換後の値を使うため、往復の残差は 1e-7 度程度(約 4 センチメートル)になります。実用上は十分ですが正確な逆変換ではないので、精度の表記はそれに合わせています。また、各社の実際のずれは国境地帯で多少異なり、メートル級の差はこの分野では常態です。
- 座標は送信されますか?
- いいえ。3 つの座標系の変換はすべてブラウザのメモリ上で行われ、ページは一切リクエストを送りません。オフラインでも動作します。座標は特定の住居や作業地点を指すことが多くありますが、それらが端末の外に出ることはありません。
関連ツール
単位換算
変換長さ・重さ・温度・エネルギー・圧力・流量・力・密度など 26 分類の単位を換算します。1つ値を入れると、同じ分類の全単位での結果が一度に見られます。
タイムスタンプ変換
変換Unix タイムスタンプと日時を相互変換。秒〜ナノ秒を桁数で判別し、小数・負数・Windows FILETIME にも対応します。
色変換
変換HEX・RGB・HSL・CMYK と Lab / OKLCH / XYZ の相互変換、色温度・反転色・補色・ANSI 端末色、そして WCAG コントラスト比。すべてブラウザ内で処理します。
PPI 計算
変換解像度と画面サイズから、画素密度 PPI・ドットピッチ(mm)・アスペクト比を計算し、密度の評価も表示します。
日付計算
変換2つの日付の差が何日かを計算し、日・週・月の加減算もできます。日付はカレンダーから選ぶか貼り付けで。終了日を空にすると今日と比較。
基数変換
変換2・8・10・16・36・64 進数を相互変換。6 通りの結果を一度に表示し、19 桁のスノーフレーク ID も正確に扱えます。すべてブラウザ内で処理します。