Foros del Web » Programando para Internet » PHP »

Como hacer un conversor de coordenadas

Estas en el tema de Como hacer un conversor de coordenadas en el foro de PHP en Foros del Web. Hola a todos, Dejo un tema sobre el cual no encuentro documentación.. He visto un conversor de coordenadas de mapas en una web y he ...
  #1 (permalink)  
Antiguo 08/06/2011, 12:22
 
Fecha de Ingreso: diciembre-2003
Mensajes: 173
Antigüedad: 20 años, 3 meses
Puntos: 1
Como hacer un conversor de coordenadas

Hola a todos,

Dejo un tema sobre el cual no encuentro documentación..

He visto un conversor de coordenadas de mapas en una web y he pensado en poder aplicar algo parecido en mi web para poder calcular las diferentes variantes de formatos que existen sobre la forma de mostrar las coordenadas de un mapa.

En resumen habe si pudierais asesorarme para poder saber como empezar a elaborarlo.

Esta es la web y esta en php:

http://www.asturnatura.com/sinflac/c...oordenadas.php

Un saludo,

Section1
__________________
Deja el mundo mejor que como lo encontraste... By B.P.
  #2 (permalink)  
Antiguo 08/06/2011, 12:24
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 2 meses
Puntos: 209
Respuesta: Como hacer un conversor de coordenadas

si tuvieramos la tabla de equivalencias no es dificil hacer las conversiones
  #3 (permalink)  
Antiguo 08/06/2011, 13:01
Avatar de skiper0125  
Fecha de Ingreso: octubre-2010
Ubicación: $this->Mexico('Toluca');
Mensajes: 1.127
Antigüedad: 13 años, 5 meses
Puntos: 511
Respuesta: Como hacer un conversor de coordenadas

puedes consultar su codigo fuente y de esa manera saber como lo hacen, tomando en cuenta que la mayoria de los procesos los realizan con javascript y no con php

saludos
__________________
Recuerda que estamos aquí para orientarte, y no para hacer tu trabajo.
Si mi aporte fue de ayuda, recuerda que agradecer no cuesta nada +1

Skiper0125
  #4 (permalink)  
Antiguo 08/06/2011, 13:11
 
Fecha de Ingreso: diciembre-2003
Mensajes: 173
Antigüedad: 20 años, 3 meses
Puntos: 1
Respuesta: Como hacer un conversor de coordenadas

Quieres decir que con java se pueden hacer la mayoria de las conversiones?

Me informare un poco más y haber si saco algo.

Gracias por la orientación.
__________________
Deja el mundo mejor que como lo encontraste... By B.P.
  #5 (permalink)  
Antiguo 08/06/2011, 13:15
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 2 meses
Puntos: 209
Respuesta: Como hacer un conversor de coordenadas

javascript no java, son lenguajes myu diferentes
  #6 (permalink)  
Antiguo 08/06/2011, 13:19
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 7 meses
Puntos: 202
Respuesta: Como hacer un conversor de coordenadas

Cita:
Iniciado por Section1 Ver Mensaje
Quieres decir que con java se pueden hacer la mayoria de las conversiones?

Me informare un poco más y haber si saco algo.

Gracias por la orientación.
java no es igual que javascript.
No obstante el código js de esa web no está ni ofuscado...
No es muy "bonito" copiar algo ya hecho pero si no sabes como hacerlo ¿Por qué no le echas un ojo al código fuente?... podrías empezar mirando la función: function cambio2() ... y después las posteriores
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #7 (permalink)  
Antiguo 10/06/2011, 09:15
 
Fecha de Ingreso: diciembre-2003
Mensajes: 173
Antigüedad: 20 años, 3 meses
Puntos: 1
Respuesta: Como hacer un conversor de coordenadas

Bunas chicos,

