var useZoomAllaScala = false;

// Calcola i metri per pixel 
function getMapScaleFactor(){
  var Distanza = Math.abs(left-right);
  var sFactor = Distanza / larghezza;
  return sFactor;
}


//funzione che aggiorna la scala nel frame
function fattore_attuale() {

var Distanza = Math.abs(left-right);
var sFactor = Distanza / larghezza;
parent.toolFrame.document.form_scala.text_scala.value = printScala(sFactor);
}

//funzione che controlla a che scala siamo 
//per verificare che non siamo sotto il 2000
//e spedisce la richiesta di immagine
//funzione richiamata da zoom in
function controlla_fattore() {

	var Distanza = Math.abs(left-right);
	  
	var sFactor = Distanza / larghezza;

	var questa_scala = printScala(sFactor);
	if (questa_scala < 500)//diverso nel sito generale dei piani strutturali cristina 
		{

				zoom_al_duemila();

	} else {
			sendMapXML();
		}


}

//funzione che restituisce il valore di scala 
//rispetto ad un certo fattore di scala
function printScala(fattore_di_scala){
var scala = Math.round(fattore_di_scala * config_scala / fatt_scala);

return scala;

} 


function converti(scala){

 return (fatt_scala * scala / config_scala);

} 


function zoom_alla_Scala() {
	
	useZoomAllaScala = true;		
	
	var inScale = parent.toolFrame.document.form_scala.text_scala.value;
	
	
	if(isNaN(inScale)) //controllo che sia un valore numerico
		{
			alert("Inserire un valore numerico");
		} else {
			if(inScale < 500) //controllo se la scala è minore del 2000
				{
					alert("Scala minima di visualizzazione 1:2000");
					zoom_al_duemila();
				} else {
					var midX = right - (Math.abs(left-right) / 2);
					var midY = top - (Math.abs(bottom-top) / 2);
					var newWidth = converti(inScale) * larghezza / 2;
					var newHeight = converti(inScale) * altezza / 2;
					//saveLastExtent();
					left = midX - newWidth;
					right = midX + newWidth;
					top = midY + newHeight;
					bottom = midY - newHeight;
					sendMapXML();
					
				}
		}
		
}

function zoom_al_duemila() {
	
	var inScale = 500;
	var midX = right - (Math.abs(left-right) / 2);
	var midY = top - (Math.abs(bottom-top) / 2);
	var newWidth = converti(inScale) * larghezza / 2;
	var newHeight = converti(inScale) * altezza / 2;
	//saveLastExtent();
	left = midX - newWidth;
	right = midX + newWidth;
	top = midY + newHeight;
	bottom = midY - newHeight;
	sendMapXML();
	
}


