Picture Combinators
These are methods that return Picture objects. Remember that the picture grid is a 1x1 square where (0.0,0.0) is the bottom left corner and (1.0,1.0) is the top right corner.
empty
public Picture empty()
Returns the empty picture.
Methods that Rotate Pictures
public Picture clockwise90 (Picture p)
Returns a new Picture
that is the original Picture
p
rotated 90
degrees in the clockwise direction.
public Picture clockwise180 (Picture p)
Returns a new Picture
that is the original Picture
p
rotated 180
degrees in the clockwise direction.
public Picture clockwise270 (Picture p)
Returns a new Picture
that is the original Picture
p
rotated 270
degrees in the clockwise direction.
![]() p1 |
![]() clockwise90(p1) |
![]() clockwise180(p1) |
![]() clockwise270(p1) |
Methods that Flip Pictures around an Axis
The axes are defined as shown in the diagram below:
public Picture flipHorizontally (Picture p)
Returns a new Picture
that is the original Picture
p
flipped
around its vertical axis (from (0.5,0.0) to (0.5,1.0)).
public Picture flipVertically (Picture p)
Returns a new Picture
that is the original Picture
p
flipped
around its horizontal axis (from (0.0,0.5) to (1.0,0.5)).
public Picture flipDiagonally (Picture p)
Returns a new Picture
that is the original Picture
p
flipped
around its diagonal axis (from (0.0,0.0) to (1.0,1.0)).
![]() p1 |
![]() flipVertically(p1) |
![]() flipHorizontally(p1) |
![]() flipDiagonally(p1) |
overlay
public Picture overlay (Picture p1, Picture p2)
Returns a new Picture
that is the result of placing Picture
p1
on
top of Picture
p2
.
![]() p1 |
![]() p2 |
![]() overlay(p1,p2) |
Methods that Place Pictures Next to Each Other
public Picture beside (Picture p1, Picture p2)
Returns a new Picture
that is the result of placing Picture
p1
to
the left of Picture
p2
, where each Picture
takes up half of the
screen.
public Picture beside (Picture p1, Picture p2, double
fraction)
Returns a new Picture
that is the result of placing Picture
p1
to
the left of Picture
p2
, where p1
takes up the specified
fraction
of the screen. fraction
is a decimal number
between 0.0 (none of the screen) and 1.0 (the entire screen).
public Picture above (Picture p1, Picture p2)
Returns a new Picture
that is the result of placing Picture
p1
above Picture
p2
, where each Picture
takes up half of the
screen.
public Picture above (Picture p1, Picture p2, double
fraction)
Returns a new Picture
that is the result of placing Picture
p1
above Picture
p2
, where p1
takes up the specified
fraction
of the screen. fraction
is a decimal number
between 0.0 (none of the screen) and 1.0 (the entire screen).
![]() beside(p1,p1) |
![]() beside(p1,p1,0.25) |
![]() above(p1,p1) |
![]() above(p1,p1,0.66) |
Picture Choice Manipulators
public void initializePictureChoices()
This method is invoked when a PictureWorld
applet is created.
public void addPictureChoice(String name, Picture pic)
This method adds the choice name
to the list of Picture
choices and associates it with the Picture
pic
.