Geek points if you understand this. Double points if you can do it - - PowerPoint PPT Presentation

geek points if you understand this double points if you
SMART_READER_LITE
LIVE PREVIEW

Geek points if you understand this. Double points if you can do it - - PowerPoint PPT Presentation

Geek points if you understand this. Double points if you can do it in your head. What can we do to improve drawBorder() ? Drawing two vertical lines uses one "recipe"! Each uses a different y value. So: Create a parameterized method


slide-1
SLIDE 1

Geek points if you understand this. Double points if you can do it in your head.

slide-2
SLIDE 2

What can we do to improve drawBorder()?

Drawing two vertical lines uses one "recipe"! Each uses a different y value. So: Create a parameterized method to draw a vertical line. Do the same for horizontal lines. Make the size of the border a parameter. Make the size of the border grow with the size of the image. Others?

slide-3
SLIDE 3

STEP BY STEP

public void lighter( double amount ) { Pixel[] pixels = this.getPixels(); double factor = 1 + amount; for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } }

slide-4
SLIDE 4

STEP BY STEP

Pixel[] pixels = this.getPixels(); double factor = 1 + amount; pixels Pixel[0] Pixel red=127 green=163 blue=197 Pixel[1] Pixel red=127 green=163 blue=197 Pixel[2] Pixel red=128 green=164 blue=198 ... factor 1.5

slide-5
SLIDE 5

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } pixels Pixel[0] Pixel red=127 green=163 blue=197 Pixel[1] Pixel red=127 green=163 blue=197 Pixel[2] Pixel red=128 green=164 blue=198 ... factor 1.5

slide-6
SLIDE 6

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } pixels Pixel[0] Pixel red=127 green=163 blue=197 Pixel[1] Pixel red=127 green=163 blue=197 Pixel[2] Pixel red=128 green=164 blue=198 ... factor 1.5 i

slide-7
SLIDE 7

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } pixels Pixel[0] Pixel red=127 green=163 blue=197 Pixel[1] Pixel red=127 green=163 blue=197 Pixel[2] Pixel red=128 green=164 blue=198 ... factor 1.5 i

slide-8
SLIDE 8

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } p -> Pixel[0] Pixel red=127 green=163 blue=197 Pixel[1] Pixel red=127 green=163 blue=197 Pixel[2] Pixel red=128 green=164 blue=198 ... factor 1.5 i

slide-9
SLIDE 9

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } p -> Pixel[0] Pixel red=190 green=163 blue=197 Pixel[1] Pixel red=127 green=163 blue=197 Pixel[2] Pixel red=128 green=164 blue=198 ... factor 1.5 i

slide-10
SLIDE 10

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } p -> Pixel[0] Pixel red=190 green=244 blue=197 Pixel[1] Pixel red=127 green=163 blue=197 Pixel[2] Pixel red=128 green=164 blue=198 ... factor 1.5 i

slide-11
SLIDE 11

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } p -> Pixel[0] Pixel red=190 green=244 blue=295 Pixel[1] Pixel red=127 green=163 blue=197 Pixel[2] Pixel red=128 green=164 blue=198 ... factor 1.5 i

slide-12
SLIDE 12

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } p -> Pixel[0] Pixel red=190 green=244 blue=295 Pixel[1] Pixel red=127 green=163 blue=197 Pixel[2] Pixel red=128 green=164 blue=198 ... factor 1.5 i

slide-13
SLIDE 13

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } p -> Pixel[0] Pixel red=190 green=244 blue=295 Pixel[1] Pixel red=127 green=163 blue=197 Pixel[2] Pixel red=128 green=164 blue=198 ... factor 1.5 i 1

slide-14
SLIDE 14

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } p -> Pixel[0] Pixel red=190 green=244 blue=295 Pixel[1] Pixel red=127 green=163 blue=197 Pixel[2] Pixel red=128 green=164 blue=198 ... factor 1.5 i 1

slide-15
SLIDE 15

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } Pixel[0] Pixel red=190 green=244 blue=295 p -> Pixel[1] Pixel red=127 green=163 blue=197 Pixel[2] Pixel red=128 green=164 blue=198 ... factor 1.5 i 1

slide-16
SLIDE 16

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } Pixel[0] Pixel red=190 green=244 blue=295 p -> Pixel[1] Pixel red=190 green=163 blue=197 Pixel[2] Pixel red=128 green=164 blue=198 ... factor 1.5 i 1

