<< Chapter < Page Chapter >> Page >

The program also causes a red skater in a green background (see Figure 1 ) to be given a red tint and then drawn on the snow scene at the location of thered-tinted ellipse. The effect is that of a spotlight with a red tint shining on the skater (see Figure 4 ) .

Discussion and sample code

Will discuss in fragments

I will discuss this program in fragments. A complete listing of the program is provided in Listing 10 near the end of the module.

The driver class named Prob04

The driver class containing the main method is shown in Listing 1 .

Listing 1 - The driver class named Prob04.
import java.awt.Color; public class Prob04{public static void main(String[] args){Prob04Runner obj = new Prob04Runner(); obj.run();}//end main }//end class Prob04

As has been the case in several earlier modules, the code in the main method instantiates an object of the class named Prob04Runner and calls the run method on that object.

When the run method returns, the main method terminates causing the program to terminate.

Beginning of the class named Prob04Runner

The class named Prob04Runner begins in Listing 2 .

Listing 2 - Beginning of the class named Prob04Runner.
class Prob04Runner{ public Prob04Runner(){//constructorSystem.out.println("Display your name here."); }//end constructor

Listing 2 shows the constructor for the class, which simply displays the student's name on the command line screen as shownin Figure 5 .

Beginning of the run method

The beginning of the run method, which is called in Listing 1 , is shown in Listing 3 .

Listing 3 - Beginning of the run method.
public void run(){ Picture skater = new Picture("Prob04a.bmp");skater.explore(); skater = crop(skater,6,59,392,293);Picture hole = new Picture("Prob04b.bmp"); hole.explore();hole = crop(hole,6,59,392,293); Picture snowScene = new Picture("Prob04c.jpg");snowScene.explore(); snowScene = crop(snowScene,6,59,392,293);

Instantiate and display three Picture objects

The code in Listing 3 instantiates Picture objects from the three image files and displays those pictures in Figure 1 , Figure 2 , and Figure 3 .

Crop the pictures

Note that the images in those three pictures contain the Alice runtime window controls as a banner that reads World Running... and a line of buttons.

The method named crop

Listing 3 calls a method named crop on all three Picture objects to eliminate the Alice runtime controls. Note that the same rectangular area is preserved for all three images. Thus, allthree images are the same size after cropping.

The cropped snow scene image

If you were to display the picture whose reference is stored in the variable named snowScene after the crop method returns, you would see the image shown in Figure 6 with the Alice runtime controls no longer visible.

Figure 6 - Cropped version of the snow scene image.

Cropped image of the frozen lake.

The crop method

The method named crop that was used to crop the three pictures is essentially the same as the cropping methods that I explained in earliermodules. Therefore, I won't repeat that explanation here. You can view the crop method in its entirety in Listing 10 near the end of the module.

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Object-oriented programming (oop) with java. OpenStax CNX. Jun 29, 2016 Download for free at https://legacy.cnx.org/content/col11441/1.201
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Object-oriented programming (oop) with java' conversation and receive update notifications?

Ask