にやにや製作:GoogleMapとGPSを自転車で使う

お気楽・ごくらく ( ・∀・)ニヤニヤ
     
製作 かるかる

Google Earthでカスタムアイコンを使うときに注意する点をまとめてみた

2008年03月30日 00時46分51秒 | Google Hacks
Google Earth には標準で140ものアイコンが用意されている

Google Earthに表示するアイコンは、だけでなく
用意されている140以上のアイコンとユーザーが用意するカスタムアイコンが使用可能です。

デフォルトのから変更するには、プレイスマークのプロパティ画面でアイコンをクリックして表示されるアイコンリストから使いたい物を指定することになります。
カスタムアイコン

サンプルのKMZ:Google Earth用 (SkyDrive使用)
sample.kmz


ピンポイント指定するアイコンに必要な3つの条件

1.サイズは64x64
 64x64以外だと縮小拡大時にポイントがずれる。

2.pngであること
 透過pngファイルを用意します。さもないと四角い箱がアイコンとして表示される。

3.HotSpot属性を指定する必要がある。HotSpot By Google KMLリファレンス
 HotSpot(中心点)を指定します。デフォルトのだと、x=20 Y=2の位置が自動で指定されるようになっており
hotspot 左下(0,0) 右上(64,64)

open-diamondなら、x=32 Y=32の位置hotspot2

矢印 はx=54 Y=42、具体的には <hotSpot x="54" y="42" xunits="pixels" yunits="pixels"/ >と指定します。上の3つはGoogle Earth標準のアイコンですから、HotSpotの値はGoogle Earth自体が用意しているため手入力の必要はありません。

Google Earthに標準で入っているアイコンについては、ある程度自動でHotSpotの値を入れてくれます。(一部不正確?な物もあり)


カスタムアイコンについては、必ずHotSpotを指定する必要がある!!

独自に用意するカスタムアイコンについては、HotSpot(中心とする座標)をKMLに手入力する必要があります。
前述のピンポイント指定のための3条件がそろわないと、縮尺を変える度に指し示した位置と大幅にズレる。いっぺん体感すると使えんな~と思うくらズレる、しかしアイコン毎に座標の指定はめんどくさい、でも必須。

ま・こんなことを書いているのも、自動化ツールを作り込んでネタができたからですが
アイコン選択
アイコンをマウスでクリックすることで、中心点(HotSpot)を指定します。(紫のラインの重なったところ)これによりHotSpotの入力は自動化されました。

ただ、実際に動かすと140以上のアイコンをファイルから読み込んで表示させるための時間がかかり実用化していません。exe内にリソースとしてアイコンを取り込んでしまえば早いのでしょうが、著作権上無理でしょうから他の方法を考え中であります。良さげな方法があったら教えてね。
ついでなのでGoogle Earthだけでなく Google Mapsにも使えるようにしてからリリース。

  △
 (・∀・) <まだまだ リリースは先~
 ∪∪
  ν


参考:
リスト中にあるGoogle Earth標準以外のアイコンは
Cyber Cyclist's Home Page
ロボ氏がフリーで提供している「GoogleMapsAPI用マーカーアイコン」


最新の画像もっと見る

2 コメント

コメント日が  古い順  |   新しい順
hotspot指定 (バッグス)
2008-03-30 13:13:37
こんにちは。バッグスと申します。
いつもGMMを便利に使わせていただいています。ありがとうございます。
アイコンのhotspot指定は、もし設定後の画像拡大縮小も考慮するならば、ピクセル指定ではなく、xunits="fraction" yunits="fraction"で指定されたらいかがでしょうか?
また普通に中心をhotspotで良いものならばオリジナル画像でもhotspotタグそのものを無しでどうでしょう。
私も自作ツールにhotspot設定をつけていたのですが、そのツールは今公開停止中なので、別のツールに実装しようかと考え中です。良いアイデアがあったらぜひ参考にさせてくださいませ。
返信する
re:hotspot指定 (かるかる)
2008-03-31 06:48:09
>アイコンのhotspot指定は、もし設定後の画像拡大縮小も考慮するならば、ピクセル指定ではなく、xunits="fraction" yunits="fraction"で指定されたらいかがでしょうか?
考えていませんでした。PicasaでKMLを作成したときのイメージですね、fraction指定もできるようにしてみます。

アイコン専用に作られた画像を想定していましたが、もうちょっと柔軟に考えてみた方が使い出が出そうです。
その辺がまとまったら「Google Earthでカスタムアイコンを使うときに注意する点をまとめてみた 改訂版」でも書いてみます。
返信する