Gelişmiş İçyazılı Kare Bulucu

Çizim Araçları

Matematiksel Veriler

Eğri verisi mevcut değil

İçyazılı Kare Bulucu Hakkında

Matematiksel Temeller

Ayakkabı Bağı Formülü

Eğri tarafından oluşturulan çokgenin alanını hesaplamak için ayakkabı bağı formülünü (ayrıca haritacı formülü olarak da bilinir) kullanıyoruz:

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|

Burada (xi, yi) çokgenin i. köşesinin koordinatlarıdır.

Algoritma Uygulaması

İçyazılı Kare Bulma

Bu algoritma, en büyük içyazılı kareyi bulmak için eğri içinde rastgele noktalar deneyerek bir Monte Carlo yaklaşımı kullanır.

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

Bu algoritma, en büyük içyazılı kareyi bulmak için eğri içinde rastgele noktalar deneyerek bir Monte Carlo yaklaşımı kullanır.

Genişletilmiş Kare Bulma

Bu algoritma, eğrinin sınırlayıcı kutusunu bulur ve onu tamamen kapsayan bir kare oluşturur.

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

Bu algoritma, eğrinin sınırlayıcı kutusunu bulur ve onu tamamen kapsayan bir kare oluşturur.

Giriş

İçyazılı Kare Bulucu'ya hoş geldiniz, geometri ve matematiksel varsayımların büyüleyici dünyasını keşfeden interaktif bir araç.

Bu uygulama, kapalı eğriler çizmenize ve içlerinde içyazılı kareler keşfetmenize olanak tanıyarak, yüzyıllık bir matematiksel problemi canlandırıyor.

Temel Kavramlar

Kapalı Eğriler

Kapalı bir eğri, bir düzlemde sürekli bir döngüdür, bir daire veya başladığı yerde biten herhangi bir şekil gibi.

İçyazılı Kareler

İçyazılı bir kare, kapalı bir eğrinin içine mükemmel şekilde uyan, dört köşesi de eğriye değen bir karedir.

Genişletilmiş Kareler

Genişletilmiş bir kare, kapalı eğriyi tamamen kapsayan en küçük karedir.

Alan Hesaplaması

Eğri ve karelerin alanı, gelişmiş geometrik algoritmalar kullanılarak hesaplanır.

Eğri Uzunluğu

Eğri etrafındaki toplam mesafe, kilopiksel cinsinden ölçülür.

Nasıl Kullanılır

1

Araç çubuğundan bir çizim aracı seçin.

2

Tuval üzerinde kapalı bir eğri çizin.

3

İçyazılı bir kare bulmak için 'İçyazılı Kare Bul'a tıklayın.

4

Kapsayan kareyi bulmak için 'Genişletilmiş Kare Bul'a tıklayın.

5

Eğriniz ve kareler için matematiksel verileri görüntüleyin.

6

Yeni bir eğri ile başlamak için 'Temizle' düğmesini kullanın.

7

Farklı şekillerle deney yapın ve sonuçları karşılaştırın!

İleri Keşif

İçyazılı kare problemi, matematiksel keşif için birçok yol açar:

Mükemmel dairesel eğrilerin ne sıklıkla içyazılı kareler ürettiğini araştırın.

İçyazılı kareleri daha verimli bir şekilde bulmak için farklı algoritmalar keşfedin.

Eğrinin alanı ile içyazılı karesi arasındaki ilişkiyi inceleyin.

Bu problemin içyazılı küplerle üç boyuta nasıl genişleyebileceğini düşünün.

Keşfetmekten keyif alın ve matematiksel merakınız hiç bitmesin!

Meksikalı web geliştirici Luis tarafından oluşturuldu

Kaynak kodu görüntüle