Détecteur Avancé de Carrés Inscrits

Outils de Dessin

Données Mathématiques

Aucune donnée de courbe disponible

À Propos du Détecteur de Carrés Inscrits

Fondements Mathématiques

Formule du Lacet

Nous utilisons la formule du lacet (aussi connue sous le nom de formule de l'arpenteur) pour calculer l'aire du polygone formé par la courbe :

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|

Où (xi, yi) sont les coordonnées du i-ème sommet du polygone.

Implémentation de l'Algorithme

Trouver le Carré Inscrit

Cet algorithme utilise une approche de Monte Carlo, essayant des points aléatoires à l'intérieur de la courbe pour trouver le plus grand carré inscrit.

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;
}

Cet algorithme utilise une approche de Monte Carlo, essayant des points aléatoires à l'intérieur de la courbe pour trouver le plus grand carré inscrit.

Trouver le Carré Étendu

Cet algorithme trouve la boîte englobante de la courbe et crée un carré qui l'englobe entièrement.

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 },
  ];
}

Cet algorithme trouve la boîte englobante de la courbe et crée un carré qui l'englobe entièrement.

Introduction

Bienvenue sur le Détecteur de Carrés Inscrits, un outil interactif qui explore le monde fascinant de la géométrie et des conjectures mathématiques.

Cette application vous permet de dessiner des courbes fermées et de découvrir des carrés inscrits en leur sein, donnant vie à un problème mathématique vieux d'un siècle.

Concepts Clés

Courbes Fermées

Une courbe fermée est une boucle continue dans un plan, comme un cercle ou toute forme qui se termine là où elle commence.

Carrés Inscrits

Un carré inscrit est un carré qui s'adapte parfaitement à l'intérieur d'une courbe fermée, avec ses quatre coins touchant la courbe.

Carrés Étendus

Un carré étendu est le plus petit carré qui englobe complètement la courbe fermée.

Calcul d'Aire

L'aire de la courbe et des carrés est calculée à l'aide d'algorithmes géométriques avancés.

Longueur de la Courbe

La distance totale autour de la courbe, mesurée en kilopixels.

Comment Utiliser

1

Sélectionnez un outil de dessin dans la barre d'outils.

2

Dessinez une courbe fermée sur le canevas.

3

Cliquez sur 'Trouver le Carré Inscrit' pour localiser un carré inscrit.

4

Cliquez sur 'Trouver le Carré Étendu' pour trouver le carré englobant.

5

Visualisez les données mathématiques de votre courbe et des carrés.

6

Utilisez le bouton 'Effacer' pour recommencer avec une nouvelle courbe.

7

Expérimentez avec différentes formes et comparez les résultats !

Exploration Approfondie

Le problème du carré inscrit ouvre de nombreuses voies pour l'exploration mathématique :

Étudiez la fréquence à laquelle les courbes parfaitement circulaires produisent des carrés inscrits.

Explorez différents algorithmes pour trouver des carrés inscrits plus efficacement.

Étudiez la relation entre l'aire de la courbe et son carré inscrit.

Considérez comment ce problème pourrait s'étendre à trois dimensions avec des cubes inscrits.

Bonne exploration, et que votre curiosité mathématique ne cesse jamais !

Créé par Luis, développeur web du Mexique

Voir le code source