Retângulo delimitador mínimo de pontos 2D
Esta calculadora encontra o menor retângulo alinhado aos eixos que contém todos os pontos bidimensionais informados.
Executar grátis
Ela retorna as coordenadas dos quatro vértices, além da largura, da altura e da área. O resultado oferece uma extensão espacial compacta para gráficos, indexação, testes de colisão, seleção de visualização ou validação de dados. Você pode usar coordenadas negativas, positivas, inteiras ou decimais, inclusive com um único ponto ou com pontos dispostos em uma linha horizontal ou vertical.
O que significa um retângulo delimitador alinhado aos eixos
O retângulo delimitador mínimo alinhado aos eixos é o menor retângulo que contém um conjunto de pontos e mantém seus lados paralelos aos eixos x e y. Ele é definido por quatro extremos: os menores e maiores valores de x e de y. Esses números formam os limites mesmo quando pertencem a quatro pontos diferentes. Portanto, o resultado descreve toda a extensão espacial sem pressupor que os pontos estejam ordenados, formem um polígono ou tracem uma figura fechada. Os vértices são retornados como inferior esquerdo, inferior direito, superior direito e superior esquerdo. A largura é x máximo menos x mínimo; a altura é y máximo menos y mínimo; a área é o produto de ambas. Diferentemente de uma caixa orientada, este retângulo nunca gira para acompanhar a direção aparente dos dados. Isso torna o resultado previsível e diretamente compatível com gráficos cartesianos, coordenadas de canvas e diversas estruturas de índice espacial.
Como preparar e interpretar os pontos
Informe pelo menos um ponto como objeto com campos numéricos finitos x e y. As coordenadas podem ser negativas ou fracionárias, e pontos duplicados são aceitos porque não alteram os extremos. Mantenha todos os valores no mesmo sistema de coordenadas e na mesma unidade: misturar metros com pés, ou coordenadas projetadas com latitude e longitude, gera um retângulo sem significado físico coerente. A calculadora interpreta os valores como cartesianos; ela não contorna o antimeridiano, não projeta o globo nem deduz unidades cartográficas. Um único ponto produz quatro vértices iguais e largura, altura e área iguais a zero. Pontos em uma linha vertical produzem largura zero; em uma linha horizontal, altura zero. Os dois casos têm área zero corretamente. Inferior significa y mínimo e superior significa y máximo. Se a tela aumenta y para baixo, transforme apenas a exibição, sem alterar o cálculo.
Como usar o resultado em fluxos espaciais
O retângulo retornado funciona como um resumo inicial compacto em muitos fluxos geométricos. Um gráfico pode usar as coordenadas extremas para escolher a área visível e acrescentar margem. Uma busca espacial pode comparar retângulos antes de executar testes mais caros com pontos, segmentos ou polígonos, descartando rapidamente objetos cujas extensões não podem se sobrepor. Pipelines de importação podem registrar largura, altura e área como sinais de qualidade para revelar pontos inesperadamente distantes ou dimensões colapsadas. O algoritmo percorre a lista uma vez; assim, o tempo cresce linearmente e não é necessário ordenar nem modificar os pontos. A resposta é determinística. Lembre-se de que a sobreposição de retângulos é apenas um teste amplo: ela não descreve lacunas, concavidade, densidade ou rotação. Use o resultado como extensão ou filtro e aplique uma operação geométrica precisa quando a decisão depender da forma real.
Casos de uso
Ajustar a visualização de um gráfico
Obtenha a extensão exata de um gráfico de dispersão antes de acrescentar margens e definir escalas.
Criar um filtro espacial preliminar
Compare limites alinhados aos eixos antes de cálculos detalhados de interseção ou proximidade.
Validar importações de coordenadas
Sinalize conjuntos com largura, altura ou área improváveis antes da entrada em um pipeline cartográfico ou analítico.
Perguntas frequentes
Quanto custa uma solicitação?
Cada solicitação API custa US$ 0,002. O cálculo usa um algoritmo local determinístico, sem serviço externo.
Este é um retângulo delimitador mínimo orientado?
Não. Os lados permanecem paralelos aos eixos x e y, sem rotação para reduzir a área.
O que acontece com apenas um ponto?
Os quatro vértices coincidem com esse ponto, e a largura, a altura e a área são zero.
Posso usar coordenadas negativas ou decimais?
Sim. Você pode informar quaisquer valores numéricos finitos de x e y, inclusive negativos e decimais.
Posso usar latitude e longitude?
Você pode usá-las para uma extensão numérica simples, mas o cálculo é cartesiano e não trata o antimeridiano nem a geometria esférica.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/geo/min-bounding-rectangle \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"points":[{"x":-2,"y":3},{"x":4,"y":-1},{"x":1,"y":5}]}'const res = await fetch("https://api.kit.forhosting.com/geo/min-bounding-rectangle", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"points": [
{
"x": -2,
"y": 3
},
{
"x": 4,
"y": -1
},
{
"x": 1,
"y": 5
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geo/min-bounding-rectangle",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"points": [
{
"x": -2,
"y": 3
},
{
"x": 4,
"y": -1
},
{
"x": 1,
"y": 5
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geo/min-bounding-rectangle", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"points":[{"x":-2,"y":3},{"x":4,"y":-1},{"x":1,"y":5}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"points":[{"x":-2,"y":3},{"x":4,"y":-1},{"x":1,"y":5}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geo/min-bounding-rectangle", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"points": [
{
"x": -2,
"y": 3
},
{
"x": 4,
"y": -1
},
{
"x": 1,
"y": 5
}
]
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geo.min_bounding_rectangle",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
max_points | 100000 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |