Random Fractal Tree - Customizable

Copyright Claim

Random Fractal Tree - Customizable

Boost
6
6
0
GIF
GIF

Print Profile(1)

All
A1

0.2mm layer, 2 walls, 10% infill
0.2mm layer, 2 walls, 10% infill
Designer
52 min
1 plate

Open in Bambu Studio
Boost
6
6
0
0
5
0
Released

Description

Historia

He estado bastante tiempo pensando en hacer este árbol fractal aleatorio, pero "nunca tenía tiempo".

@jeroyang ha se ha adelantado publicando una idea parecida (https://makerworld.com/en/models/513889), así que me he animado a programar mi visión de árbol fractal.

 

En mi caso, he optado por permitir que la máquina "tome sus decisiones" generando ramas de forma aleatoria en varios aspectos:

- Ángulo de las ramas. Ángulo de inclinación de cada rama con respecto a su base. Ángulo entre dos valores min/max.

- Número de ramas. Ramificaciones en cada nivel. Número de ramas entre dos valores min/max

 

Explicación

Se dibuja el tronco

Se llama a la función branches() para iniciar el proceso de dibujado de ramas

Si la profundidad es menos que 1, se continúa

Se mueve el plano de trabajo al final de la rama anterior

Se obtiene el número de ramas en este nivel, de forma aleatoria

Se obtiene un angulo aleatorio para la inclinación de las ramas

Cálculo de ángulo de rotación según el número de ramas, para completar una vuelta completa. 360º/ramas

Bucle. El contenido se ejecutara una vez por cada rama

Rotado hasta el punto inicial de cada rama

Creación de cada rama

Llamada recursiva al método generador de ramas

En cada rama del nivel inicial, se dibuja esa rama, se realiza la llamada recursiva y se calculan las ramas hijas

Para cada rama hija se repite el proceso, hasta alcanzar la profundidad máxima.

 

#######################################################

History

I have spent quite some time thinking about making this random fractal tree, but I “never had the time.”

@jeroyang has published a similar idea (https://makerworld.com/en/models/513889), which inspired me to program my vision of a fractal tree.

 

In my case, I decided to let the machine "make its own decisions" by generating branches randomly in several aspects:

- Branch angle. Inclination angle of each branch relative to its base. Angle between two min/max values.

- Number of branches. Branching at each level. Number of branches between two min/max values.

 

Explanation

The trunk is drawn

The branches() function is called to start the branch drawing process

If the depth is less than 1, the process continues

The workspace is moved to the end of the previous branch

The number of branches at this level is obtained randomly

A random angle for the inclination of the branches is obtained

The rotation angle is calculated based on the number of branches to complete a full circle. 360º/branches

Loop. The content is executed once for each branch

Rotated to the starting point of each branch

Creation of each branch

Recursive call to the branch generating method

At each branch of the initial level, that branch is drawn, the recursive call is made, and the child branches are calculated

For each child branch, the process is repeated until the maximum depth is reached

 

Comment & Rating (0)

Please fill in your opinion
(0/5000)

No more