1

noobの質問はご容赦ください。ただし、gmapにkmlレイヤーを追加しています。kmlは私のウェブサーバー上にあり、ニューヨークのグーグルマップで取得されています。デフォルトの青いアイコンが表示されます。これまでのところ良いですが、私はcustonマーカーと、最終的には後でスタイルベースのoaイベントを変更する機能が必要です。すべてがこの方法を指している

var marker = new google.maps.Marker({
  position: new google.maps.LatLng(56.8848, 14.7730), 
  map: map,
  title: 'My workplace',
  clickable: false,
  icon: 'http://google-maps-icons.googlecode.com/files/factory.png'
});

これはLatLngによって定義されたマーカーのみを制御しているように私には思えます。言い換えれば、単一のポイントのみです。

kmlレイヤー内のすべてのサイトにカスタムマーカーを定義するにはどうすればよいですか。ここに私の地図へのリンクがあります

http://myfloridagps.com/SpiderWeb/KML/map.html

kml内で直接変更する1つの緑色のアイコンは、将来の機能を制限しているようです。

4

1 に答える 1

0

アイコンスタイルを指定します。

<Style id="mm_orange_hd2">
  <IconStyle>
    <Icon>
      <href>http://missouristate.info/images/2010/homecoming/mm_orange.png</href>
    </Icon>
    <hotSpot x="20" y="2" xunits="pixels" yunits="pixels"/>
  </IconStyle>
</Style>

上記のスタイルを参照してください:

<Placemark id="id1">
  <name>Crosstown Barbeque</name>
  <styleUrl>#mm_orange_hd2</styleUrl>
  <Point>
    <coordinates>-93.272,37.2278,0</coordinates>
  </Point>
</Placemark>

完全な例を見る

マップサーバーがデータをキャッシュしないようにするには、kmlファイルのURLにランダムなデータを追加する必要があることに注意してください。

于 2012-11-07T20:50:22.767 に答える