Project 1 - A Turtle Drawing
Due Date: Monday 9/26/2011 at 11:59 pm
For this project, we will want to use the Turtle class to
draw a large multifaceted geometrical shape onto a picture.
These modifications are to add "something" to the image. Normally
this would be to draw something in the foreground of an image
that is just a scene.
Examples of such drawing can be shown by these
examples or these
examples.
The objectives of this assignment are to have you define your own Java
methods to add to the basic behavior of the Turtle Java class. You will
write Java methods with and without parameters. You will then write a Java
main program to call on those Java methods to draw connected multifaceted
geometrical shapes that you have designed.
Requirements
- Design the shapes you want drawn. You should have a minimum
of 10 different shapes (that could be connected) to create
a large multifaceted shape -- a building for example.
- Write a Java program (e.g. one with a class method named main()) that does the following:
- Creates a Picture for the turtles
- Creates at least two Turtles in the Picture
- Uses variables to keep track of pen colors, shape lengths.
- Calls methods on each of the two Turtles to create a
multifaceted geometrical shapes on the Picture. For example, you
could draw multiple cabins in a beach picture along with sea stars or draw a blueprint of your dream home.
- Moves the turtles to different locations in the Picture and changes their orientation in order to draw the shapes as desired.
- Draws shapes by changing the default behavior of each Turtle object. For example, you can change the color and thickness of the pen used in drawing the shapes.
- Define and write methods to draw shapes using the turtles. At a minimum, you should include the following methods:
- A method to draw a rectangle of a specified width and height (e.g., the Turtle can be asked to draw rectangles of different dimensions by a call to the same method)
- A method to draw a hexagon of a specified length and color (e.g., the Turtle can be asked to draw hexagon of different lengths and colors).
- Three other methods to draw shapes of your own choosing. All methods must be flexible to allow the shape to be drawn in different sizes, or line thickness, or pen color.
Project Collaboration
You are allowed to receive help on this project from other
students who are also taking CS 101. Each student must still
complete and submit his/her own project. You will be required
to include a Collaboration Statement somewhere on your
project if you receive help. This statement can simply be
something like the following:
For this project, I received help from the following member of CS 101.
- Devang Jariwala, netID: djariw1
- Shun Liang, netID: sliang2
- Hongwei Zhu, netID: hzhu7
This statement should list each helping student's name
in a comment in the "header comment" of your Java file that
includes the main() method.
This project is to be written using good programming style.
Elements of good programming style include:
- Meaningful Variable Names
- Proper Indentation of Code
- Blank Lines between Code Sections
- Use of Methods
- In-Line Commenting
- Header Comment for the File
- Header Comments for each Method.
Submission of your Project
You must electronically submit all of your files (all .java files,
any image files and any other files used)
via the Assignment Link for Project 1 in Blackboard.
This project was modified from project by
Dr. Alvaro Monge
for
CECS-174 at CSULB.
CS 101 Home Page
Department of Computer Science
University of Illinois at Chicago