Kylie's CS151 Project 10
Skip to end of metadata
Go to start of metadata

The purpose of this project was to implement new styles of drawing and write a new lsystem.

Task 1 asked us to create a 'jitter3' style in our TurtleInterpreter class in the same way that we created the 'jitter' style, except with three lines drawn each time.

Task 2 asked us to create a 'dotted' style that draws a series of circles and allows for a setDotSize method.

Task 3 asked us to create a demo_line_styles.py that draws multiple shapes with each of the styles. I drew each of my shapes with each style and then changed the jitterSigma and the for size and drew all of my shapes a second time. My shapes are pictured below.


Required Image 1

Task 4 asked us to make a copy of our indoor_scene file from last week and modify it so it uses our new line styles. I changed the line style of the background, the trees, and the octagons to jitter3; the hexagons to jitter; and the decagons and picture-frame squares to dotted. My new indoor_scene is pictured below.

Required Image 2

Task 5 asked us to make our own parameterized stochastic multi-rule L-system. I modified the sysSnowflake file that we used in lab. I changed the angle size between movements and increased the number of movements to create a more intricate snowflake.  My new snowflake (blue) and the original snowflake (white) are pictured below. 
Required Image 3

For my first extension, I created another lsystem using the sysTree.txt from this week's lab as a model. I created a more detailed tree that draws many colorful leaves and berries on the upper branches. I made the angle size smaller so that the branches are more upright. My new tree (far left) and the original sysTree (far right) are pictured below.
Extension 1

For my second extension, I created another line style that makes a more extreme jitter effect by drawing 15 lines, 15 pixels apart. My new line style used to draw shapes is pictured below. 
Extension 2

By doing this project, I learned how to create more complex lsystems that make use of the replacement method. I also learned how to make new line styles.

I got help on this project from Stephanie, Sara Hoffman, Hannah Bossi, and Chloe Boehm.

Labels