У меня есть проект, который сохраняет путевые точки в базе данных в соответствии с положением маркера, я хочу использовать пользовательские значки для этих маркеров, поэтому я подавил маркеры маршрута (зеленые маркеры).
Но если я перемещу маркер в другую точку, он не изменит линию рендеринга в соответствии с положением маркера, я хочу «обновить» этот рендерер, когда я изменю положение маркера.
Это ссылка на мой проект с оригинальной версией Вот мой код: (отредактировано с моя попытка)
var map, ren, ser;
var data = {};
var data2 = {};
var marker;
var infowindow;
var directionsDisplay;
var wayA = [];
var wayB = [];
var directionResult = [];
function goma()
{
var mapDiv = document.getElementById('mappy');
var mapOptions = {
zoom: 12,
center: new google.maps.LatLng(-23.563594, -46.654239),
mapTypeId : google.maps.MapTypeId.ROADMAP
}
map = new google.maps.Map( mapDiv, mapOptions );
google.maps.event.addListener(map, "click", function(event) {
if (wayA.length == wayB.length) {
wayA.push(new google.maps.Marker({
draggable: true,
position: event.latLng,
map: map
}));
} else {
wayB.push(new google.maps.Marker({
draggable: true,
position: event.latLng,
map: map
}));
ren = new google.maps.DirectionsRenderer( {'draggable':true, suppressMarkers : true} );
ren.setMap(map);
ren.setPanel(document.getElementById("directionsPanel"));
ser = new google.maps.DirectionsService();
ser.route({ 'origin': wayA[wayA.length-1].getPosition(), 'destination': wayB[wayB.length-1].getPosition(), 'travelMode': google.maps.DirectionsTravelMode.DRIVING},function(res,sts) {
if(sts=='OK') {
directionResult.push(res);
ren.setDirections(res);
} else {
directionResult.push(null);
}
});
}
});
}