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:
- Desenha um círculo
- 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
- 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
- Wikipedia - Fractal - Visão geral sobre fractais
- MathWorld - Fractal - Definição matemática
- Fractal Foundation - Recursos educacionais
Tutoriais e Código
- The Coding Train - Recursion - Tutorial sobre recursão
- Processing Examples - Recursion - Exemplos práticos
- Paul Bourke - Fractals - Recursos
Aprofundamento Matemático
- Fractal Geometry - Falconer - Geometria fractal
- Introduction to Algorithms - CLRS - Recursão em algoritmos
Visualizações Interativas
- Fractal Explorer - Explorador de fractais
- Recursive Patterns - Visualizações recursivas
Arquivo do processo
Todas as gerações — incluindo as ruins — fazem parte do processo.
14quadros