Skip to content

Jovinull/fractal-tree

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Árvore Fractal com Turtle

Descrição

Este projeto é uma implementação de uma árvore fractal utilizando a biblioteca turtle em Python. A árvore fractal é um exemplo clássico de recursividade e gera uma estrutura visualmente impressionante que simula uma árvore com folhas, frutos, tronco, raízes, cogumelos e diversos elementos adicionais como nuvens, estrelas, lua, fadas e vagalumes.

Objetivo do Projeto

O objetivo deste projeto é servir como material de estudo para conceitos de recursividade, fractais e uso da biblioteca turtle para gráficos em Python. Estudar e implementar árvores fractais pode ajudar a compreender melhor:

  • Recursividade: Como uma função pode chamar a si mesma para resolver problemas complexos através de soluções mais simples.
  • Fractais: Estruturas que se repetem em diferentes escalas e são encontradas em muitas formas naturais, como árvores, montanhas e flocos de neve.
  • Gráficos com Turtle: Utilização da biblioteca turtle para criar desenhos e animações em Python, desenvolvendo habilidades em programação gráfica.

Instruções para Execução

  1. Certifique-se de ter o Python instalado em seu sistema.
  2. Salve o código em um arquivo Python, por exemplo, arvore_fractal_magica.py.
  3. Execute o arquivo com Python 3:
    python arvore_fractal_magica.py
  4. Uma janela do turtle será aberta e a árvore fractal, juntamente com os elementos adicionais, será desenhada. Clique na janela para fechá-la após a conclusão.

Funções Principais

  1. draw_branch(branch_length, t, pen_size):

    • Desenha um galho da árvore. Se o comprimento do galho for menor que 20, desenha uma folha. Também pode adicionar frutos ocasionalmente.
    • Utiliza recursão para desenhar subgalhos com variações aleatórias no ângulo e comprimento para um aspecto mais natural.
  2. draw_star(x, y, size, t):

    • Desenha uma estrela no céu.
  3. draw_grass(t):

    • Desenha grama na base da árvore.
  4. draw_moon(t):

    • Desenha a lua no céu.
  5. draw_fairy(x, y, t):

    • Desenha uma fada brilhante.
  6. draw_firefly(t):

    • Desenha um vagalume.
  7. draw_cloud(x, y, t):

    • Desenha uma nuvem no céu.
  8. draw_root(t):

    • Desenha raízes na base da árvore.
  9. draw_mushroom(t):

    • Desenha cogumelos na base da árvore

.

  1. main():
    • Configura o ambiente turtle, desenha os elementos adicionais e inicia a recursão para desenhar a árvore.

Conceitos Importantes

  • Recursividade:

    • Funções que se chamam para resolver problemas em partes menores e mais simples, essencial para gerar fractais como árvores.
  • Fractais:

    • Estruturas auto-similares em diferentes escalas. A árvore fractal é um exemplo clássico onde a estrutura principal (tronco) se repete em cada subgalho.
  • Biblioteca Turtle:

    • Usada para desenhar gráficos de forma interativa em Python, facilitando a visualização de conceitos matemáticos e algorítmicos.

Conclusão

Este projeto demonstra a beleza e complexidade dos fractais, bem como a capacidade da recursividade de criar estruturas complexas a partir de regras simples. A biblioteca turtle é uma ferramenta poderosa para visualização de algoritmos e criação de gráficos interativos em Python. Esperamos que este projeto ajude a aprofundar o entendimento desses conceitos e inspire a exploração de outras formas fractais e gráficos gerados por computador.

About

Árvore Fractal com Turtle é um projeto em Python que utiliza a biblioteca Turtle para criar uma árvore fractal detalhada, incluindo folhas, frutos, tronco, raízes, cogumelos, nuvens, estrelas, lua, fadas e vagalumes. O projeto explora conceitos de recursividade, fractais e programação gráfica, sendo uma excelente ferramenta para aprendizado.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages