ForHosting KIT · Reisen und Geografie

Bounding Box enthält prüfen

Eine äußere Box von (0, 0) bis (10, 10) umschließt eine innere Box von (2, 3) bis (5, 7) vollständig: Alle vier Kanten liegen ineinander. Geben Sie die Kanten beider Boxen ein und sehen Sie, welche Seite das Enthaltensein gegebenenfalls verhindert. Kostenlos in Ihrem Browser.

  • Kostenlos
  • Läuft in Ihrem Browser
  • Ohne Anmeldung
  • Ihre Daten bleiben auf Ihrem Gerät
Nutzen Sie es über WebAPIE-MailTelegramApp bald
Wenn Sie eingeben
Äußeres Minimum x
0
Äußeres Maximum x
10
Äußeres Minimum y
0
Äußeres Maximum y
10
Inneres Minimum x
2
Inneres Maximum x
5
Erhalten Sie
Außenbreite
10
Außenhöhe
10
Innere Breite
3
Innere Höhe
4

Die Enthalten-Prüfung achsenparalleler Bounding Boxes ist ein grundlegendes räumliches Prädikat in Kartografie, Computergrafik, Broad-Phase-Kollision, GIS-Kachelhierarchien und Viewport-Culling. Bei zwei Rechtecken mit zu den Achsen parallelen Seiten lautet die Frage, ob die äußere Box die innere vollständig umschließt — nicht nur, ob sie sich überlappen oder eine Ecke teilen. Diese Prüfung akzeptiert acht endliche Kantengrenzen (Minimum und Maximum von X und Y für den äußeren Container und den inneren Kandidaten), prüft, dass jede Box min kleiner oder gleich max auf beiden Achsen hat, und wertet vier geschlossene Ungleichungen aus: die äußere linke Kante muss links von oder auf der inneren linken liegen, die äußere rechte rechts von oder auf der inneren rechten, und dasselbe Nesting unten und oben. Das Ergebnis ist ein boolesches contains-Flag zusammen mit Kanten-Diagnosen, damit Sie genau sehen, welche Grenze fehlschlägt, wenn das Nesting nicht gilt. Identische Boxen zählen bei geschlossenen Kanten als Enthaltensein.

Was AABB-Enthaltensein bedeutet und wie die vier Kanten geprüft werden

Eine achsenparallele Bounding Box, oft als AABB abgekürzt, ist durch eine minimale und maximale Koordinate auf jeder Achse definiert. Vollständiges Enthaltensein einer inneren Box durch eine äußere bedeutet, dass jeder Punkt des inneren Rechtecks auch zum äußeren Rechteck gehört. Da beide Formen Produkte von Intervallen sind, reduziert sich diese Mengeninklusion auf Intervall-Nesting auf jeder Achse unabhängig: das innere X-Intervall muss im äußeren X-Intervall liegen und das innere Y-Intervall im äußeren Y-Intervall.

Scheitert eine dieser vier Prüfungen, enthält die äußere Box die innere nicht vollständig — selbst wenn die Boxen sich noch in teilweiser Überlappung schneiden oder nur an einer Seite eine Grenze teilen. Degenerierte Boxen mit Breite oder Höhe null sind erlaubt, wenn min gleich max ist; eine punktförmige Box ist enthalten, wenn dieser Punkt auf oder innerhalb der äußeren Kanten liegt. Zwei identische Boxen erfüllen ebenfalls Enthaltensein, weil alle Kanten gleich sind und die geschlossenen Ungleichungen wahr bleiben.

Diese Fähigkeit modelliert keine rotierten Rechtecke, geodätischen sphärischen Polygone und kein Antimeridian-Wrapping; es ist das klassische kartesische AABB-Prädikat als schneller Broad-Phase-Filter vor teureren geometrischen Tests.

Wo eine Bounding-Box-Enthalten-Prüfung ihren Nutzen zeigt

