これは、私のテスト例と私が理解しようとしているコードへのリンクです。 http://www.gaiser-vfx.com/media/maptest.html
<div id="googleMap">
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script>
<script type="text/javascript" src="http://code.google.com/apis/gears/gears_init.js"></script>
<div id="map_canvas" style="width:100%; height:300px"></div>
<script>
var noLocation = new google.maps.LatLng(52.1307, -3.78371);
var initialLocation;
var browserSupportFlag = new Boolean();
var map;
var myOptions = {
zoom: 6,
draggable: true,
minZoom: 0,
maxZoom: 20,
disableDefaultUI: true,
zoomControl: true,
scrollwheel: true,
disableDoubleClickZoom: true,
mapTypeId: google.maps.MapTypeId.false
};
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
google.maps.event.addListener(map, 'bounds_changed', function() {
var center = map.getCenter();
var zoomLevel = map.getZoom();
$('#LocationLatitude').val(center.lat().toFixed(5));$('#LocationLongitude').val(center.lng().toFixed(5));$('#LocationZoom').val(zoomLevel);});
var poly
var path = new google.maps.MVCArray;
poly = new google.maps.Polygon({
strokeWeight: 3,
fillColor: '#5555FF'
});
poly.setMap(map);
poly.setPaths(new google.maps.MVCArray([path]));
google.maps.event.addListener(map, 'click', addPoint);
function addPoint(event) {
path.insertAt(path.length, event.latLng);
var marker = new google.maps.Marker({
position: event.latLng,
map: map,
draggable: true
});
markers.push(marker);
marker.setTitle("#" + path.length);
google.maps.event.addListener(marker, 'click', function() {
marker.setMap(null);
for (var i = 0, I = markers.length; i < I && markers[i] != marker; ++i);
markers.splice(i, 1);
path.removeAt(i);
});
google.maps.event.addListener(marker, 'dragend', function() {
for (var i = 0, I = markers.length; i < I && markers[i] != marker; ++i);
path.setAt(i, marker.getPosition());
}
);
}
</script>
`
これは私が従おうとしている例です。
http://gmaps-samples-v3.googlecode.com/svn/trunk/poly/poly_edit.html
私のコードと例の主な違いの 1 つは、ページをロードするときに自分のコードをロードしようとしているときに、例で初期化関数呼び出しを使用していることです。私のマップ テストでは、マップ上にマーカーを配置し、それらをピックアップして移動することはできますが、ポリゴンを新しいマーカー ポイントに更新する各マーカーの機能と、各マーカーを削除する機能は機能していないようです。