Large Assignment 1: L-Systems

Due Dates

Assignment : 9am, Thursday September 14
Comments: midnight, Friday September 15

Description

Part 1: Turtle Geometry (10 points)
Exercises adapted from Turtle Geometry. Refer to the Turtle Geometry reading for these exercises.

  • The drawing generated by the function polygonHalt(size, angle) as worked through in class with the values: polygonHalt(1,1) approximates a circle.
    a) What is the radius of this circle?
    b) The sequence of drawings polygonHalt(2,2), polyHalt(1,1), polyHalt(.5,.5), … all with the same curvature (turning angle divided by distance traveled size), approaches, in the limit, a true mathematical circle. What is the radius of this circle? (Note: assume for the purposes of this question that our function can handle floating point numbers with infinite precision.)
  • Suppose we have a simple arcing path that does not cross itself and that we join the endpoints of the arc by a straight line (see figure 1.17 in the reading). Suppose further that the line and the arc do not intersect except at the endpoints. Use the simple-closed-path theorem (see reading) to give a formula relating the total turning over the arc to the (interior) angles, A and B, that the arc makes with the line.

Part 2: L-Systems (90 points)
The purpose of this assignment is to give you an opportunity to experiment with L-Systems and 2D fabrication technologies. Create three different L-Systems that are inspired by three different real-world plants.

  • Find three real-world plants and photograph them. The plants could be on-campus, in your home, or in a store, but you should be able to see and examine the actual plant, in person. If possible, harvest a sample of the plant to reference as you write your code. At most two plants can be trees. Choose plants that have visibly different structures.
  • Create an L-System model for each plant you chose. The L-System should create drawings that capture each plant’s form and structure.
  • Fabricate at least one of your drawings using one of the following options–inkjet printed tattoo, inkjet printed fabric, shrinky dink material, laser cut material, laser etched material, etc. Create a useable real-world object from your fabricated design. ie: iron a textile patch on a T-shirt, apply your tattoo to your skin, make a pair of earrings, make a lamp shade, etc.

    If you choose to use the laser cutter, see this tutorial on illustrator and this tutorial about how to use the Glow Forge laser cutter.

What to Hand In


Create a post on this website that documents the work that you did. Your post should include:

  • Good photographs and brief descriptions of each of your plants. See the post on taking good photographs for more information about how to properly document your work. These should be matched with:
  • Images generated by each of your L-Systems.
  • A paragraph or two discussing your process of selecting plants and designing your L-Systems. Describe any challenges you encountered and how you overcame them.
  • Your code. Name your program using the following convention: FirstnameLastnameLA1. (LA1 = Large Assignment 1.) Browse to the folder that contains your processing program and compress this folder to a .zip file. Upload the .zip file to your post. For information about how to upload .zip files, see this page.
  • Follow the Code Style Guidelines. Make sure you add a header to your main tab, as described in the guidelines.
  • At least three good photographs of your fabricated object. See the post on taking good photographs for more information about how to properly document your work. You will be graded in part on the quality of your documentation, so put time and attention into this part of the assignment.
  • A paragraph or two discussing your fabrication process. Describe any challenges you encountered and how you overcame them. Are you happy with your fabricated object? What do you think you’ll do with it?

Add your post to the “Large Assignment – LSystem” subcategory, under the Student Work 2023 category.

Discussion

Read and comment on the posts of at least three of your classmates.