Sobre

Círculos Recursivos

Círculos recursivos é um padrão fractal simples onde cada círculo contém círculos menores, criando uma estrutura auto-similar infinita.

Algoritmo Principal

O algoritmo usa recursão para desenhar círculos:

  1. Desenha um círculo
  2. Se o raio é maior que um limite mínimo (16 pixels):
    • Cria 4 círculos menores
    • Cada círculo tem metade do raio do círculo pai
    • Posicionados nas direções cardinais (norte, sul, leste, oeste)
    • Recursivamente desenha cada círculo filho
  3. Se o raio é menor que o limite, para a recursão

Equações Implementadas

No código:

function drawCircle(x, y, radius) {
  // Desenha o círculo
  arc(x, y, radius, 0, 2π)
  
  // Condição de parada
  if (radius > 16) {
    // Cria 4 círculos filhos
    drawCircle(x + radius/2, y, radius/2)      // Direita
    drawCircle(x - radius/2, y, radius/2)      // Esquerda
    drawCircle(x, y + radius/2, radius/2)      // Baixo
    drawCircle(x, y - radius/2, radius/2)      // Cima
  }
}

Complexidade de Compreensão

Nível: Básico a Intermediário

  • Conceitos necessários: Recursão, geometria básica, fractais
  • Matemática: Geometria 2D, recursão matemática
  • Programação: Recursão, gráficos vetoriais, transformações

Referências e Recursos para Estudo

Artigos e Documentação

Tutoriais e Código

Aprofundamento Matemático

Visualizações Interativas

Arquivo do processo

Todas as gerações — incluindo as ruins — fazem parte do processo.

14quadros