ForHosting KIT · Viaggi e geografia

Unione riquadri delimitanti

Due riquadri, uno di latitudine da 40,7 a 40,8 e uno da 40,75 a 40,9, si uniscono in uno solo da 40,7 a 40,9, con longitudini da −74,1 a −73,85. Ottiene anche larghezza, altezza, area e centro. Gratis nel suo browser.

  • Gratis
  • Funziona nel suo browser
  • Senza registrazione
  • I suoi dati restano sul dispositivo
Usalo da WebAPIEmailTelegramApp presto
Se inserisce
Latitudine minima A
40,7
Latitudine massima A
40,8
Longitudine minima A
-74,1
Longitudine massima A
-73,9
Latitudine minima B
40,75
Latitudine massima B
40,9
Ottiene
Latitudine minima
40,7
Latitudine massima
40,9
Longitudine minima
-74,1
Longitudine massima
-73,85

Un calcolatore di unione di riquadri delimitanti riceve due rettangoli geografici definiti da latitudine e longitudine minime e massime e restituisce il più piccolo rettangolo allineato agli assi che contiene per intero entrambi. Le pipeline cartografiche raccolgono spesso inviluppi separati —uno per layer, cluster o tile di download— e hanno bisogno di un solo viewport, finestra di query o estensione di export senza inventare una libreria geometrica pesante.

Cos'è l'unione di riquadri delimitanti e quando Le serve

Un riquadro delimitante geografico allineato agli assi è il rettangolo definito da una latitudine sud, una latitudine nord, una longitudine ovest e una longitudine est. Quando Lei dispone già di due tali rettangoli —da query di feature indipendenti, cache di tile, pacchetti offline o microservizi fratelli— spesso serve l'unico inviluppo che copre ogni angolo di entrambi senza calcolare una dissoluzione completa di multipoligoni.

L'unione classica dei riquadri allineati usa estremi componente per componente: il bordo sud dell'unione è il minore dei due bordi sud; il nord è il maggiore dei due bordi nord; l'ovest è la minore delle due longitudini occidentali; l'est è la maggiore delle due longitudini orientali. Quella costruzione è il più piccolo rettangolo allineato che contiene ancora entrambi gli input, misurato nello stesso sistema lat/lon.

Docenti, studenti di GIS e ingegneri backend esigono che gli intervalli invertiti (min maggiore di max) siano errori duri: scambiare gli angoli in silenzio nasconderebbe bug del client e produrrebbe inviluppi che non corrispondono ai layer previsti. I casi annidati si risolvono con la stessa regola min/max: se il riquadro A sta interamente dentro B, l'unione è B; se sono identici, l'unione è l'uno o l'altro.

Riquadri disgiunti producono comunque un inviluppo valido che copre il vuoto tra loro —utile per inquadrare la camera della mappa anche quando i layer non si sovrappongono. Questa pagina è per chi ha già due bbox e serve l'estensione combinata, non per chi ha solo un centro e un raggio (usi prima uno strumento riquadro punto-raggio) né per chi serve buffer geodetici su un ellissoide.

Unire inviluppi di layer e query per i viewport

Combini due riquadri delimitanti indipendenti di layer di feature in un'unica estensione di camera o di richiesta tile che copra ogni geometria restituita.

Prefiltri spaziali SQL tra microservizi

Unisca gli inviluppi di risultato del servizio A e del servizio B in un'unica finestra BETWEEN prima di un join o un raffinamento di distanza più pesante.

Come si calcola il riquadro delimitante dell'unione?

È il più piccolo riquadro allineato che contiene entrambi gli input.

Perché un min maggiore del max viene rifiutato?

Un intervallo invertito è quasi sempre un bug del client.

Gestisce l'antimeridiano?

Lo strumento applica min/max puro e non inventa un multipoligono che attraversa la linea del cambio data. Prepari intervalli non avvolti lato client se serve quel caso.

Il calcolatore di unione di riquadri delimitanti è gratis?

Lo strumento del browser è gratis e gira in locale.

Cosa succede se un riquadro sta del tutto dentro l'altro?

L'unione è semplicemente il riquadro più grande, perché i suoi bordi sono già gli estremi. Se i due riquadri sono identici, l'unione coincide con uno qualsiasi dei due. La stessa regola di minimi e massimi copre entrambi i casi.

Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.

POSThttps://api.kit.forhosting.com/geo/bbox-union

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

