Caja envolvente de GeoJSON
Obtén la caja envolvente, el centro, el área y la longitud de cualquier GeoJSON, en ambos órdenes de coordenadas.
La Caja envolvente de GeoJSON funciona por completo en tu navegador. El GeoJSON que pegas se analiza en tu dispositivo y nunca se sube.
Abrir el Visor de GeoJSON
Acerca de Caja envolvente GeoJSON
Caja envolvente de GeoJSON lee cualquier GeoJSON —un Feature, un FeatureCollection, una geometría suelta, un GeometryCollection o incluso un array de coordenadas— y devuelve los cuatro números que lo encierran. Esos números se emiten dos veces a propósito. La RFC 7946 define el orden del bbox de GeoJSON como oeste, sur, este, norte, con la longitud primero, mientras que Leaflet y muchas API cartográficas quieren sur, oeste, norte, este, con la latitud primero. Confundirlos es una de las formas más habituales de acabar mirando el hemisferio equivocado. El área y la longitud se calculan sobre la esfera y no sobre el plano de latitud y longitud.
Características
- Lee Features, FeatureCollections, geometrías y arrays de coordenadas
- Emite el bbox en los órdenes de GeoJSON y de latitud/longitud
- La caja también se genera como Feature de GeoJSON listo para pegar
- Punto central de la caja en latitud y longitud
- Anchura y altura de la caja como distancias reales sobre el terreno
- Área esférica de polígonos con los huecos descontados
Cómo usar Caja envolvente GeoJSON
- Pega tu GeoJSON, o carga el ejemplo para ver la forma de la salida
- Lee los límites oeste, sur, este y norte
- Copia el bbox en el orden de coordenadas que espere tu biblioteca
- Usa la salida de polígono si quieres dibujar la caja en un mapa
Ejemplo
Entrada
{"type":"Polygon","coordinates":[[[-0.1757,51.5073],[-0.1502,51.5073],[-0.1502,51.5122],[-0.1757,51.5122],[-0.1757,51.5073]]]}
Salida
[-0.1757, 51.5073, -0.1502, 51.5122]
El orden de GeoJSON pone la longitud primero, al revés que el orden que usan casi todas las bibliotecas de mapas.
Errores comunes y solución de problemas
- Un mapa dibuja la caja en el lugar equivocado. — Casi seguro has usado el orden de coordenadas incorrecto. El fitBounds de Leaflet quiere la latitud primero; la propiedad bbox de GeoJSON quiere la longitud primero. Por eso aquí se muestran ambos por separado.
- El área es mucho menor que la de un cálculo plano. — La cifra esférica es la correcta. Un grado de longitud son 111 km en el ecuador pero solo 78 en Londres, así que tratar los grados como una rejilla uniforme infla el área en latitudes altas.
- El JSON se analiza pero no se encuentran coordenadas. — La estructura no tiene ningún array de coordenadas. Comprueba que los features tengan un objeto geometry y no solo properties, algo que ocurre cuando una exportación pierde la columna geométrica.
Preguntas frecuentes
- ¿Qué orden de coordenadas usa un bbox de GeoJSON?
- Oeste, sur, este, norte: es decir, longitud mínima, latitud mínima, longitud máxima, latitud máxima. GeoJSON pone la longitud antes que la latitud en todo el formato, al revés de como se dice normalmente.
- ¿Por qué mi biblioteca de mapas quiere el bbox en otro orden?
- Leaflet, Google Maps y varias más toman la latitud primero porque así se escriben y se dicen las coordenadas. GeoJSON sigue en cambio la convención x-luego-y de la geometría. Aquí se emiten ambos órdenes.
- ¿Cómo se calcula el área del polígono?
- Con la fórmula del exceso esférico sobre una esfera de radio terrestre medio, que tiene en cuenta la convergencia de los meridianos hacia los polos. Los anillos interiores se restan, así que un polígono con huecos indica su área neta.
- ¿Se sube mi GeoJSON para medirlo?
- No. El documento se analiza y se mide en tu navegador, así que unos datos de ubicación que pueden ser sensibles nunca cruzan la red.
Herramientas relacionadas
Todas las herramientas de ArrayKit