lab 7: tree & forest. drawing a forest created by emily hill & jerry alan fails

11
Lab 7: Tree & Forest

Upload: dominick-hampton

Post on 05-Jan-2016

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Lab 7: Tree & Forest. Drawing a Forest Created by Emily Hill & Jerry Alan Fails

Lab 7: Tree & Forest

Page 2: Lab 7: Tree & Forest. Drawing a Forest Created by Emily Hill & Jerry Alan Fails

Drawing a Forest

Created by Emily Hill & Jerry Alan Fails

Page 3: Lab 7: Tree & Forest. Drawing a Forest Created by Emily Hill & Jerry Alan Fails

Drawing a ForestStep 1: Create classes for Rectangle & Triangle (done)

Step 2: Create a Tree class that can draw a tree at any: x, y position; width, height; color

Step 3: Create a Forest class with at least 3 Trees

Created by Emily Hill & Jerry Alan Fails

Page 4: Lab 7: Tree & Forest. Drawing a Forest Created by Emily Hill & Jerry Alan Fails

Step 2: Tree class• Create a new Tree class• Has 2 fields: a triangle for the top & a rectangle for the trunk• Has 3 constructors:

– Default– One with 4 parameters: x, y, width, & height– One with 6 parameters: x, y, width, height, topColor, trunkColor

• Getters/setters for topColor, trunkColor• Has a public setBounds method that takes: x, y, width, height

– (Might want to add this method to Triangle and Rectangle, but you don’t need to as you can use setX, setY, setWidth, and setHeight)

– Tree should start at x, y and extend to width & height– Top and trunk should be relative to one another and to size of tree:

• Trunk 1/4 height of tree, 1/5 width• Top 3/4 height of tree, full width

• Has a paintComponent method that has a Graphics parameter and calls the corresponding paintComponent methods for the 2 fields

• Test: add Tree(s) to Picture class, use different constructors, change the size of the Tree in the constructor or init method and test that it works Created by Emily Hill & Jerry Alan Fails

Page 5: Lab 7: Tree & Forest. Drawing a Forest Created by Emily Hill & Jerry Alan Fails

Step 3: Forest class

• Create a new Forest class• Has at least 3 Tree fields• Has a constructor that takes 4 parameters: x, y, width, height• Has a draw method that has a Graphics parameter and calls

the corresponding draw methods for the 3 fields• Test: replace Tree field in Picture with a Forest• Modify position/sizes in PictureApplet.init() or the Picture

constructor• Look at how easy it is to aggregate components!

Created by Emily Hill & Jerry Alan Fails

Page 6: Lab 7: Tree & Forest. Drawing a Forest Created by Emily Hill & Jerry Alan Fails

Homework• Finish lab exercise (due after exam)

Created by Emily Hill & Jerry Alan Fails

Page 7: Lab 7: Tree & Forest. Drawing a Forest Created by Emily Hill & Jerry Alan Fails

General Review• Lecture notes• Class exercises• Labs• CodingBat• Chapters 1-4

– Where• Chapter 1• Chapter 2• Chapter 3 (except 3.7-3.8, 3.10-3.11)• Chapter 4 (except 4.8-4.9)

– What:• Key concepts• Concept summary• Section headings• For extra help look at the exercises

Page 8: Lab 7: Tree & Forest. Drawing a Forest Created by Emily Hill & Jerry Alan Fails

Chapter 1: Computer Basics• Computer processing• Hardware components• Networks• The Java programming language• Program development• Object-oriented programming

Page 9: Lab 7: Tree & Forest. Drawing a Forest Created by Emily Hill & Jerry Alan Fails

Chapter 2: Data & Expressions• Character strings• Variables and assignment• Primitive data types• Expressions• Data conversions• Interactive programs – the Scanner class• Graphics, Applets, drawing shapes

Page 10: Lab 7: Tree & Forest. Drawing a Forest Created by Emily Hill & Jerry Alan Fails

Chapter 3: Using Classes and Objects• Creating objects• The String class• Packages – import, Java API• Classes: Random, Math

Page 11: Lab 7: Tree & Forest. Drawing a Forest Created by Emily Hill & Jerry Alan Fails

Chapter 4: Writing Classes• Classes and objects• Anatomy of a class

– Three main components of a class– What each item does– How to write it in code

• Encapsulation