curl -X POST https://api.kit.forhosting.com/geo/bbox-union \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"min_lat_a":40.7,"max_lat_a":40.8,"min_lon_a":-74.1,"max_lon_a":-73.9,"min_lat_b":40.75,"max_lat_b":40.9,"min_lon_b":-74.05,"max_lon_b":-73.85}'
{
  "min_lat_a": 40.7,
  "max_lat_a": 40.8,
  "min_lon_a": -74.1,
  "max_lon_a": -73.9,
  "min_lat_b": 40.75,
  "max_lat_b": 40.9,
  "min_lon_b": -74.05,
  "max_lon_b": -73.85
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "geo.bbox_union",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

Inserisca otto angoli finiti in gradi decimali (min e max di lat e lon per il riquadro A e il B); lo strumento restituisce min_lat, max_lat, min_lon e max_lon dell'unione, un array bbox in stile GeoJSON [west, south, east, north], larghezza e altezza in gradi, area in gradi al quadrato, il centro, i riquadri di ingresso, un indicatore di relazione per casi identici o annidati, e righe di derivazione passo passo. Riquadri invertiti e coordinate fuori intervallo falliscono con invalid_input così Lei non pubblica mai un intervallo scambiato in silenzio. Il percorso è aritmetica puramente deterministica —senza rete, senza semi casuali, senza orologio— cosicché l'esecutore gratuito del browser e l'API prepagata restituiscono lo stesso JSON dopo l'arrotondamento decimale fisso a ogni chiamata.

Come chiamare l'API e cosa torna indietro

I campi di latitudine devono stare nell'intervallo chiuso da meno novanta a novanta; quelli di longitudine da meno centottanta a centottanta. Invii un corpo JSON con otto numeri finiti obbligatori: min_lat_a, max_lat_a, min_lon_a e max_lon_a per il primo riquadro, e min_lat_b, max_lat_b, min_lon_b e max_lon_b per il secondo. Dentro ogni riquadro, min_lat deve essere minore o uguale a max_lat e min_lon minore o uguale a max_lon. I nomi canonici accettano alias come south_a, north_a, west_a, east_a e le forme _b corrispondenti, più alternative stile lat_min_a, così i client esistenti mappano i nomi GIS comuni senza riscrittura. In caso di successo la risposta imposta min_lat, max_lat, min_lon e max_lon dell'unione; imposta bbox alla quadrupla min_lon, min_lat, max_lon, max_lat nell'ordine west-south-east-north; imposta width_deg, height_deg e area_deg2 con aritmetica dei gradi; imposta center_lat e center_lon al punto medio dell'unione; restituisce box_a e box_b con angoli arrotondati; imposta relation a identical, a_inside_b, b_inside_a o partial_or_disjoint; imposta message a un breve riepilogo in inglese; e imposta steps a un array ordinato di righe di derivazione per log o interfaccia. La validazione fallita —campi mancanti, numeri non finiti, latitudine o longitudine fuori intervallo, o un min maggiore del max— restituisce invalid_input e non viene addebitata. Il prezzo è un $0.002 fisso per richiesta riuscita con unità item.

Consigli pratici, limiti e ricerche correlate

Mantenga entrambi i riquadri nello stesso CRS geografico e in gradi decimali; non mescoli metri web-mercator con gradi lat/lon nella stessa chiamata. Vicino ai poli un grado di longitudine è corto in metri, quindi usi l'unione per indicizzazione e inquadratura del viewport, poi raffini con misure proiettate o geodetiche se serve area fisica. Questa landing mira a chi cerca unione di riquadri delimitanti, unire due bounding box, inviluppo lat lon di due riquadri o estensione geografica combinata; non è un buffer punto-raggio, né un codificatore geohash, né una dissoluzione di poligoni. Preferisca questa capacità quando ha già due inviluppi allineati e serve solo il rettangolo contenitore; se la fonte è un insieme multipunto, calcoli un bbox multipunto. Ricordi che un inviluppo in gradi non è un'area geodetica vera: width_deg e height_deg sono span angolari, e area_deg2 è il loro prodotto per confronti rapidi, non metri quadrati sull'ellissoide. Per lavoro centrato sul Pacifico vicino all'antimeridiano, si assicuri che ogni input abbia già min_lon minore o uguale a max_lon nel senso non avvolto che ha scelto; questo strumento non inventa un multipoligono che attraversa la linea del cambio data, perché il contratto di prodotto è esplicitamente min e max componente per componente. Esempi abbinati: due quartieri di Manhattan sovrapposti che espandono i bordi sud ed est; un piccolo riquadro annidato in uno a scala urbana con relation a_inside_b; e un riquadro deliberatamente invertito che dimostra il percorso duro invalid_input. Le attività fallite con invalid_input non consumano saldo prepagato, il che mantiene economici gli script esplorativi quando si inviano di proposito intervalli invertiti. I controlli andata e ritorno sono semplici: ricalcoli a mano il minimo dei due min_lat e confermi che la risposta combacia entro l'arrotondamento a dodici decimali pubblicato.

Pianificazione di pacchetti offline e estensione di export

Con due pacchetti regionali già descritti come riquadri lat/lon, calcoli in modo deterministico l'estensione combinata di download o stampa per fixture CI.

Cosa succede se un riquadro è interamente dentro l'altro?

L'unione è uguale al riquadro esterno. La risposta imposta relation a a_inside_b o b_inside_a così i client rilevano l'annidamento senza controlli extra.

Leggi la documentazione completa del KIT →