Karten- und Kachelserver nutzen AABB-Enthaltensein, um zu entscheiden, ob die Feature-bbox vollständig in einem Viewport, einer Elternkachel oder einem Geofence-Rechteck liegt, bevor Geometrie mit höherer Auflösung geladen wird. Spiel- und Physik-Engines führen denselben Vier-Kanten-Test als günstigen Broad-Phase-Filter vor Dreiecks-Kollision aus. GIS-Pipelines vergleichen Annotationsboxen mit Regionsausdehnungen beim Zuschneiden von Exporten oder bei der Prüfung, dass eine gezeichnete Zone vollständig in einem lizenzierten Kartenblatt liegt.

Computer-Vision- und Dokumentlayout-Werkzeuge nesten Erkennungsboxen in Seiten- oder Zuschneide-Rechtecke, um Falschpositive zu filtern, die den Rahmen verlassen. Fehlgeschlagene Validierung wird nicht berechnet.

Viewport- und Kachel-Nesting

Prüfen Sie, ob die Bounding Box eines Features oder einer Kindkachel vollständig im Karten-Viewport oder in der Elternkachel liegt, bevor detaillierte Geometrie geladen wird.

Broad-Phase-Kollision und Culling

Filtern Sie Kandidatenpaare in Spielen und Physik, indem Sie prüfen, ob eine AABB eine andere vollständig enthält, bevor teure Narrow-Phase-Tests laufen.

Validierung von Layout- und Erkennungsboxen

Stellen Sie sicher, dass OCR-, UI- oder Objekterkennungsboxen vollständig innerhalb einer Seite, eines Zuschnitts oder einer lizenzierten Regionsausdehnung bleiben.

Zählen identische Boxen als Enthaltensein?

Ja. Geschlossene Kanten erlauben, dass äußeres min/max dem inneren min/max gleicht. Das equal-Flag ist true und contains ist true, wenn beide Boxen dieselben Grenzen teilen.

Was passiert, wenn min größer als max auf einer Box ist?

Invertierte Boxen werden nicht automatisch getauscht; korrigieren Sie die Kanten so, dass min kleiner oder gleich max auf jeder Achse ist.

Werden rotierte oder geografische Antimeridian-Boxen unterstützt?

Nein. Dies ist nur ein kartesischer achsenparalleler Test. Rotieren Sie Formen zuerst in achsenparallele Form, oder nutzen Sie eine geodätische Fähigkeit für sphärische Polygone, die den Antimeridian umschließen.

Ist Überlappen dasselbe wie Enthaltensein?

Nein. Zwei Boxen können sich überlappen oder eine Kante teilen und den Test trotzdem nicht bestehen. Enthaltensein verlangt, dass jeder Punkt der inneren Box in der äußeren liegt; schon eine einzige abweichende Kante ergibt ein negatives Ergebnis.

Wie erkenne ich, welche Seite das Enthaltensein verhindert?

Jede Kante wird einzeln geprüft: links, rechts, unten und oben. Das Ergebnis zeigt, welche der vier passen, und die Meldung nennt die abweichenden, sodass Sie sehen, ob die innere Box auf einer oder mehreren Seiten hinausragt.

Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.

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

Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.

curl -X POST https://api.kit.forhosting.com/geo/bbox-contains-bbox \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"outer_min_x":0,"outer_max_x":10,"outer_min_y":0,"outer_max_y":10,"inner_min_x":2,"inner_max_x":5,"inner_min_y":3,"inner_max_y":7}'
{
  "outer_min_x": 0,
  "outer_max_x": 10,
  "outer_min_y": 0,
  "outer_max_y": 10,
  "inner_min_x": 2,
  "inner_max_x": 5,
  "inner_min_y": 3,
  "inner_max_y": 7
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "geo.bbox_contains_bbox",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.

pro Anfrage$0.002

Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.

HTTPCodeBedeutung
401unauthorizedDer API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer).
402insufficient_balanceIhr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht.
404unknown_typeUnbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog.
429rate_limitedZu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt.

