Google Maps API・マイマップの使い方・活用法をご紹介しています。

Googleマイマップで作成した「ルート」をそのままGoogleMapsAPIに表示する|Google Maps API v3

Google Maps API(v3) を利用して地図上に道筋などを表示する際には、
外部のツールなどで作成したKMLデータを読みこみ表示することが出来ます。
細かなGPS座標などをKMLデータ側で保持し、読み込むだけで表示が行え、
Googleマップ上に手軽に表示することができ便利です。

 

Googleマイマップで作成した「ルート」をそのままGoogleMapsAPIに表示する|Google Maps API v3

以下ではGoogleMyMaps(Googleマイマップ)を利用して、
作成した地図を元に出力したKMLデータを、

GoogleMapsAPI側で読み込み表示する例です。

 

KMLデータのインポート表示

読み込めるKMLデータのURLは公開されているKMLデータであれば、
特に問題なく読み込むことができますので、

自サーバーにアップロードしたファイルや、
GoogleDriveにアップロードし共有したデータなどが利用できます。

 

リンクネットワークKMLデータのインポート表示

また、Googleマイマップで出力できるKMLデータには、
「リンクネットワークKML」という形式のKMLデータも利用でき出力できます。

思想としてはKMLデータに描画に関わる詳細データを出力せず、
大本のKMLデータソースへのURLのみを保持したKMLデータを指定します。

ただ、リンクネットワークKMLデータを、
GoogleMapsAPI側にインポートしただけでは、
Googleマイマップ側の地図表示の変更は反映されませんでした。

 

それぞれの記事にてKMLデータを読み込んだ表示を行っていますが、
実際のところKMLデータに依存した表示が行われ、

描画データの細やかな見栄えの調整などが行えない為、
KMLデータとして読み込み後の描画を含めたデータの作成が必要になります。

 

KMZファイルのインポート表示

GoogleマイマップではKMLファイルの出力だけでなく、
Googleマイマップ間でのエクスポート、インポートを目的とした、

より地図再現性の高いKMZファイルのエクスポートも行えます。
※通常はKMZファイルがエクスポートされます。

そのKMZファイルは、
そのままKMLLayerインスタンスでURL指定することはできませんが、
少し手を加えることでインポートさせることができます。

以下ではその例をご紹介しています。

 

もう少し体裁が整ったインポートがしたい

KML Layerクラスを利用してKMLの読み込みを行った場合、
どうしてもポリラインなどの細かな調整がKML依存の為、やりづらい面があります。

リファレンスを熟読してKMLを作成すればいいのですが、
普通にポリラインの描画のようにプログラムから処理する方がなじみやすいと思います。

そんな時には、KMLデータの出力を行って、
得られたGPS座標のみを抜き出して、プログラムに貼り付けて描画すると楽です。

私はこの方法の方が気に入っています。

 

KMLデータの公開の必要性と二次転用懸念には配慮が必要

実際のところ、KMLデータはWebに公開され、
誰でも表示、ダウンロードが行える状態になりますので、

二次的に転用されるリスク(その価値があれば)も伴います。

これはリスクと言うか、他人に楽をされてただ乗りされるというだけですが、
時間と労力をかけて作成している地図が、転用されることを懸念されるなら、
こうしたインポート形態を採用しない方がいいかもしれません。

ただGoogleマイマップで地図を公開した時点で、
誰でもKMLデータのエクスポートができる状態にはなります。

KMLデータの公開云々より、
マイマップの一般公開がそもそもただ乗りのリスクになることを書き添えます。

 


公開日:

コンテンツ
すべて展開 | すべて省略