データベースから照会された座標を使用して、Googlemaps にポリラインを描画するプロジェクトがあります。これらの座標は、車の 1 日のルートを示しています。別の日のルートを照会すると、前のルートと衝突します。前のものを削除しようとしたか、マップを null に設定するか、visible プロパティを false に設定しようとしました。しかし、どれも機能しませんでした。他の方法はありますか?ここに私のコードがあります:
drawPath = function () {
$.ajax({
type:'POST',
dataType:'json',
data:'cmd=getPath&id='+<?php echo $this->input->get('id'); ?>+'&date='+$("#time").val(),
url: 'index.php/ajax_controller',
success: function(data) {
var pathLatLng,nextLatLng;
var line;
var gBas=0;
var dBas=0;
for (var i = 0; i < data.length-1; i++) {
var lat1=data[i].LAT1.substring(0,2)+"."+data[i].LAT1.substring(2);
var lng1=data[i].LNG1.substring(1,3)+"."+data[i].LNG1.substring(3);
pathLatLng = new google.maps.LatLng(lat1,lng1);
lat1=data[i+1].LAT1.substring(0,2)+"."+data[i+1].LAT1.substring(2);
lng1=data[i+1].LNG1.substring(1,3)+"."+data[i+1].LNG1.substring(3);
nextLatLng = new google.maps.LatLng(lat1,lng1);
var color="#1BE09E";
var opacity={opacity: 0.50};
var path=[pathLatLng,nextLatLng];
var polyLineOpt={
path: path,
strokeColor: color,
strokeOpacity: 1.0,
strokeWeight: 2,
geodesic: true,
map: map
}
line = new google.maps.Polyline(polyLineOpt);
}
},
error:function(){
}
});
}
ご覧のとおり、AJAX で座標をクエリします。また、グローバル変数として line を使用しようとしました。