Me pregunto si hay alguna API que pueda consultar datos de OSM, por ejemplo; ¿Están (lon_1, lat_1) en tierra o en el mar? ¿O podría ser posible obtener una isla como un polígono bien definido? El único uso que he visto hasta ahora ha sido solo herramientas para renderizar datos OSM (generación de teselas).¿Hay una API para openstreetmap?
Respuesta
Encontré una gran API para leer datos de OpenStreetMap; Mapscript. Esta es una interfaz para MapServer, que puede leer archivos * .map y * .shp.Puede usar un índice espacial y, por lo tanto, es potencialmente extremadamente rápido. Realicé búsquedas aleatorias de polígonos (verificando si un polígono se cruza con la tierra) del archivo de forma de costa del mundo en 40 ms.
Por supuesto, la API de javascript se llama openlayers.
Sé sobre openlayers, pero ¿no es solo para mostrar/operar en mosaicos renderizados? –
Sí, hay un api y xapi (extensión api).
No he usado estos todavía.
Pero también está el cloudmade api de OSM. Jugué un poco con la API python.
No estoy seguro, si alguno de ellos podría ayudarle con su problema en particular, pero podría buscar un coastline cerca de su punto. Si su punto está dentro del polígono tagged natural=coastline, tiene una isla (o un continente) ...
¿Cuál es el formato XML que ofrece y cómo lo renderizo en una imagen ráster en mi aplicación? –
para generar un iamge desde el xml necesita un renderizador. hay varios. vea aquí http://wiki.openstreetmap.org/wiki/Renderers – vikingosegundo
Para consultas grandes y/o complejas [API de paso superior] (https://wiki.openstreetmap.org/wiki/Overpass_API) es el camino a seguir. – scai
Puede utilizar la API de geocodificación de CloudMade para buscar una isla en los datos de OpenStreetMap. La API devolverá la geometría del resultado de manera predeterminada, y esto me suena a lo que estás buscando. Por ejemplo, Arran de la costa de Escocia se puede encontrar mediante la siguiente petición http:.
http://geocoding.cloudmade.com/BC9A493B41014CAABB98F0471D759707/geocoding/find/Arran,UK.js?results=1
(y como un pequeño corte limpio, cambiando los .js a .html previsualizaciones el resultado
Hay más documentos y ejemplos en la API en developers.cloudmade.com/projects/show/geocoding-http-api Si no desea utilizar la API http, las API de abstracción están disponibles en varios idiomas: ruby, python, perl y otros.
He utilizado extractos de OSM CloudMade pero tuve algunos problemas con ellos. Por ejemplo, Noruega fue cortada demasiado fuerte, causando que algunas carreteras en la costa oeste desaparecieran.
Ahora prefiero la API de paso superior.
poner algo como esto en el formulario de consulta en http://www.overpass-api.de/query_form.html
<osm-script timeout="10000" element-limit="1073741824">
<union into="_">
<bbox-query into="_" s="52.3170669250001" n="52.4027433480001" w="4.80527567900009" e="4.97793537400008"/>
<recurse from="_" into="_" type="up"/>
<recurse from="_" into="_" type="down"/>
</union>
<print from="_" limit="" mode="meta" order="id"/>
</osm-script>
puso a los límites de la zona que desee, en grados, en los s, n, w atributos y E del elemento.
MapQuest tiene un conjunto de API de servicios web 'abierto' en base a los datos de OpenStreetMap con el término bastante no restrictivas (es decir, las condiciones siguen muy de cerca a la de la OSM):
Nadie parece haber mencionado aquí el Folleto API:
http://leafletjs.com/reference.html
Esto realmente no responde lo que el autor preguntó. Quiere una forma de consultar OpenStreetMap, no mostrar un mapa. Leaflet es "una biblioteca de JavaScript de código abierto para mapas interactivos optimizados para dispositivos móviles", como se cita en su sitio web. –
¿qué tal http://wiki.openstreetmap.org/wiki/Nominatim? Lo he usado y configuro mi propio servidor
- 1. ¿Hay una API para stumbleupon?
- 2. Ubicación geo inversa con OpenStreetMap
- 3. ¿Hay una API de desarrolladores para craigslist.org
- 4. ¿Hay una API para Cruise Control .NET?
- 5. Erlang: ¿hay una API para 'epmd'?
- 6. ¿Hay una API de TeX para C++?
- 7. OpenStreetMap en Android
- 8. Mostrar mapa como OpenStreetMap
- 9. ¿Cómo usar OpenStreetMap para obtener distancia entre dos puntos?
- 10. hay una API para GIT (C++ u otros idiomas)
- 11. ¿Hay una API de búsqueda para Yandex, preferiblemente en python?
- 12. ¿Hay una API (RESTful) para las páginas man de linux?
- 13. ¿Hay una API de Windows para detectar sobrecorriente de USB?
- 14. ¿Hay una API de afirmación fluida para MSTest?
- 15. ¿Hay una API para acceder al sistema de archivos ZFS?
- 16. ¿Hay una API en KVM para obtener un ZoneID?
- 17. ¿Hay una API para la función táctil asistida de iOS?
- 18. ¿Hay una buena API de fecha/hora disponible para Scala?
- 19. ¿Hay una API abierta/gratuita para registros públicos?
- 20. ¿Hay una API para POP/IMAP en iOS?
- 21. ¿Hay una API para leer libros de ePub?
- 22. ¿Hay una API apta para acceder a bugzilla?
- 23. ¿Hay una API de Android para eliminar alarmas?
- 24. ¿Hay una API de Java para tocar dispositivos como tabletas?
- 25. ¿Cómo funciona Google Voice Search? ¿Hay una API para eso?
- 26. ¿Hay una API de sensor Java SE?
- 27. Java Posix IPC ¿Hay una API?
- 28. ¿Hay una API de Google Insights?
- 29. Estándares de GIS abiertos, como openstreetmap, cloudmade?
- 30. ¿Hay una API sofisticada de Java WorkQueue?
Este MapServer parece ser bastante interesante. Gracias – vikingosegundo
Debe agregar su actualización como respuesta y aceptarla. –