Dieselbe reine Logik speist das kostenlose Browser-Werkzeug und den kostenpflichtigen API-Pfad, sodass Karten-Pipelines und automatische Bewerter bei der Nesting-Entscheidung nie auseinanderlaufen.

Was AABB-Enthaltensein bedeutet und wie die vier Kanten geprüft werden

In zwei Dimensionen sind das vier Zahlen: min_x, max_x, min_y und max_y. Als Ungleichungen mit geschlossenen Kanten gilt Enthaltensein genau dann, wenn outer_min_x kleiner oder gleich inner_min_x ist, outer_max_x größer oder gleich inner_max_x, outer_min_y kleiner oder gleich inner_min_y und outer_max_y größer oder gleich inner_max_y.

Eingabevertrag, Antwortform und ungültige Bounding Boxes

Eine invertierte Box, bei der min strikt größer als max ist, wird abgelehnt statt still getauscht, weil ein Tausch die beabsichtigte Geometrie ohne Wissen des Aufrufers ändern würde. Eine kurze Nachricht beschreibt vollständiges Enthaltensein, identische Boxen oder listet die fehlgeschlagenen Kanten, wenn das Nesting nicht gilt. Beispiel: äußere Box von (0,0) bis (10,10) und innere von (2,3) bis (5,7) ergibt contains true mit allen vier Flags true. Teilweise Überlappung oder eine Box, die an einer Seite herausragt, ergibt contains false und nennt die fehlgeschlagene Seite. Validierungsfehler werden nicht berechnet. Senden Sie einen JSON-Body per POST mit acht erforderlichen endlichen Zahlen: outer_min_x, outer_max_x, outer_min_y und outer_max_y für die Container-Box sowie inner_min_x, inner_max_x, inner_min_y und inner_max_y für die Kandidaten-Box. Jedes Feld kann als JSON-Zahl oder als numerische Zeichenkette ankommen; fehlende Felder, leere Zeichenketten und nicht endliche Werte scheitern mit invalid_input und nennen das Feld. Zusätzlich muss jede Box wohlgeformt sein: outer_min_x muss kleiner oder gleich outer_max_x sein, und dieselbe Regel min gegen max gilt für die äußeren Y-Kanten und beide Achsen der inneren Box. Bei Erfolg spiegelt die Antwort die acht gerundeten Kantenwerte wider, meldet outer_width, outer_height, inner_width und inner_height und gibt boolesche Flags left_ok, right_ok, bottom_ok und top_ok für jeden Kantentest zurück. Das Zusammenfassungsfeld contains ist nur true, wenn alle vier Kantenflags true sind. Das equal-Flag ist true, wenn beide Boxen identische Kanten teilen.

Wo eine Bounding-Box-Enthalten-Prüfung ihren Nutzen zeigt

Halten Sie Anfragen klein, pinnen Sie Boolean und Kantenflags in Tests und erhalten Sie reproduzierbare Nesting-Entscheidungen für Karten-Worker, Spieleserver und Bewertungsskripte, ohne für einen einfachen Rechtecktest eine vollständige räumliche Datenbank aufzusetzen.

Wie prüfe ich, ob eine Bounding Box eine andere enthält?

Senden Sie acht endliche Kanten: outer_min_x, outer_max_x, outer_min_y, outer_max_y und dieselben vier für die innere Box. Die API gibt contains true zurück, wenn die äußere die innere auf allen vier Kanten nestet.

Was kostet die Bounding-Box-Enthalten-Prüfung?

Das Browser-Werkzeug ist kostenlos. API-Anfragen nutzen vorab bezahltes KIT-Guthaben zu $0.002 pro erfolgreichem Aufruf; ungültige Eingabe wird nicht berechnet.

Vollständige KIT-Dokumentation lesen →