KML
地理空間情報を記述するxml形式の構文。Google Earthはkmlを採用しているので、地図上に描きたい点とか線とか画像とかはkmlで指定する。
もともとは「Keyhole Markup Language」の略。Google EarthはもともとKeyhole社が作っていたのをGoogleが買収したため、そもそもGoogle Earthのための構文だった。だが、kmlがオープンソースの団体に取り入れられ、より広く使われる規格になってくると、特定の企業・ソフトに依存するものでは無いという意味か、現在は名目上は「略語では無い」という扱いになっている。
-
- 記述されたのは古いが、kmlもそこまで大きく変わっているわけでも無く、基本的な部分を掴むにはわかりやすい記事
LineStringにラベルを表示
線分のスタイルに<gx:labelVisibility>1</gx:labelVisibility>
を追加
<name>
の値が線分の中点あたりに表示される
表示位置の調整まではできない?
マウスホバー中のLineStringを強調表示
Highlight selected line - Google プロダクト フォーラム
複数のStyleをまとめる「StyleMap」を使用する。下記コード中の「…」から始まる行は、便宜的なコメント行なので削除すること。
...<Document>下など、通常の<Style>を記述する階層に記述する ...通常時のスタイル <Style id="style_normal"> <LineStyle> <colorMode>normal</colorMode> <width>3</width> ...他にも通常時のLineStyleを指定 </LineStyle> </Style> ...強調表示のスタイル <Style id="style_highlight"> <LineStyle> <color>880000FF</color> <width>5</width> ...他にも強調時のLineStyleを指定 </LineStyle> </Style> ...2つを結合するスタイルマップ <StyleMap id="style_map"> <Pair> <key>normal</key> <styleUrl>#style_normal</styleUrl> </Pair> <Pair> <key>highlight</key> <styleUrl>#style_highlight</styleUrl> </Pair> </StyleMap>
これを設定した上で、LineStringのStyleとして、StyleMapのIDである「style_map」を指定すると、マウスホバー時は強調表示のスタイルが適用される。
<Placemark id="feat_8"> <name>Towers</name> <styleUrl>#style_map</styleUrl> ...←ここに指定 <LineString> <coordinates>35.659400,139.745347 35.710063,139.810698 34.652500,135.506306</coordinates> </LineString> </Placemark>