GPX と KML、軌跡データはどちらがハイキングに向くか
GPX と KML はどちらも座標のリストという同じ材料から地図に線を描くが、そもそも作られた目的が違う。GPX は GPS のトラックを機種やアプリの間でそのまま受け渡すための形式で、何も足さず何も仮定しない。KML は Google Earth の中で地図がどう見えるかを作るための形式で、どのアイコンか、どの色か、どのカメラアングルかを記述する。記録したハイキングにとっては、この目的の違いがどちらを使うべきかをほぼ決めてしまう。
それぞれが何のために作られているか
GPX は生の GPS データ
GPX のトラックは、緯度・経度・たいてい標高・タイムスタンプを持つ点を順番に並べただけのプレーンなリストだ。線を画面上でどう見せるか——色もアイコンもカメラ位置も——を記述する項目は何もない。あえて絞り込まれているからこそ、GPS 受信機、腕時計、スマートフォン、地図系のプラットフォームがどれも同じように読める。
KML は見せ方を記述する形式
KML(Keyhole Markup Language)は Google Earth から生まれた形式で、点がどこにあるかだけでなく、地図がどう見えるかを中心に作られている。線の色や太さを指定し、プレースマークに独自のアイコンを置き、コンテンツをフォルダにまとめ、ガイド付きツアー用のカメラ視点まで設定できる。それが KML という形式の存在理由であり、記述しているのはトラックそのものというより、ひとつの「見せ方」だ。
標高が KML ビューアの中でいつの間に消える理由
KML のプレースマークも、GPX のトラックポイントと同じように 1 点ごとの高度を持てる。両者が分かれるのは、そのデータをデフォルトでどう扱うかだ。多くの KML ビューアは、ファイルで明示的に指定しない限り、線を地形にべったり張り付けて描く。つまり記録した標高データがファイルの中に存在していても、画面上の起伏としては現れないことがある。GPX にはそもそもそうした設定が存在しないので、トラックポイントの標高値は標高としてそのまま読まれる。
これは誰かが直すべき不具合というより、KML が「地図がどう見えるか」を中心に設計されていることの表れにすぎない。見た目に影響しない値は、ビューア側からすると後回しにしやすいということだ。
ハイキングではなぜ違いが出るか
Strava、Garmin Connect、Komoot、Gaia GPS、CalTopo のようなハイキング・サイクリング向けのプラットフォームは GPX を前提に作られている。これらのツールが必要としているのは生のトラック——距離、ペース、獲得標高、あとから再生したり同じトラックの別の日と比べたりできるルート——であって、線が何色かは関係ないからだ。こうしたプラットフォームに KML ファイルを渡しても、うまくいってもぎこちないインポートになるだけで、多くはそもそも GPX 以外を想定していない。
その一方で、KML が力を発揮するのは記録が終わったあとの場面だ。ルートを見せるもの——トリップレポートに埋め込む色分けした地図、キャンプ地に置く独自のピン、Google Earth でのガイド付きフライスルー——に仕立てることこそ、KML が本来作られた目的そのものにあたる。
並べて比べる
- 目的: GPX は生の GPS データを機種・アプリ間で受け渡す。KML は地図の見せ方を制御する。
- 由来: GPX は 2002 年に公開された、特定の企業に属さないオープンな形式。KML は Google Earth から生まれた、Google 純正の地図形式。
- スタイル: GPX にはスタイルという概念がない。KML は線の色・アイコン・フォルダ分け・カメラ視点まで設定できる。
- 標高: どちらも 1 点ごとの高度を持てるが、KML ビューアは明示的な指定がないと線を地形に張り付けて描くことがある。GPX にはそれに相当する設定がない。
- 対応状況: GPX はほぼすべてのハイキング・サイクリング・地図系プラットフォームがネイティブに読める。KML は Google Earth と Google マイマップがネイティブに読み、それ以外での対応はより限られる。
相互変換
GPX のトラックを、Google Earth で見やすくするためや Google マイマップ用に KML へ変換するのは、よくある妥当な手順だ。ルートの形は変換後もそのまま残り、GPS Visualizer や GPSBabel のような無料ツールが一度の操作で済ませてくれる。逆に、スタイル付きの KML をプレーンな GPX に戻す変換は、実務上あまり意味がないことが多い。GPX を求めるルート系プラットフォームが必要としているのは座標だけで、KML が加えたスタイル情報は、プレーンなトラックに戻った瞬間に結びつける先がなくなってしまう。
TrailCam が書き出す形式
TrailCam は GPS でルートを記録し、1 本のルートも履歴全体も GPX 1.1、あるいは CSV のサマリーとして書き出す。GPX は、記録したハイキングの実態——距離・標高・タイミングがそのまま残ったトラック——に形が合う形式で、Strava、Garmin Connect、Komoot はいずれもこの形式をそのまま読むので、変換の手間もかからない。書き出しは任意の TrailCam Pro の機能で、アプリ自体は無料でダウンロードできる。
よくある質問
- KML と GPX は同じものですか?
- 違います。どちらも座標を扱いますが、GPX は生の GPS トラックデータを機種やアプリの間で受け渡すための形式で、KML は色・アイコン・カメラ視点といった地図の見せ方を制御するための形式です。解決しようとしている問題がそもそも違います。
- KML ファイルを Strava や Garmin Connect に読み込めますか?
- GPX ファイルのようにはいかないのが一般的です。ハイキング・サイクリング系のプラットフォームは GPX を前提に作られているので、Google Earth 向けに作った KML はまず GPX に変換する必要があり、スタイルだけを目的に作ったファイルは変換の過程で意味を失うことがあります。
- KML ファイルには記録したハイキングの標高データが残りますか?
- 1 点ごとの高度をデータとして持つことはできますが、多くの KML ビューアはそのデータの値にかかわらず、デフォルトで線を地形に張り付けて描きます。そのため、ファイルの中には数値として標高が入っていても、画面上の起伏としては現れないことがあります。
- TrailCam は KML を書き出せますか?
- いいえ。TrailCam が書き出すのは GPX 1.1 か CSV のサマリーで、これはハイキングや地図系プラットフォームが想定している形式です。Google マイマップなど特定の行き先で KML が必要な場合は、そのあとで GPX から変換できます。
自分のルートを記録する
TrailCam は iPhone 用の GPS ルート記録アプリです。動画・写真・音声メモを撮ったその地点に紐づけて保存し、GPX 1.1 または CSV で書き出せます。ダウンロードは無料です。