Quiero crear 2 nuevas longitudes y 2 nuevas latitudes basadas en una coordenada y una distancia en metros, quiero crear un bonito cuadro delimitador alrededor de cierto punto. Es para una parte de la ciudad y un máximo de ± 1500 metros. Por tanto, no creo que deba tenerse en cuenta la curvatura de la tierra.
Entonces tengo 50.0452345
(x) e 4.3242234
(y) y quiero saber x + 500 metros, x - 500 metros, y - 500 metros, y + 500 metros
Encontré muchos algoritmos, pero casi todos parecen lidiar con la distancia entre puntos.
algorithm
geolocation
Benjamin Udink ten Cate
fuente
fuente
Respuestas:
El número de kilómetros por grado de longitud es aproximadamente
donde
theta
está la latitud en grados yr_earth
es aproximadamente 6378 km.El número de kilómetros por grado de latitud es aproximadamente el mismo en todas las ubicaciones, aprox.
Entonces puedes hacer:
Siempre que
dx
ydy
sean pequeños en comparación con el radio de la tierra y no te acerques demasiado a los polos.fuente
cos(latitude*180/pi)
La respuesta aceptada es perfectamente correcta y funciona. Hice algunos ajustes y me convertí en esto:
Espero que esto también ayude.
fuente
0.0000089
? Intenta evitar los números mágicos, nadie lo entenderá.Para la latitud, haga:
Para la longitud haz:
La variable
your_meters
puede contener un valor positivo o negativo.fuente
¿Ha comprobado: ¿Cómo encuentro la latitud / longitud que está x km al norte de una latitud / longitud determinada ?
Estos cálculos son molestos en el mejor de los casos, he hecho muchos de ellos. La fórmula haversine será tu amiga.
Alguna referencia: http://www.movable-type.co.uk/scripts/latlong.html
fuente
Tuve que pasar aproximadamente dos horas para resolver la solución de @nibot, simplemente necesitaba un método para crear un cuadro de límite dado su punto central y ancho / alto (o radio) en kilómetros:
No entiendo la solución matemática / geográficamente. Modifiqué la solución (por intento y error) para obtener las cuatro coordenadas:
Norte:
Este:
Sur:
Oeste:
fuente
si no tiene que ser muy exacto, entonces: cada 10000 metros es aproximadamente 0,1 para latitud y longitud. por ejemplo, quiero cargar ubicaciones 3000 metros alrededor de point_A de mi base de datos:
fuente
fuente
fuente