Salve a tutti, ho provato a cercare altri topic simili ma ne ho trovato solo 1 che include però mappe fisse senza calcolo del percorso con partenza variabile quindi la soluzione non si adatta alle mie esigenze.
In pratica devo inserire 2 mappe con calcolo del percorso con partenza variabile in 2 div diversi nella stessa pagina.
qui sotto ho postato il codice da me utilizzato finora
il problema della mappa1 è che se gli faccio calcolare il percorso me lo inserisce in directions2 di mappa 2

i problemi di mappa2 sono:
1)la mappa2 che si vede al caricamento è identica a mappa1, ma appena gli faccio calcolare il percorso si corregge

2)se imposto in mappa 1 un indirizzo di partenza, viene automaticamente assegnato anche a mappa 2

Vi sarò infinitamente grato se riuscirete a dipanare questo dubbio, ho cambiato un bel po di variabili ma senza esito positivo!

Grazie


codice:
<body onload="initialize();initialize2()" onunload="GUnload()">

<div> 
		<h3>Titolo Mappa1</h3>



<script type="text/javascript">
 var map;
    var gdir;
    var geocoder = null;
    var addressMarker;

    function initialize() {
      
	  if (GBrowserIsCompatible()) {
		map = new GMap2(document.getElementById("map_canvas"));
		map.addControl(new GSmallMapControl());
		map.addControl(new GMapTypeControl());
		map.setCenter(new GLatLng(45.476744,9.20738), 13);
		
		var marker = new GMarker(new GLatLng(45.476744,9.20738))
		map.addOverlay(marker);
		marker.openInfoWindowHtml("Chiesa di Santa Prisca
Via di Santa Prisca, 11
00153 Roma");
		
		gdir = new GDirections(map, document.getElementById("directions"));
		GEvent.addListener(gdir, "error", handleErrors);
	  }
    }
    
    function setDirections(fromAddress) {
	  locale="it";
      gdir.load("from: " + fromAddress + " to: Via di Santa Prisca, 11, 00153 Roma");
    }

    function handleErrors(){
	   if (gdir.getStatus().code == G_GEO_UNKNOWN_ADDRESS)
	     alert("Indirizzo non trovato");
	   else if (gdir.getStatus().code == G_GEO_SERVER_ERROR)
	     alert("Si è verificato un errore nella geocodifica degli indirizzi");
	   
	   else if (gdir.getStatus().code == G_GEO_MISSING_QUERY)
	     alert("Manca un parametro");
	     
	   else if (gdir.getStatus().code == G_GEO_BAD_KEY)
	     alert("Errore nella Key Api.");

	   else if (gdir.getStatus().code == G_GEO_BAD_REQUEST)
	     alert("La richiesta non puo' essere correttamente risolta.");
	    
	   else alert("Si è verificato un errore");
	   
	}
</script>


<div id="map_canvas" style="width: 580px; height: 400px"></div>
<div id="location">
	<form action="#" onsubmit="setDirections(this.partenza.value); return false">
		Esempio: "Viale Marconi 100, roma"

		parti da:<input type="text" name="partenza"/><input type="submit" value="Calcola"/><input type='button' value='Stampa' onclick='Stampa()'/>
	</form>
</div>

<div id="directions" style="width: 580px; height:340px; overflow:auto"></div>

	</div>
	<div> 
		<h3>Titolo mappa2</h3>
		<script type="text/javascript">
 var map2;
    var gdir;
    var geocoder = null;
    var addressMarker;

    function initialize2() {
      
	  if (GBrowserIsCompatible()) {
		map2 = new GMap2(document.getElementById("map_canvas2"));
		map2.addControl(new GSmallMapControl());
		map2.addControl(new GMapTypeControl());
		map2.setCenter(new GLatLng(45.476744,9.20738), 13);
		
		var marker = new GMarker(new GLatLng(45.476744,9.20738))
		map2.addOverlay(marker);
		marker.openInfoWindowHtml("Villa Piccolomini
Via Aurelia, 164
00165 Roma");
		
		gdir = new GDirections(map2, document.getElementById("directions2"));
		GEvent.addListener(gdir, "error", handleErrors);
	  }
    }
    
    function setDirections(fromAddress) {
	  locale="it";
      gdir.load("from: " + fromAddress + " to: Via Aurelia, 164, 00165 Roma");
    }

    function handleErrors(){
	   if (gdir.getStatus().code == G_GEO_UNKNOWN_ADDRESS)
	     alert("Indirizzo non trovato");
	   else if (gdir.getStatus().code == G_GEO_SERVER_ERROR)
	     alert("Si è verificato un errore nella geocodifica degli indirizzi");
	   
	   else if (gdir.getStatus().code == G_GEO_MISSING_QUERY)
	     alert("Manca un parametro");
	     
	   else if (gdir.getStatus().code == G_GEO_BAD_KEY)
	     alert("Errore nella Key Api.");

	   else if (gdir.getStatus().code == G_GEO_BAD_REQUEST)
	     alert("La richiesta non puo' essere correttamente risolta.");
	    
	   else alert("Si è verificato un errore");
	   
	}
</script>


<div id="map_canvas2" style="width: 580px; height: 400px"></div>
<div id="location">
	<form action="#" onsubmit="setDirections(this.partenza2.value); return false">
		Esempio: "Viale Marconi 100, roma"

		parti da:<input type="text" name="partenza2" value="Via di Santa Prisca, 11, 00153 Roma"/><input type="submit" value="Calcola"/><input type='button' value='Stampa' onclick='Stampa()'/>
	</form>
</div>

<div id="directions2" style="width: 580px; height:340px; overflow:auto"></div>

	</div>
</body>