Buscador Mejorado de Cuadrados Inscritos

Herramientas de Dibujo

Datos Matemáticos

No hay datos de curva disponibles

Acerca del Buscador de Cuadrados Inscritos

Fundamentos Matemáticos

Fórmula del Cordón

Utilizamos la fórmula del cordón (también conocida como la fórmula del agrimensor) para calcular el área del polígono formado por la curva:

A=12i=1n1(xiyi+1+xny1)i=1n1(xi+1yi+x1yn)A = \frac{1}{2}\left|\sum_{i=1}^{n-1} (x_i y_{i+1} + x_n y_1) - \sum_{i=1}^{n-1} (x_{i+1} y_i + x_1 y_n)\right|

Donde (xi, yi) son las coordenadas del i-ésimo vértice del polígono.

Implementación del Algoritmo

Encontrando el Cuadrado Inscrito

Este algoritmo utiliza un enfoque de Monte Carlo, probando puntos aleatorios dentro de la curva para encontrar el cuadrado inscrito más grande.

function findInscribedSquare(curve) {
  const minX = Math.min(...curve.map(p => p.x));
  const maxX = Math.max(...curve.map(p => p.x));
  const minY = Math.min(...curve.map(p => p.y));
  const maxY = Math.max(...curve.map(p => p.y));

  let bestSquare = [];
  let maxSize = 0;

  for (let i = 0; i < 1000; i++) {
    const center = getRandomPointInside(curve);
    let low = 0;
    let high = Math.min(maxX - minX, maxY - minY);

    while (high - low > 1) {
      const mid = (low + high) / 2;
      const square = [
        { x: center.x - mid / 2, y: center.y - mid / 2 },
        { x: center.x + mid / 2, y: center.y - mid / 2 },
        { x: center.x + mid / 2, y: center.y + mid / 2 },
        { x: center.x - mid / 2, y: center.y + mid / 2 },
      ];

      if (square.every(p => isPointInside(p, curve))) {
        if (mid > maxSize) {
          maxSize = mid;
          bestSquare = square;
        }
        low = mid;
      } else {
        high = mid;
      }
    }
  }

  return bestSquare;
}

Este algoritmo utiliza un enfoque de Monte Carlo, probando puntos aleatorios dentro de la curva para encontrar el cuadrado inscrito más grande.

Encontrando el Cuadrado Extendido

Este algoritmo encuentra la caja delimitadora de la curva y crea un cuadrado que la abarca completamente.

function findExtendedSquare(curve) {
  const minX = Math.min(...curve.map(p => p.x));
  const maxX = Math.max(...curve.map(p => p.x));
  const minY = Math.min(...curve.map(p => p.y));
  const maxY = Math.max(...curve.map(p => p.y));

  const centerX = (minX + maxX) / 2;
  const centerY = (minY + maxY) / 2;
  const size = Math.max(maxX - minX, maxY - minY);

  return [
    { x: centerX - size / 2, y: centerY - size / 2 },
    { x: centerX + size / 2, y: centerY - size / 2 },
    { x: centerX + size / 2, y: centerY + size / 2 },
    { x: centerX - size / 2, y: centerY + size / 2 },
  ];
}

Este algoritmo encuentra la caja delimitadora de la curva y crea un cuadrado que la abarca completamente.

Introducción

Bienvenido al Buscador de Cuadrados Inscritos, una herramienta interactiva que explora el fascinante mundo de la geometría y las conjeturas matemáticas.

Esta aplicación te permite dibujar curvas cerradas y descubrir cuadrados inscritos dentro de ellas, dando vida a un problema matemático centenario.

Conceptos Clave

Curvas Cerradas

Una curva cerrada es un bucle continuo en un plano, como un círculo o cualquier forma que termina donde comienza.

Cuadrados Inscritos

Un cuadrado inscrito es un cuadrado que encaja perfectamente dentro de una curva cerrada, con sus cuatro esquinas tocando la curva.

Cuadrados Extendidos

Un cuadrado extendido es el cuadrado más pequeño que encierra completamente la curva cerrada.

Cálculo de Área

El área de la curva y los cuadrados se calcula utilizando algoritmos geométricos avanzados.

Longitud de la Curva

La distancia total alrededor de la curva, medida en kilopíxeles.

Cómo Usar

1

Selecciona una herramienta de dibujo de la barra de herramientas.

2

Dibuja una curva cerrada en el lienzo.

3

Haz clic en 'Encontrar Cuadrado Inscrito' para localizar un cuadrado inscrito.

4

Haz clic en 'Encontrar Cuadrado Extendido' para encontrar el cuadrado que encierra.

5

Visualiza los datos matemáticos de tu curva y cuadrados.

6

Usa el botón 'Limpiar' para comenzar de nuevo con una nueva curva.

7

¡Experimenta con diferentes formas y compara resultados!

Exploración Adicional

El problema del cuadrado inscrito abre muchas vías para la exploración matemática:

Investiga con qué frecuencia las curvas perfectamente circulares producen cuadrados inscritos.

Explora diferentes algoritmos para encontrar cuadrados inscritos de manera más eficiente.

Estudia la relación entre el área de la curva y su cuadrado inscrito.

Considera cómo este problema podría extenderse a tres dimensiones con cubos inscritos.

¡Feliz exploración, y que tu curiosidad matemática nunca cese!

Creado por Luis, desarrollador web de México

Ver código fuente