Comprobador de punto en polígono
Pega un polígono GeoJSON y una lista de coordenadas para ver cuáles caen dentro.
El Comprobador de punto en polígono funciona por completo en tu navegador. Los límites y las coordenadas, que suelen ser datos de ubicación sensibles, se procesan en tu dispositivo.
Abrir el visor de GeoJSON
Acerca de Comprobador de punto en polígono
Comprobar si una coordenada cae dentro de una forma es la pregunta detrás de toda geocerca, zona de reparto o área de influencia, y es fácil equivocarse de forma sutil. Esta herramienta ejecuta el trazado de rayo par-impar contra cada polígono de un documento GeoJSON y clasifica cada punto como dentro, fuera o justo en el borde. Los anillos interiores se comportan como manda la especificación: un punto dentro de un hueco sale fuera. Las coordenadas pueden escribirse como las escribe la gente, la latitud primero, o en el orden longitud-latitud del propio GeoJSON, y los resultados se exportan como FeatureCollection para dibujarlos en un mapa.
Características
- Lee Polygon, MultiPolygon, Feature, FeatureCollection y GeometryCollection
- Huecos descontados: un punto en un anillo interior sale fuera
- Puntos sobre el borde señalados aparte, con una tolerancia ajustable
- Acepta orden lat/lng o lng/lat, además de POINT en WKT y URI geo:
- Prueba una lista entera de coordenadas y nombra la forma que coincide
- Las letras N, S, E y W tienen prioridad sobre el orden declarado
- Resultados exportables como GeoJSON con el veredicto en cada feature
Cómo usar Comprobador de punto en polígono
- Pega el polígono o la FeatureCollection contra la que quieres comprobar
- Introduce las coordenadas a probar, una por línea
- Indica si tus coordenadas van con la latitud o la longitud primero
- Lee el veredicto de cada punto y exporta el resultado como GeoJSON
Ejemplo
Entrada
51.5074, -0.1278
Salida
inside — Central London
Cada punto indica la feature con nombre que lo contiene, así que las zonas solapadas siguen distinguiéndose.
Errores comunes y solución de problemas
- Todos los puntos salen fuera. — Casi seguro que el orden de coordenadas está invertido. GeoJSON guarda la longitud primero mientras que la gente escribe la latitud primero: cambia el selector y los resultados se darán la vuelta.
- Un punto que debería estar dentro sale en el borde. — Las coordenadas redondeadas caen a un pelo del límite. Amplía la tolerancia de borde o usa la precisión completa del punto.
- No se encuentran polígonos en el documento. — Solo las geometrías Polygon y MultiPolygon pueden contener un punto. Una capa de líneas o de puntos no tiene nada que comprobar.
- Un punto dentro de la forma sale fuera. — Comprueba si está dentro de un hueco. Los anillos posteriores al primero son interiores y la especificación los trata como recortados de la forma.
Preguntas frecuentes
- ¿Cómo funciona una prueba de punto en polígono?
- Se lanza un rayo desde el punto y se cuentan los bordes que cruza. Un número impar significa que está dentro, porque cada cruce cambia de dentro a fuera. Los huecos salen de la misma regla sin nada extra.
- ¿Admite polígonos que cruzan el antimeridiano?
- Solo si el polígono ya está partido en los 180 grados, que es lo que pide la RFC 7946. Una forma con coordenadas más allá de ±180 se comprueba tal cual, y eso rara vez es lo que se busca.
- ¿Qué pasa con un punto exactamente sobre el borde?
- Se informa como punto en el límite en vez de forzarlo a un lado, porque ahí la respuesta es una convención y no geometría. La tolerancia decide qué se considera borde.
- ¿Puedo comprobar cientos de coordenadas a la vez?
- Sí. Cada línea se prueba contra todos los polígonos del documento y la tabla nombra la forma que coincide. Todo ocurre en la página, así que una lista larga sigue siendo rápida.
- ¿Es fiable para países o continentes enteros?
- La prueba se hace en el plano de latitud y longitud, y es exacta para la pregunta de dentro o fuera mientras los bordes se traten como rectos en esas coordenadas, que es lo que asume el propio GeoJSON.
Herramientas relacionadas
Todas las herramientas de ArrayKit