ForHosting KIT · Utilidades de desarrollo

Calculadora del perímetro de la envolvente convexa

Esta calculadora halla el menor contorno convexo que encierra un conjunto de puntos cartesianos y suma la distancia euclídea de todas sus aristas en orden.

● BetaGratis · en su navegador
Úselo desde WebAPIEmailTelegramApp pronto

Devuelve tanto el perímetro como los vértices de la envolvente, para que usted pueda revisar, dibujar o reutilizar el resultado. Los puntos duplicados y los situados dentro del contorno no alteran la medida. El cálculo es determinista, no accede a la red y admite hasta 100,000 puntos por solicitud.

Introduzca puntos cartesianos en un sistema coherente

Envíe los puntos como registros con coordenadas numéricas finitas x e y. Todos deben pertenecer al mismo sistema cartesiano y emplear la misma unidad. Si las coordenadas están en metros, el perímetro se expresa en metros; si están en píxeles, se expresa en píxeles. La calculadora no proyecta latitud y longitud ni contempla la curvatura terrestre. Por ello, convierta primero las coordenadas geográficas a una proyección adecuada cuando necesite una distancia física. El orden de entrada no importa, pues el algoritmo ordena las coordenadas antes de construir el contorno. Se admiten coordenadas repetidas y se eliminan a efectos geométricos, aunque la respuesta informa tanto del total recibido como del número de puntos únicos. Debe facilitar al menos un punto y puede enviar hasta 100,000 registros. Conservar la precisión original evita redondeos prematuros. La envolvente comienza en el punto de contorno lexicográficamente menor y avanza en sentido antihorario, de forma estable y reproducible.

Comprenda cómo se obtienen el contorno y el perímetro

La calculadora emplea el método de cadena monótona de Andrew. Tras ordenar y eliminar duplicados, construye una cadena inferior y otra superior. Una prueba de orientación mediante producto cruzado descarta el punto central cuando tres candidatos consecutivos no forman un giro antihorario. Así se excluyen los puntos estrictamente interiores y los puntos intermedios situados sobre una arista recta, y solo quedan los extremos necesarios para describirla. Las dos cadenas se unen sin repetir sus extremos. Después se suma la distancia euclídea entre cada vértice y el siguiente, incluida la arista de cierre desde el último hasta el primero. La ordenación domina el coste y produce una complejidad temporal O(n log n); la construcción posterior es lineal. Con un único punto distinto, el perímetro es cero. Con dos puntos distintos, o si todos son colineales, la envolvente conserva los dos extremos y la convención de contorno cerrado cuenta el segmento en ambos sentidos, por lo que devuelve el doble de la distancia entre ellos.

Interprete el resultado y utilícelo correctamente

El campo perimeter contiene la longitud total del contorno en la misma unidad que las coordenadas. El array hull enumera los vértices conservados en orden de recorrido sin repetir el primero al final. La respuesta incluye además input_points, unique_points y hull_points, que explican por qué no aparecen puntos interiores, repetidos o colineales. Para dibujar el polígono, una usted los vértices consecutivos y cierre explícitamente el último con el primero. Como se usa aritmética de coma flotante de JavaScript, las distancias irracionales pueden mostrar una pequeña aproximación binaria; redondee únicamente para presentar el resultado. La herramienta resulta apropiada para planos, coordenadas de imagen, mallas locales de ingeniería y cartografía proyectada. No calcula perímetros geodésicos esféricos o elipsoidales, no corrige sistemas de referencia equivocados ni conserva puntos colineales solo con fines visuales. Cada solicitud por API cuesta $0.002; la ejecución en el navegador utiliza la misma lógica pura para ofrecer resultados coherentes.

Medir el límite de un terreno

Obtenga el perímetro envolvente de puntos topográficos después de convertirlos a una proyección local adecuada.

Estimar un cerramiento protector

Calcule la valla o envoltura convexa más corta que contiene todas las ubicaciones de un conjunto plano.

Resumir una huella espacial

Genere un contorno ordenado y su longitud para agrupaciones, rasgos de imagen, partículas simuladas o coordenadas CAD.

¿Cuánto cuesta una solicitud?

Cada solicitud por API cuesta $0.002. La capacidad también se ejecuta localmente en el navegador.

¿Se admiten directamente latitud y longitud?

Puede introducirlas como números, pero el resultado estaría en grados y no sería una distancia física fiable. Proyecte los datos geográficos antes del cálculo plano.

¿Qué ocurre con los puntos duplicados e interiores?

Los duplicados se eliminan y los interiores quedan fuera de la envolvente. La respuesta cuenta por separado los puntos recibidos, únicos y de contorno.

¿Cómo se tratan los puntos colineales?

Solo permanecen los dos extremos. El segmento se cuenta dos veces porque el contorno degenerado realiza el trayecto de ida y vuelta.

¿Se repite el primer vértice al final?

No. El array de la envolvente incluye una sola vez cada vértice; la arista de cierre hasta el primero es implícita y sí forma parte del perímetro.

Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.

POSThttps://api.kit.forhosting.com/geo/convex-hull-perimeter

¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.

curl -X POST https://api.kit.forhosting.com/geo/convex-hull-perimeter \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"points":[{"x":0,"y":0},{"x":4,"y":0},{"x":4,"y":3},{"x":0,"y":3},{"x":2,"y":1}]}'
{
  "points": [
    {
      "x": 0,
      "y": 0
    },
    {
      "x": 4,
      "y": 0
    },
    {
      "x": 4,
      "y": 3
    },
    {
      "x": 0,
      "y": 3
    },
    {
      "x": 2,
      "y": 1
    }
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "geo.convex_hull_perimeter",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.

Por solicitud$0.002

Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.

max_items100000
HTTPCódigoSignificado
401unauthorizedAPI key ausente o inválida.
402insufficient_balanceEl saldo no cubre el precio de la tarea.
404unknown_typeEl tipo de tarea no existe.
429rate_limitedDemasiadas peticiones. Use el webhook en vez de sondear.

Ver la documentación completa del KIT →