あっ!Google Mapsのデータ消しちゃった!
っていうような場合、クラウド保存されているので、元に戻すのって、大変。。なので、時々、KMLデータ形式などで、データ保存しておくか、Google Maps自体をコピーしておいておくといいですね。
今回、ちょっと消しちゃったという話があって、コピーも取っていたので、あっと言う間に復元完了しましたヽ(^o^)丿
まぁ、そんな時の時のために、前のデータなどを復元したり、他のGoogle Mapsからのデータを取り込んだりする方法を、備忘録として、残しておきますね。
KMLファイルのエクスポート
まずは、正しい方のデータをエクスポートします。 下の図だと、マップの横にある縦三つにならんだ点を、クリックすると、KML/KMZエクスポートというメニューが出てきます。
それで、地図全体をエクスポートしてもいいんですが、欲しいレイヤーだけをエクスポートします。(ここでは、KMLファイルにエクスポートしますに、チェックが入っています。ただコピーするだけなら、何もチェックしなくて、KMZファイルでもいいです。)
ダウンロードしたら。。
レイヤーを新しく作って、データーを入れる
今度は、データを入れたい方のGoogle Mapsを開きます。
レイヤーを新しく作ってから、データを入れてもいいですし、元の間違ってしまったレイヤーごと一度消してから、インポートしてもかまいません。
今回は、まずレイヤーごと消してしまいます。
新しいレイヤーを作ってインポートします。
無題のレイヤーができて、インポートってある所をクリックすると。。
こんな画面が出てきますので、そこに、先ほど保存したKMLかKMZのファイルをドロップすると、データが移行します。
データが移行したことを確認すれば、これで完成ですね。
番外編 KMLファイルを少しいじると、いろいろ便利
KMLファイルに、アイコンとかが引っ付いてZIP圧縮されたものが、KMZファイルなのですが、データをいじりたい時には、KMLファイルで直接いじった方が分かりやすいです。
KMLファイルの構造
ファイルの正式な構造などは、Google君を見てもらう方がいいと思いますが、ちゃんとした構造が分かってなくても、基本的なことが分かると、ファイルを直接編集しちゃうことができます。
まじめに知りたい人は、KML入門用ドキュメント や KMLチュートリアル が詳しいです。
マークアップ言語 の 基本は、
<なんちゃらA> <なんちゃら1> なんちゃら2のデータ </なんちゃら1> </なんちゃらA>
という形になっています。 <>と</>で囲まれたところが一組のデータになります。
こんな構造になってるということを知っていれば、いじれるんですよね。
先ほどダウンロードしたKMLファイルのはじめは、こんなのです。
<?xml version="1.0" encoding="UTF-8"?> <kml xmlns="http://www.opengis.net/kml/2.2"> <Document> <name>親水エリアNew</name> <Style id="line-0097A7-13400-normal"> <LineStyle> <color>ffa79700</color> <width>13.4</width> </LineStyle> </Style>
最初の2行は、バージョンだったり、日本語の文字コード(エンコーディング)だったり、KMLのコードスタイルなどのおまじないです。
そのあとのDocumentからがデータになっています。 ここでは、name があって、Style idがあって、LineStyleとして、色と幅が決められています。
ず~っと下に行くと、データ自体があります。Placemarkという文字で囲まれたところが、ひとつづつのデータになっています。
<Placemark> <name>魁の流れ</name> <description><![CDATA[<img src="https://lh3.googleusercontent.com/kxOvp833chI_048UIuGIX_CO5TDlOjgrPaf4s3LC-kourrbUN_PnHpISFMtem903tSST_Bxf0Kn75cUZZYZPP-4WaOBfHgtFIxfTdGSJ7RK5nBOfXhNM9wFuq-9Uyi2wNxeV" height="200" width="auto" /><br><br>エリア1 上宿公民館北側親水エリア(小川町1-308付近)<br><br><img src="https://lh3.googleusercontent.com/a8xI9vfwlxNtVsII8W90FOzXhTT6810AQlnzj1NDf65cv2F3v6-grbljhTLFKTr_SdHVdjGCLyAFQpnN5Pqz2yuZg819BBhyCXMir3w59dnmuWHvGZ_NXp5trD_8lsmx7UvU3Q" height="200" width="auto" /><br><br><img src="https://lh6.googleusercontent.com/R5GXO8GJtCVE03dznhuUMjl4mTS5Mo_bLyDSUQgebnBf21IrClm2SHxzyqlJdqdkXR2osWIIJujMtdNA3seiEHmr35j-lQGZmrsmGsMxx7Rl_-llXb078VWhYB-wwohxXwv8" height="200" width="auto" /><br><br><img src="https://lh4.googleusercontent.com/_QV2d-px0oQ3i4zend93mmE99rYgcK-f-8sge_Usoea8GUlZz5ai0webnU-uE-RflGJhM1YmF69_EZKmRSc608cMHaQz-2UHoMN8yIQCmJxcCCvQQrzsp1-5QqO-FMz7XNqK" height="200" width="auto" /><br><br><img src="https://lh6.googleusercontent.com/mIYM2cvfquNZ4Agpam06Of21zNkCdWHUsBNoSrn1wabHiyJyvofrJLwoJdVt4RLvGgk1PzEfeqRNKQvlmQfKCcKljn7zxhXZ5MqE_0JR85RiXPmp7a0t1uhnfiWJvnwzPNI" height="200" width="auto" /><br><br><img src="https://lh3.googleusercontent.com/qqhY1g8tDQZWpywYLfH2GNJV2ByMj6-SdJvpP6AQNLQYhl5DwmMa4oHtD9Acn9e6T7LVU9Mb8k5Gi53xx1Kdfb7rq_CwuqV_V8MOIHM5hgVQ-5gDmqnedpaVdsAxdITI-vPJ" height="200" width="auto" /><br><br><img src="https://lh3.googleusercontent.com/Q72InX8rTpfGIoLJeunNbjMWBDV642wWPT-6zB42cyEMw8zux2YMohXhYfSxAgueVpOigGQmpeGj6SLjaEeFpt7DxpHFr-1iSnSXlXj9gyVFjrq0GhhRkgq-8rpW8yIaVaXk" height="200" width="auto" />]]></description> <styleUrl>#line-0288D1-11850</styleUrl> <ExtendedData> <Data name="gx_media_links"> <value>https://lh3.googleusercontent.com/kxOvp833chI_048UIuGIX_CO5TDlOjgrPaf4s3LC-kourrbUN_PnHpISFMtem903tSST_Bxf0Kn75cUZZYZPP-4WaOBfHgtFIxfTdGSJ7RK5nBOfXhNM9wFuq-9Uyi2wNxeV https://lh3.googleusercontent.com/a8xI9vfwlxNtVsII8W90FOzXhTT6810AQlnzj1NDf65cv2F3v6-grbljhTLFKTr_SdHVdjGCLyAFQpnN5Pqz2yuZg819BBhyCXMir3w59dnmuWHvGZ_NXp5trD_8lsmx7UvU3Q https://lh6.googleusercontent.com/R5GXO8GJtCVE03dznhuUMjl4mTS5Mo_bLyDSUQgebnBf21IrClm2SHxzyqlJdqdkXR2osWIIJujMtdNA3seiEHmr35j-lQGZmrsmGsMxx7Rl_-llXb078VWhYB-wwohxXwv8 https://lh4.googleusercontent.com/_QV2d-px0oQ3i4zend93mmE99rYgcK-f-8sge_Usoea8GUlZz5ai0webnU-uE-RflGJhM1YmF69_EZKmRSc608cMHaQz-2UHoMN8yIQCmJxcCCvQQrzsp1-5QqO-FMz7XNqK https://lh6.googleusercontent.com/mIYM2cvfquNZ4Agpam06Of21zNkCdWHUsBNoSrn1wabHiyJyvofrJLwoJdVt4RLvGgk1PzEfeqRNKQvlmQfKCcKljn7zxhXZ5MqE_0JR85RiXPmp7a0t1uhnfiWJvnwzPNI https://lh3.googleusercontent.com/qqhY1g8tDQZWpywYLfH2GNJV2ByMj6-SdJvpP6AQNLQYhl5DwmMa4oHtD9Acn9e6T7LVU9Mb8k5Gi53xx1Kdfb7rq_CwuqV_V8MOIHM5hgVQ-5gDmqnedpaVdsAxdITI-vPJ https://lh3.googleusercontent.com/Q72InX8rTpfGIoLJeunNbjMWBDV642wWPT-6zB42cyEMw8zux2YMohXhYfSxAgueVpOigGQmpeGj6SLjaEeFpt7DxpHFr-1iSnSXlXj9gyVFjrq0GhhRkgq-8rpW8yIaVaXk</value> </Data> </ExtendedData> <LineString> <tessellate>1</tessellate> <coordinates> 139.442697,35.7318908,0 139.4440046,35.7317515,0 </coordinates> </LineString> </Placemark>
今回は、ラインなので、こんな形ですね。coordinatesで囲まれたところに緯度経度がのってて、ラインの始点・終点が書かれています。もっと複雑な線だと、ここの部分が多いですね。DescriptionやExtentionDataのvalueに入っているURLが画像のURLになります。元の画像が消されると、これも消えますので、ご注意くださいませ。
ちなみに、StyleURLってかいたあるところが、上のStyle idとリンクしているので、色とかアイコンとか幅とかを指定するところです。
公園のデータを見てみると、緯度経度が入ってないので、住所から位置を特定することになります。
<Placemark> <name>上水公園</name> <address>小平市たかの台1番1号</address> <description><![CDATA[<img src="https://lh5.googleusercontent.com/7pZKv2kGwgfgvDs09-VP4s1Fr694YASH8zX_fOgdFbvvx8XGal3bePQT8xwKKazgx9WYadrxT8nQnFfdxjwtimxoqVqn8-z_bs7qOlbEm4P0V22W1urMOAsGUWbSao7kI0U" height="200" width="auto" /><br><br>No: <br>住所: 小平市たかの台1番1号<br>面積(㎡): 10.194<br><br><img src="https://lh6.googleusercontent.com/RjaKy5LGSadEWXU30TCBK6FbypPQi7x6bPnhRESwpxr8pmrDOAUykek8Z33e3DUb8uV0jl4EorRiDaJ0Pmlbm9m2pi-P_a2_a0iSbJ-cKZB-n1QOjyJ5Mjnj2N1q7jkdMXAL" height="200" width="auto" /><br><br><img src="https://lh3.googleusercontent.com/4C55YGnLLClDz2QcwnnBZx-Jb5cQGhSNNPHoU66XHIMXrwLRvUeGoyAv33Vl6XpiFVknMREGkUZcGn_nHKqIgo4Od27yQof3EdnSXr6vnu5Y27xwQk-p0rQyE9uaKM20tUQ8" height="200" width="auto" /><br><br><img src="https://lh6.googleusercontent.com/kY_xnEGp_WIBIXMwKdxPL66ZAud6NRh_Trtmgab3x6igYYVBQtzAD5WsKaojN409oiL0ZV-CbIyqL7m4VheLV3dYagI5g7JDcwNjB8pGNygBJ2HmifF1gW7eQi_wGOle1XA" height="200" width="auto" /><br><br><img src="https://lh6.googleusercontent.com/TfNHVo0nhYepljvdTzMVz3DlExHBORNz6kR_FEmQsSpVNFcLuQh-mGYF_ZSU9ObfWcbeUTPHd63a-P5EEAJ5FVNFOt28yTfht4v-LETdC7d-m-9GyLzDqKMUb3wNKY2awQ5d" height="200" width="auto" />]]></description> <styleUrl>#icon-1720-0F9D58-labelson</styleUrl> <ExtendedData> <Data name="No"> <value/> </Data> <Data name="住所"> <value>小平市たかの台1番1号</value> </Data> <Data name="面積(㎡)"> <value>10.194</value> </Data> <Data name="gx_media_links"> <value>https://lh5.googleusercontent.com/7pZKv2kGwgfgvDs09-VP4s1Fr694YASH8zX_fOgdFbvvx8XGal3bePQT8xwKKazgx9WYadrxT8nQnFfdxjwtimxoqVqn8-z_bs7qOlbEm4P0V22W1urMOAsGUWbSao7kI0U https://lh6.googleusercontent.com/RjaKy5LGSadEWXU30TCBK6FbypPQi7x6bPnhRESwpxr8pmrDOAUykek8Z33e3DUb8uV0jl4EorRiDaJ0Pmlbm9m2pi-P_a2_a0iSbJ-cKZB-n1QOjyJ5Mjnj2N1q7jkdMXAL https://lh3.googleusercontent.com/4C55YGnLLClDz2QcwnnBZx-Jb5cQGhSNNPHoU66XHIMXrwLRvUeGoyAv33Vl6XpiFVknMREGkUZcGn_nHKqIgo4Od27yQof3EdnSXr6vnu5Y27xwQk-p0rQyE9uaKM20tUQ8 https://lh6.googleusercontent.com/kY_xnEGp_WIBIXMwKdxPL66ZAud6NRh_Trtmgab3x6igYYVBQtzAD5WsKaojN409oiL0ZV-CbIyqL7m4VheLV3dYagI5g7JDcwNjB8pGNygBJ2HmifF1gW7eQi_wGOle1XA https://lh6.googleusercontent.com/TfNHVo0nhYepljvdTzMVz3DlExHBORNz6kR_FEmQsSpVNFcLuQh-mGYF_ZSU9ObfWcbeUTPHd63a-P5EEAJ5FVNFOt28yTfht4v-LETdC7d-m-9GyLzDqKMUb3wNKY2awQ5d</value> </Data> </ExtendedData> </Placemark>
で・・・この形式が分かってたら、
例えば、あっちのレイヤーに入っているデータを、こっちのレイヤーに移したり、こっちのレイヤーに移したりとか、データ自体を編集したりということができます。
GUI(画面で移動させたり編集したりするインターフェース)でやるより、こういうテキストデータをいじって読み込ませたりする方が、オジサンには、簡単です(笑)
Google Mapsでは、レイヤーが多くなると、それ以上、レイヤーが作れないとか。。ってあるんです。 以下のマップは、見てくれは、ほぼ同じですけど、上はレイヤーが沢山あって、下は、レイヤーが少なくなっています。
レイヤーを整理したものはこちら
ちょっとだけ、テキストエディターを使って編集すると、こんなのが簡単にできます。
参考になれば、幸いです。