Rilevatore Avanzato di Quadrati Inscritti

Strumenti di Disegno

Dati Matematici

Nessun dato della curva disponibile

Informazioni sul Rilevatore di Quadrati Inscritti

Fondamenti Matematici

Formula del Laccio

Utilizziamo la formula del laccio (nota anche come formula del topografo) per calcolare l'area del poligono formato dalla 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|

Dove (xi, yi) sono le coordinate del i-esimo vertice del poligono.

Implementazione dell'Algoritmo

Trovare il Quadrato Inscritto

Questo algoritmo utilizza un approccio Monte Carlo, provando punti casuali all'interno della curva per trovare il quadrato inscritto più 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;
}

Questo algoritmo utilizza un approccio Monte Carlo, provando punti casuali all'interno della curva per trovare il quadrato inscritto più grande.

Trovare il Quadrato Esteso

Questo algoritmo trova il riquadro di delimitazione della curva e crea un quadrato che la racchiude 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 },
  ];
}

Questo algoritmo trova il riquadro di delimitazione della curva e crea un quadrato che la racchiude completamente.

Introduzione

Benvenuti nel Rilevatore di Quadrati Inscritti, uno strumento interattivo che esplora il mondo affascinante della geometria e delle congetture matematiche.

Questa applicazione ti permette di disegnare curve chiuse e scoprire quadrati inscritti al loro interno, dando vita a un problema matematico vecchio di un secolo.

Concetti Chiave

Curve Chiuse

Una curva chiusa è un ciclo continuo in un piano, come un cerchio o qualsiasi forma che termina dove inizia.

Quadrati Inscritti

Un quadrato inscritto è un quadrato che si adatta perfettamente all'interno di una curva chiusa, con tutti e quattro gli angoli che toccano la curva.

Quadrati Estesi

Un quadrato esteso è il quadrato più piccolo che racchiude completamente la curva chiusa.

Calcolo dell'Area

L'area della curva e dei quadrati viene calcolata utilizzando algoritmi geometrici avanzati.

Lunghezza della Curva

La distanza totale intorno alla curva, misurata in kilopixel.

Come Usare

1

Seleziona uno strumento di disegno dalla barra degli strumenti.

2

Disegna una curva chiusa sulla tela.

3

Clicca su 'Trova Quadrato Inscritto' per localizzare un quadrato inscritto.

4

Clicca su 'Trova Quadrato Esteso' per trovare il quadrato che racchiude.

5

Visualizza i dati matematici per la tua curva e i quadrati.

6

Usa il pulsante 'Cancella' per ricominciare con una nuova curva.

7

Sperimenta con forme diverse e confronta i risultati!

Ulteriore Esplorazione

Il problema del quadrato inscritto apre molte strade per l'esplorazione matematica:

Indaga quanto spesso le curve perfettamente circolari producono quadrati inscritti.

Esplora diversi algoritmi per trovare quadrati inscritti in modo più efficiente.

Studia la relazione tra l'area della curva e il suo quadrato inscritto.

Considera come questo problema potrebbe estendersi a tre dimensioni con cubi inscritti.

Buona esplorazione, e che la tua curiosità matematica non cessi mai!

Creato da Luis, sviluppatore web dal Messico

Visualizza codice sorgente