slide-17
SLIDE 17

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } Pixel[0] Pixel red=190 green=244 blue=295 p -> Pixel[1] Pixel red=190 green=244 blue=197 Pixel[2] Pixel red=128 green=164 blue=198 ... factor 1.5 i 1

slide-18
SLIDE 18

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } Pixel[0] Pixel red=190 green=244 blue=295 p -> Pixel[1] Pixel red=190 green=244 blue=295 Pixel[2] Pixel red=128 green=164 blue=198 ... factor 1.5 i 1

slide-19
SLIDE 19

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } Pixel[0] Pixel red=190 green=244 blue=295 p -> Pixel[1] Pixel red=190 green=244 blue=295 Pixel[2] Pixel red=128 green=164 blue=198 ... factor 1.5 i 2

slide-20
SLIDE 20

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } Pixel[0] Pixel red=190 green=244 blue=295 p -> Pixel[1] Pixel red=190 green=244 blue=295 Pixel[2] Pixel red=128 green=164 blue=198 ... factor 1.5 i 2

slide-21
SLIDE 21

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } Pixel[0] Pixel red=190 green=244 blue=295 Pixel[0] Pixel red=190 green=244 blue=295 p -> Pixel[0] Pixel red=128 green=164 blue=198 ... factor 1.5 i 2 ... AND SO ON

slide-22
SLIDE 22

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } ... Pixel[179197] Pixel red=69 green=75 blue=30 p -> Pixel[179198] Pixel red=69 green=75 blue=30 Pixel[179199] Pixel red=40 green=50 blue=18 factor 1.5 i 179198

slide-23
SLIDE 23

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } ... Pixel[179197] Pixel red=69 green=75 blue=30 p -> Pixel[179198] Pixel red=69 green=75 blue=30 Pixel[179199] Pixel red=40 green=50 blue=18 factor 1.5 i 179199

slide-24
SLIDE 24

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } ... Pixel[179197] Pixel red=69 green=75 blue=30 Pixel[179198] Pixel red=69 green=75 blue=30 p -> Pixel[179199] Pixel red=40 green=50 blue=18 factor 1.5 i 179199

slide-25
SLIDE 25

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } ... Pixel[179197] Pixel red=69 green=75 blue=30 Pixel[179198] Pixel red=69 green=75 blue=30 p -> Pixel[179199] Pixel red=60 green=50 blue=18 factor 1.5 i 179199

slide-26
SLIDE 26

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } ... Pixel[179197] Pixel red=69 green=75 blue=30 Pixel[179198] Pixel red=69 green=75 blue=30 p -> Pixel[179199] Pixel red=60 green=75 blue=18 factor 1.5 i 179199

slide-27
SLIDE 27

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } ... Pixel[179197] Pixel red=69 green=75 blue=30 Pixel[179198] Pixel red=69 green=75 blue=30 p -> Pixel[179199] Pixel red=60 green=75 blue=27 factor 1.5 i 179199

slide-28
SLIDE 28

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } ... Pixel[179197] Pixel red=69 green=75 blue=30 Pixel[179198] Pixel red=69 green=75 blue=30 p -> Pixel[179199] Pixel red=60 green=75 blue=27 factor 1.5 i 179200

slide-29
SLIDE 29

STEP BY STEP

for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } ... Pixel[179197] Pixel red=69 green=75 blue=30 Pixel[179198] Pixel red=69 green=75 blue=30 p -> Pixel[179199] Pixel red=60 green=75 blue=27 factor 1.5 i 179200 ... WHICH FAILS!

slide-30
SLIDE 30

STEP BY STEP

public void lighter( double amount ) { Pixel[] pixels = this.getPixels(); double factor = 1 + amount; for ( int i = 0; i < pixels.length; i++ ) { Pixel p = pixels[i]; p.setRed ( (int) (p.getRed () * factor) ); p.setGreen( (int) (p.getGreen() * factor) ); p.setBlue ( (int) (p.getBlue () * factor) ); } } pixels ... factor 1.5

slide-31
SLIDE 31

Quick Exercise

Suppose that I have declared this array:

double[] mileageForWeek = {3, 8, 10, 7, 10, 0, 20};

Write a for-loop to compute the total number of miles.

slide-32
SLIDE 32

Remember: No class Thursday (Optional HW 1 session)

slide-33
SLIDE 33