todos saber paises mis mapa los longitud lector latitud google geográficas geograficas ejemplos definicion coordenadas con como buscar php jquery google-maps geolocation geocoding

php - saber - lector de coordenadas



Conversión de latitud/longitud en el nombre de la ciudad?(geolocalización inversa) (6)

Estoy trabajando en una bolsa de trabajo en Codeigniter PHP + jQuery donde los empleadores ingresan a su ubicación y utilizamos Google Maps API para trazarlo. Si bien esto ha tenido excelentes resultados de usabilidad, el problema es que cuando intentamos mostrar estas ubicaciones a los buscadores de trabajo, son confusas y difíciles de discernir visualmente (dicen así: "02905, a 2 millas de distancia", "171 John St., 4 millas de distancia "," Providence, Rhode Island, a 10 millas de distancia ".

Quiero poder revertir la geolocalización de una longitud / latitud a un nivel establecido (idealmente, nombre de la ciudad) para que en los resultados de búsqueda pueda tener las ubicaciones enumeradas de la siguiente manera: "Providence, RI, a 10 millas de distancia", " Providence, RI, a 5 millas de distancia "," Cranston, Rhode Island, a 16 millas de distancia ".

¿Hay alguna manera de revertir el geocodificación a la ciudad? Veo muchos ejemplos de formas de revertir el geocodificación a la ubicación direccionable más cercana, pero no hay forma de controlar el nivel.

Espero que esté claro! Siéntase libre de comentar con cualquier pregunta que necesite aclaración.


¿No puedes simplemente hacer la dirección completa y luego soltar la calle y el número?

Yo diría que sería más valioso usar la dirección completa, para obtener una distancia más precisa (incluso si solo muestra la ciudad, estado).

EDITAR: Si lo haces de esa manera, al menos debe devolverse en un formulario estándar, que luego puedes fácilmente convertir los datos que deseas.


El Geocodificador de Google, que admite la geocodificación inversa, devuelve los componentes de la dirección . Solo necesita sacar el componente de la dirección etiquetada con locality y political si solo desea el nombre de la ciudad. Si también quieres estados, están etiquetados con administrative_area_level_1


Los servicios de geocodificación inversa (como Google, Yahoo y GeoNames) funcionarán bien para este propósito con algunas advertencias:

  • Aunque no puedo decir con certeza cómo funcionan los servicios comerciales, la última vez que revisé GeoNames utilizo la estrategia de punto de interés más cercana para determinar la ciudad. Esto puede ser un problema si su punto de consulta está cerca de un límite entre dos ciudades y la entrada más cercana en la base de datos de GeoNames está al otro lado de ese límite. Esto realmente sucede bastante en mi experiencia, así que esto no es solo un tecnicismo.
  • Además, si le preocupa la experiencia del usuario, cualquier solución API web agrega latencia y reduce la confiabilidad.

Dirijo un sitio web que ofrece una serie de API geográficas comerciales y vende las bibliotecas Java que creamos para respaldar esas API. Uno de ellos (que solo tiene cobertura de EE. UU.) Utiliza un mapa poligonal adecuado de las ciudades y pueblos de EE. UU. Para devolver el resultado que contiene su punto de consulta. Es preciso y rápido, por lo que si se trata de un componente de misión crítica en su sistema, le sugiero que consulte nuestro sitio web:

http://askgeo.com

La página que es específica para buscar ciudades de lat / lon es:

http://askgeo.com/database/UsPlace2010


FUENTES LIBRES (por ejemplo, Creative Commons)

Geonames

Si busca fuentes libres (como libertad), puede usar la API de Geonames findNearbyPlaceName.

Por ejemplo, lo siguiente devuelve Placename más cercano:

http://api.geonames.org/findNearbyPlaceName?lat=47.3&lng=9&username=demo

Más información está disponible aquí

http://www.geonames.org/export/web-services.html#findNearbyPlaceName

Freebase

En lugar de un solo punto, toma un recuadro delimitado. Muestra de llamada:

http://api.freebase.com/api/service/geosearch?location=[30.2,50.4,30.6,50.8]&location_type=/location/citytown&inside=true&indent=1

Geocoder.ca

Geocodificación inversa para direcciones norteamericanas.

Información: http://geocoder.ca/

Ejemplo de llamada: http://geocoder.ca/?latt=40.70771000786733&longt=-74.0109443664550&reverse=1&allna=1&geoit=xml&corner=1&jsonp=1&callback=test

Mapa Quest API

Usando el servicio de nominatim de Open Street Map:

http://open.mapquestapi.com/nominatim/v1/search?q=50.4,30.4&format=json

FUENTES NO LIBRES

Yahoo PlaceFinder

Documentación http://developer.yahoo.com/geo/placefinder/

Ejemplo de llamada:

http://where.yahooapis.com/geocode?q=38.898717,+-77.035974&gflags=R&appid=[yourappidherehere]

API de Google Maps

Documentación:

http://code.google.com/apis/maps/documentation/geocoding/#ReverseGeocoding


La geolocalización Html5 requiere permiso del usuario. Si no desea este comportamiento, puede buscar un proveedor externo como https://geoip-db.com . Ofrecen un servicio gratuito de geolocalización basado en direcciones IP.

Prueba este ejemplo:

<!DOCTYPE html> <html> <head> <meta name="viewport" content="initial-scale=1.0, user-scalable=no"/> <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> <title>Geo City Locator</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script> </head> <body > <div>Country: <span id="country"></span></div> <div>State: <span id="state"></spa></div> <div>City: <span id="city"></span></div> <div>Latitude: <span id="latitude"></span></div> <div>Longitude: <span id="longitude"></span></div> <div>IP: <span id="ip"></span></div> <script> $.getJSON(''https://geoip-db.com/json/geoip.php?jsonp=?'') .done (function(location) { $(''#country'').html(location.country_name); $(''#state'').html(location.state); $(''#city'').html(location.city); $(''#latitude'').html(location.latitude); $(''#longitude'').html(location.longitude); $(''#ip'').html(location.IPv4); }); </script> </body> </html>


Estaba buscando una API para convertir lat / long a city. Parece que esta fue la pregunta original en este hilo también.

Vi los datos " http://download.geonames.org/export/dump/ " compartidos en otro hilo de Dadas las coordenadas lat / long, ¿cómo podemos averiguar la ciudad / país? e implementé mi propio servicio web.

Puede verlo ejecutándose en http://scatter-otl.rhcloud.com/location?lat=36&long=-78.9. Simplemente cambie la latitud y la longitud de sus ubicaciones.

Se implementa en OpenShift (plataforma RedHat). La primera llamada después de un largo período de inactividad puede tomar algún tiempo, pero generalmente el rendimiento es satisfactorio. Siéntase libre de utilizar este servicio como desee ...

Además, puede encontrar el origen del proyecto en https://github.com/turgos/Location .