Polygon-Begrenzungsrahmen
Der Begrenzungsrahmen eines Polygons ist das kleinste an Breiten- und Längengradachsen ausgerichtete Rechteck, das alle angegebenen Eckpunkte enthält.
Im Browser ausführen – kostenlos
Dieser Rechner durchsucht die Koordinaten und gibt die minimale, südwestlich entsprechende Ecke sowie die maximale, nordöstlich entsprechende Ecke zurück, ohne einen Kartendienst aufzurufen. Das eignet sich zum Einstellen von Kartenausschnitten, räumlichen Filtern, Indexieren, Prüfen und schnellen Zusammenfassen geografischer Bereiche. Die Berechnung ist deterministisch, verarbeitet übliche Dezimalgradkoordinaten und verwendet im Browser und über die API dieselbe Logik.
Bereiten Sie die Polygoneckpunkte vor
Geben Sie mindestens drei Eckpunkte an, jeweils als numerische Werte lat und lon in Dezimalgrad. Der Breitengrad muss zwischen -90 und 90, der Längengrad zwischen -180 und 180 liegen. Die Punkte dürfen ein konvexes oder konkaves Polygon beschreiben; der erste Punkt kann zum Schließen des Rings am Ende wiederholt werden. Anders als eine Flächen- oder Schwerpunktberechnung hängt der Begrenzungsrahmen weder von der Umlaufrichtung noch von einer Anordnung im oder gegen den Uhrzeigersinn ab. Jeder Punkt trägt unabhängig zu den Extremwerten bei. Drei Punkte sind dennoch erforderlich, weil die Eingabe ein Polygon und keine beliebige Punktmenge darstellt. Verwenden Sie Zahlen statt formatierter Zeichenfolgen mit Gradzeichen, Himmelsrichtungen oder kommagetrennten Koordinaten. Ungültige Datensätze, fehlende Koordinaten, nicht endliche Werte und Werte außerhalb des Bereichs werden verständlich abgelehnt. Pro Anfrage sind bis zu 10,000 Eckpunkte zulässig, damit die Ausführung auch bei detaillierten Grenzen vorhersehbar bleibt.
Verstehen Sie die ausgegebenen Ecken
Das Ergebnis enthält min_corner und max_corner. Die minimale Ecke verbindet den kleinsten Breitengrad der Liste mit dem kleinsten Längengrad; die maximale Ecke verbindet die jeweils größten Werte. Zusammen beschreiben sie ein achsenparalleles Rechteck in der Breiten- und Längengradebene. Diese Ecken müssen keine tatsächlichen Polygoneckpunkte sein, weil die beiden Minima an unterschiedlichen Punkten auftreten können. Es werden weder Abstand noch Projektion, Rundung oder geodätische Erweiterung angewandt; die Antwort bewahrt daher die übermittelten numerischen Extremwerte. Längengrade werden im üblichen Bereich von -180 bis 180 wörtlich ausgewertet. Ein Polygon über dem Antimeridian kann deshalb einen numerisch breiten Rahmen von beispielsweise -179 bis 179 Grad ergeben. Dieses Verhalten ist beabsichtigt: Es meldet gewöhnliche Minima und Maxima, statt automatisch einen umlaufenden Kartenausschnitt zu wählen. Eine Anwendung mit zyklischen Längengraden kann anschließend alternative Spannweiten vergleichen.
Nutzen Sie die Grenzen in Karten und Datenabläufen
Begrenzungsrahmen sind kompakte Zusammenfassungen und eignen sich für den Anfang vieler räumlicher Abläufe. Eine Kartenoberfläche kann mit beiden Ecken den anfänglichen Ausschnitt bestimmen. Beim Import kann eine Datenbank die vier Extremwerte neben dem Polygon speichern und damit eine günstige Vorauswahl treffen, bevor sie eine aufwendigere Punkt-im-Polygon- oder Schnittprüfung ausführt. Prüfcode kann erwartete Versorgungsgebiete mit eingereichten Formen vergleichen, während Analysen Grenzen nach ihrer groben Ausdehnung gruppieren. Beachten Sie, dass der Rahmen das Polygon enthält, seine Form aber nicht abbildet: Ein Punkt im Rechteck kann außerhalb eines konkaven Polygons liegen, und überlappende Rahmen beweisen keine Überschneidung der Polygone. Die Berechnung arbeitet direkt mit Breiten- und Längengraden statt mit einem projizierten Koordinatensystem. Breiten in Grad entsprechen daher nicht überall derselben physischen Entfernung. Sie können einzelne Prüfungen kostenlos im Browser ausführen oder wiederholbare API-Anfragen für $0.002 pro Element automatisieren.
Anwendungsfälle
Kartenausschnitt anpassen
Wandeln Sie Polygoneckpunkte in minimale und maximale Ecken um, um die gesamte Grenze anzuzeigen.
Räumliche Datensätze vorfiltern
Speichern Sie einfache Extremwerte für eine Vorauswahl vor exakten Polygonschnittprüfungen.
Geografische Abdeckung prüfen
Vergleichen Sie die Ausdehnung einer eingereichten Grenze beim Import mit erlaubten Bereichen.
Häufige Fragen
Was kostet die Berechnung?
Der API-Preis beträgt $0.002 pro Element; der Rechner im Browser ist auf dieser Seite kostenlos.
Spielt die Reihenfolge der Eckpunkte eine Rolle?
Nein. Kleinste und größte Breiten- und Längengrade werden unabhängig voneinander ermittelt.
Muss ich den ersten Eckpunkt am Ende wiederholen?
Nein. Offene und geschlossene Listen liefern bei gleichen Extremwerten dieselben Grenzen.
Wie werden Polygone am Antimeridian behandelt?
Es gelten wörtliche Längengradextreme von -180 bis 180; der Rahmen kann daher sehr breit sein.
Ist dies eine exakte Einschlussprüfung?
Nein. Das Rechteck enthält alle Eckpunkte, doch ein darin liegender Punkt kann außerhalb des Polygons liegen.
Für Entwickler — API-Zugang
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.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/geo/polygon-bounding-box \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"vertices":[{"lat":40.7128,"lon":-74.006},{"lat":34.0522,"lon":-118.2437},{"lat":41.8781,"lon":-87.6298}]}'const res = await fetch("https://api.kit.forhosting.com/geo/polygon-bounding-box", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"vertices": [
{
"lat": 40.7128,
"lon": -74.006
},
{
"lat": 34.0522,
"lon": -118.2437
},
{
"lat": 41.8781,
"lon": -87.6298
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geo/polygon-bounding-box",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"vertices": [
{
"lat": 40.7128,
"lon": -74.006
},
{
"lat": 34.0522,
"lon": -118.2437
},
{
"lat": 41.8781,
"lon": -87.6298
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geo/polygon-bounding-box", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"vertices":[{"lat":40.7128,"lon":-74.006},{"lat":34.0522,"lon":-118.2437},{"lat":41.8781,"lon":-87.6298}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"vertices":[{"lat":40.7128,"lon":-74.006},{"lat":34.0522,"lon":-118.2437},{"lat":41.8781,"lon":-87.6298}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geo/polygon-bounding-box", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"vertices": [
{
"lat": 40.7128,
"lon": -74.006
},
{
"lat": 34.0522,
"lon": -118.2437
},
{
"lat": 41.8781,
"lon": -87.6298
}
]
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geo.polygon_bounding_box",
"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.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Limits
max_items | 10000 |
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |