Playful Python Projects: Modeling and Animation by Maxim Mozgovoy

Playful Python Projects: Modeling and Animation by Maxim Mozgovoy

Author:Maxim Mozgovoy
Language: eng
Format: epub
Tags: artificial intelligence, coding projects, computer, gaming, Python Programming, and technology
Publisher: CRC Press
Published: 2024-06-15T00:00:00+00:00


-

Turn right by ANGLE degrees.

[

Start a new branch (pass the control to a new turtle

created here).

]

End a branch (pass the control to the previously active

turtle).

4This is how deterministic context free (DOL) systems work. There are also other, more advanced flavors of L-systems.

Living things

115

Now let’s look at the picture drawn by the visualization algorithm for the previously discussed L-system consisting of the axiom g and a single production rule g → g[+g][-g] (see Table 5.2). This picture is obtained with DISTANCE

= 25, ANGLE = 20; the turtle is initially placed at the bottom of the screen, pointing upward.

TABLE 5.2: Visualized evolution of a simple L-system.

Last step

Plant string

Visualization

0

g

1

g[+g][-g]

2

g[+g][-g][+g[+g]

[-g]][-g[+g][-g]]

…

6

…

The initial plant string g is easy: by executing the command g, the turtle draws a single vertical line. The next string g[+g][-g] is more interesting. The first g corresponds to a vertical line, just like before. The next symbol [ starts a branch: a new turtle appears in the current position, turns ANGLE degrees to the left (the + command) and draws a line (the g command). The branch ends here, and the control is passed to the previous turtle. Then the right branch is drawn in the same manner.

Clearly, these descriptions contain many unnecessary commands. For example, the next plant string starts with the already familiar fragment g[+g][-g]. After finishing it, the turtle proceeds to a more complex structure



Download



Copyright Disclaimer:
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.