Autor Tema: Problema al multiplicar latitud por -1  (Leído 371 veces)

Desconectado Chewii

  • PHPer@
  • **
  • Mensajes: 62
  • Karma: 0
  • Sexo: Masculino
  • Aprendiendo sobre Tortugas Marinas!!
    • Ver Perfil
Problema al multiplicar latitud por -1
« en: 19 de Julio de 2012, 21:46:54 pm »
Que mas amigos, les escribo por lo siguiente:

Mi sistema trabaja con coordenadas de latitud y longitud (Grados y Minutos), y tengo una funcion que genera la mascara de entrada y hace el calculo de conversion a decimales, hasta ahi todo bien. En mi form tengo un campo que me indica cuando al latitud es al Norte (1) o al Sur (2); cuanod la latitud esta registrada al norte, es decir 1, no tengo problemas, el detalle se me presenta cuando la latitud es igual a 2, ya que en la conversion se debe multiplicar por -1 para que de negativa. Les dejo als funciones que utilizo para generar mascara de entrada y hacer los calculos.

Código: [Seleccionar]
//Funcion que genera una mascara de entrada para la latitud
 function mascara_lat(lat){ 
              var mylat = ''; 
              mylat = mylat + lat; 
              if (mylat.length == 2){ 
                  mylat = mylat + '°'; 
                  document.forms[0].lat.value = mylat; 
              } 
              if (mylat.length == 5){ 
                  mylat = mylat + '´'; 
                  document.forms[0].lat.value = mylat; 
                  verifica_coord(); 
              } 
          } 
  //Funcion que verifica las coordenadas de latitud correctas       
         function verifica_coord(){ 
               m1= 1;
               
              var dec=''
              gds = (document.forms[0].lat.value.substring(0,2)); 
              min = (document.forms[0].lat.value.substring(3,5)); 
               
               situacao = ""; 
              // verifica grados y minutos
              if ((gds < 00) || (gds > 25)){
                  situacao = "falsa";
              }
              if (( min < 00) ||( min > 59)){ 
                  situacao = "falsa"; 
              } 
               if (document.forms[0].ns.value == 2) { //Aqui esta el detalle, nose si lo estoy haciendo bien
                  m1 = -1; 
              } 
               
              if (document.forms[0].lat.value == "") { 
                  situacao = "falsa"; 
              } 

              if (situacao == "falsa") { 
                  alert("Posicion Invalida!"); 
                  document.forms[0].lat.focus(); 
              } 
            dec = (parseFloat(gds) + (min / 60.0)) * m1;
            document.forms[0].xxxx.value = dec;
                 
        } 

Con la longitud no tengo problemas, ya que esta siempre es al oeste, espero me puedan ayudar con este detallito. Saludos...

Comunidad PHPeros

Problema al multiplicar latitud por -1
« en: 19 de Julio de 2012, 21:46:54 pm »