/*Simulador SIG*/
<!--

function simularSIG() {
	
	var valorBase = 150;
	var rad_morfologia ="";
	var rad_visibilidade ="";
	var rad_curvas ="";
	
	var area = document.formSimulador.area.value;
	var parcelas = document.formSimulador.parcelas.value;
	
	var blnErro = false;
	var fltValor = 0.00;
	var fltValorParcelas = 0.00;
	var fltCurvas = 0;
	var fltAreaHa = 0;
	
	var total = 0.00;
	
	//morfologia
	for (var i=0; i < document.formSimulador.morfologia.length; i++)
    {
	  if (document.formSimulador.morfologia[i].checked)
      {
      	var rad_morfologia  = document.formSimulador.morfologia[i].value;
      }
    }
   
	//visibilidade
	for (var i=0; i < document.formSimulador.visibilidade.length; i++)
    {
	  if (document.formSimulador.visibilidade[i].checked)
      {
      	var rad_visibilidade  = document.formSimulador.visibilidade[i].value;
      }
    }
    
	//curvas
	for (var i=0; i < document.formSimulador.curvas.length; i++)
    {
	  if (document.formSimulador.curvas[i].checked)
      {
      	var rad_curvas  = document.formSimulador.curvas[i].value;
      }
    }
    if(rad_curvas=="")
    	rad_curvas = 4;
    
        
   
   //area
   if(IsNumeric(area))
   		fltAreaHa =  parseFloat(area/10000);
   else
   		fltAreaHa = 0;
   		
   //parcelas	
   if(IsNumeric(parcelas)==false)
   		parcelas = 0;

   if (parcelas=="")
   		parcelas=0;
   
   	
   //validar campos		
   if(rad_morfologia=="")
   		blnErro = true;
   else if(rad_visibilidade=="")
   		blnErro = true;
   else if(rad_curvas=="")
   		blnErro = true;
   else if(area==0)
   		blnErro = true;
   else if(parcelas==0)
   		blnErro = true; 
   
   //processamento		
   if(blnErro==false)
   {
	   //morfologia
	   fltValor = parseFloat(getMorfologia(rad_morfologia, rad_visibilidade));

	   //parcelas
	   fltValorParcelas = parseFloat(getParcelas(parcelas));
	   
	   //curvas
	   fltCurvas = parseFloat(getCurvas(rad_curvas));
	   
	   //calcular valor
	   total = parseInt(calcular(fltValor, fltValorParcelas, fltCurvas, fltAreaHa, valorBase));
	   document.formSimulador.montante.value = total + " euros";
	   
	   	   
   }
   else
   {
   		document.formSimulador.montante.value = "dados inválidos";
	}
	
}

function calcular(fltValorMV, fltValorParcelas, fltCurvas, fltAreaHa, fltValorBase)
{
	var valor = 0;
	
	
	
	if(fltAreaHa<=2)
		valor = parseFloat(1.2 * fltValorBase);		
	else if(fltAreaHa<=10)
		valor = parseFloat(1.2 * fltValorBase) + parseFloat((0.075 * fltValorBase)* fltAreaHa);
	else if(fltAreaHa<=50)
		valor = parseFloat(1.8 * fltValorBase) + parseFloat((0.070 * fltValorBase)* fltAreaHa);
	else if(fltAreaHa<=100)
		valor = parseFloat(4.6 * fltValorBase) + parseFloat((0.045 * fltValorBase)* fltAreaHa);	
	else if(fltAreaHa<=250)
		valor = parseFloat(6.85 * fltValorBase) + parseFloat((0.030 * fltValorBase)* fltAreaHa);	
	else
		valor = parseFloat(11.35 * fltValorBase) + parseFloat((0.015 * fltValorBase)* fltAreaHa);	
	
	
	valor = parseFloat(fltValorMV * valor);
	valor = parseFloat(fltValorParcelas * valor);
	valor = parseFloat(fltCurvas * valor);
				
	return valor;
	
}

function getCurvas(intCurvas)
{
	var valor = 1;
	switch (intCurvas)
	{
		case "1":
			valor = 2;
			break;
		case "2":
			valor = 3;
			break;
		case "3":
			valor = 4;
			break;
	}
	
	return valor;
}

function getParcelas(dblParcelas)
{
	var valor = 0;
	var val = 0;
	var intGrupos = 0;
	
	if(dblParcelas<=5)
		valor = 1.5;
	else if(dblParcelas<=10)
		valor = 2;
	else
	{
		intGrupos = parseInt(dblParcelas/5);
		
		if(intGrupos>0)
			val = 3 * intGrupos;
		
		valor = 2 + val;
	}
	
	return valor;
}


function getMorfologia(intMorfologia, intVisibilidade)
{
	var valor = 0;
	
	switch(intMorfologia)
	{
		//plano
		case "1":
			switch(intVisibilidade)
			{
				case "1":
					valor = 1;
					break;
				case "2":
					valor = 2;
					break;
				case "3":	
					valor = 2.75;
					break;
			}
			break;
		//Pouco inclinado
		case "2":
			switch(intVisibilidade)
			{
				case "1":
					valor = 2.25;
					break;
				case "2":
					valor = 3;
					break;
				case "3":	
					valor = 3.75;
					break;
			}
			break;	
		//inclinado
		case "3":
			switch(intVisibilidade)
			{
				case "1":
					valor = 3;
					break;
				case "2":
					valor = 4;
					break;
				case "3":	
					valor = 5;
					break;
			}
			break;
		//muito inclinado					
		case "4":
			switch(intVisibilidade)
			{
				case "1":
					valor = 5;
					break;
				case "2":
					valor = 6;
					break;
				case "3":	
					valor = 8;
					break;
			}
			break;		
		default:
			valor = 0;				
					
	}
	
	
	return valor;
}

function resetValorSIG() {
	
	
	document.formSimulador.montante.value="0.00 euros";
	
}
 

function IsNumeric(sText)

{
   var ValidChars = "0123456789.";
   var IsNumber=true;
   var Char;

 
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
      }
   return IsNumber;
   
   }
   
-->