Ya he desarrollado el codigo para obtener la respuesta a mi pregunta... asi que como el conocimiento es para compartirlo y no para guardarlo para uno mismo... aqui os dejo el codigo.

Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es">
<head>
<title>Calculadora - conversión de coordenadas</title>
 <script type="text/javascript" src="http://xxxxxxxxxx.xxxx/functions/usng.js"></script>
  <script type="text/javascript">// convert a latitude to deg and decimal minutes
 
            function lat2dm(input) {
 
               if (input > 0) {
 
                  return (deg2dm(input)+"N")
 
               }
 
               else {
 
                  return (deg2dm(input)+"S")
 
               }
 
            }
 
             
 
            // convert a latitude to deg and decimal minutes
 
            function lon2dm(input) {
 
               if (input > 0) {
 
                  return (deg2dm(input)+"E")
 
               }
 
               else {
 
                  return (deg2dm(input)+"W")
 
               }
 
            }
 
             
 
            // converts decimal degrees to degrees and decimal minutes
 
            // input is a float, return value a string
 
            function deg2dm(input) {
 
               var cdeg
 
               var cmin
 
               var deg = Math.floor(Math.abs(input))
 
               var min = (Math.abs(input) - deg)*60
 
            
 
               if (deg < 10) { cdeg = "0"+deg }
 
               else {cdeg = ""+deg }
 
               if (min < 10) { cmin = "0"+min.toFixed(3) }
 
               else {cmin = ""+min.toFixed(3) }
 
            
 
               return(cdeg+"-"+cmin)
 
            }
 
            
 
            
 
        // convert a latitude to deg-min-sec
 
            function lat2dms(input) {
 
               if (input > 0) {
 
                  return (deg2dms(input)+"N")
 
               }
 
               else {
 
                  return (deg2dms(input)+"S")
 
               }
 
            }
 
             
 
            // convert a latitude to deg-min-sec
 
            function lon2dms(input) {
 
               if (input > 0) {
 
                  return (deg2dms(input)+"E")
 
               }
 
               else {
 
                  return (deg2dms(input)+"W")
 
               }
 
            }
 
            
 
            // converts decimal degrees to deg-min-sec
 
            // input is a float, return value a string
 
            function deg2dms(input) {
 
               var cdeg
 
               var cmin    
 
               var csec
 
            
 
               var temp = Math.abs(input)
 
               var deg = Math.floor(temp)
 
               var min = Math.floor((temp - deg)*60)
 
               var sec = (((temp-deg)*60)-min)*60
 
            
 
            
 
               if (deg < 10) { cdeg = "0"+deg }
 
               else {cdeg = ""+deg }
 
            
 
               if (min < 10) { cmin = "0"+min }
 
               else {cmin = ""+min }
 
            
 
               if (sec < 10) { csec = "0"+sec.toFixed(1) }
 
               else {csec = ""+sec.toFixed(1) }
 
            
 
               return(cdeg+"-"+cmin+"-"+csec)
 
            }
 
        </script>
  
 </head>
<body onload="cambio1()">
<script type="text/javascript"> 
                     
                    
 
                function cambio1(){
 
                        pointy=<? echo $_GET["gradoslat"]; ?>;
 
                        pointx=<? echo $_GET["gradoslon"]; ?>;
 
                         
                        var northamerica=1
 
                        var ngCoords = LLtoUSNG(pointy,pointx, 5);
 
                        var mgrsCoords = LLtoMGRS(pointy,pointx, 5);
 
                        var utmcoords=[]
 
                        var zone
 
                        LLtoUTM(pointy,pointx,utmcoords,0)
 
                        zone = utmcoords[2]
 
                    
 
                        if (pointy>13 && pointy<90 && ((pointx<-46 && pointx>-180) || (pointx>169 && pointx<180))) { 
 
                            northamerica = 1
 
                        }
 
                        else {
 
                            northamerica = 0
 
                        }
 
                        
 
                        var utmx = utmcoords[0];
 
                        var utmy = utmcoords[1];
 
                        if (utmy < 0) { utmy+=10000000; }
 
 
 
        
 
                        document.getElementById("resultados").style.display="block";
 
                        document.getElementById("res").innerHTML= zone + " " + UTMLetterDesignator(pointy)+" " + utmx.toFixed(0) + " " + utmy.toFixed(0);
 
                        document.getElementById("res2").innerHTML=LLtoMGRS(pointy,pointx,4);
 
                        cres3=lat2dms(pointy) + ", " + lon2dms(pointx);
 
                        cres3=cres3.replace(/-/g," ");
 
                        cres3=cres3.replace("W"," O");
 
                        cres3=cres3.replace("E"," E");
 
                        cres3=cres3.replace("N"," N");
 
                        cres3=cres3.replace("S"," S");
 
                        document.getElementById("res3").innerHTML=cres3;
 
                        
 
                        cres4=lat2dm(pointy) + ", " + lon2dm(pointx);
 
                        cres4=cres4.replace(/-/g," ");
 
                        cres4=cres4.replace("W"," O");
 
                        cres4=cres4.replace("E"," E");
 
                        cres4=cres4.replace("N"," N");
 
                        cres4=cres4.replace("S"," S");
 
                        document.getElementById("res4").innerHTML=cres4;
 
                        document.getElementById("res5").innerHTML=pointy+", "+pointx;
 
                        initialize();
 
                        
 
                    }
 
                </script> <!--//-->
<form name='inputboxes'>
<div id="resultados" ><table><tr><td>UTM</td><td><span id="res"></span></td></tr><tr><td>MGRS</td><td><span id="res2"></span></td></tr><tr><td>G M S.s</td><td><span id="res3"></span></td></tr><tr><td>G M.m</td><td><span id="res4"></span></td></tr><tr><td>G.g</td><td><span id="res5"></span></td></tr></table></div></form>

</body></html>

Para invocarlo debeis usar las dos variables iniciales (gradoslat y gradoslon) junto a la url del archivo, que contengan las cordenadas basicas en grados..

Ejemplo: index3.php?gradoslat=53.5465&gradoslon=5.227

Un saludo y espero vuestras aportaciones.
__________________
Deja el mundo mejor que como lo encontraste... By B.P.

Etiquetas: conversor, coordenadas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:32.