0

Google マップ v3 でポリゴンを作成し、ポリゴンの各 LatLng ポイントにマーカーを表示しようとしています。マーカーをクリックすると、情報ウィンドウにマーカーの座標が表示されます。

これまでのところ、マップ上にポリゴンをプロットしました。クリックすると、ポリゴンの各座標が表示されます。次のステップで助けが必要です。クリックすると情報ウィンドウが表示され、LatLng 座標が表示される各ポイントにマーカーを配置したいと考えています。これまでに行ったことへのリンクはhttp://www.sugarcube.ie/TEST/googlemaps/conor/polygonPoints.htmlにあり ます。

4

1 に答える 1

1

こんにちは、実際に設定されている座標がある場合:

マーカーの作り方はこちら

マーカーの情報ウィンドウについてはこちらもご覧ください

さらにサポートが必要な場合は、お気軽にお問い合わせください。これを行うサンプル コードがいくつかあります。現在、アクセスできません。申し訳ありません。

情報ウィンドウの作成方法に関する Google のサンプル コードを次に示します。

var myLatlng = new google.maps.LatLng(-25.363882,131.044922);
var myOptions = {
  zoom: 4,
  center: myLatlng,
  mapTypeId: google.maps.MapTypeId.ROADMAP
}

var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);

var contentString = '<div id="content">'+
    '<div id="siteNotice">'+
    '</div>'+
    '<h2 id="firstHeading" class="firstHeading">Uluru</h2>'+
    '<div id="bodyContent">'+
    '<p><b>Uluru</b>, also referred to as <b>Ayers Rock</b>, is a large ' +
    'sandstone rock formation in the southern part of the '+
    'Northern Territory, central Australia. It lies 335 km (208 mi) '+
    'south west of the nearest large town, Alice Springs; 450 km '+
    '(280 mi) by road. Kata Tjuta and Uluru are the two major '+
    'features of the Uluru - Kata Tjuta National Park. Uluru is '+
    'sacred to the Pitjantjatjara and Yankunytjatjara, the '+
    'Aboriginal people of the area. It has many springs, waterholes, '+
    'rock caves and ancient paintings. Uluru is listed as a World '+
    'Heritage Site.</p>'+
    '<p>Attribution: Uluru, <a href="http://en.wikipedia.org/w/index.php?title=Uluru&oldid=297882194">'+
    'http://en.wikipedia.org/w/index.php?title=Uluru</a> (last visited June 22, 2009).</p>'+
    '</div>'+
    '</div>';

var infowindow = new google.maps.InfoWindow({
    content: contentString
});

var marker = new google.maps.Marker({
    position: myLatlng,
    map: map,
    title:"Uluru (Ayers Rock)"
});

google.maps.event.addListener(marker, 'click', function() {
  infowindow.open(map,marker);
});

あなたの問題はイベント ハンドラーにあると思います。この例では、1 つのマーカーと 1 つの情報ウィンドウのみを扱います。あなたの場合、すべてのマーカーに 1 つ、すべての情報ウィンドウに 1 つ、およびすべてのマーカーに対して 1 つの for ループの 2 つの配列が必要になります。イベント リスナーが作成され、特定の情報ウィンドウに結び付けられます。これはまさに私がプロジェクトで実行しなければならなかったことです。コードを後でアップロードすることを約束します。今のところアクセスできません。

あなたは線に沿って何かを探しています

    var markers = new Array();
    var infowindows - new Array();

//Fill the markers with the co-ordinates needed using push method
//then

for(i=0;i<markers.length;i++)
{
   google.maps.event.addListener(markers[i], 'click', function() {
  infowindows[i].open(map,markers[i]);
});
}

お役に立てれば !!

于 2012-05-10T09:34:39.180 に答える