<< Chapter < Page Chapter >> Page >
This module contains review questions and answers keyed to the module titled Java3006: Implementing a space-wise linear color-modification algorithm.

Revised: Sat Apr 02 20:06:54 CDT 2016

This page is included in the following Books:

Table of contents

Preface

This module contains review questions and answers keyed to the module titled Java3006: Implementing a space-wise linear color-modification algorithm .

The questions and the answers are connected by hyperlinks to make it easy for you to navigate from the question to the answer and back again.

Questions

Question 1 .

True or False? The program shown in Listing 1 will transform the image shown in Figure 1 into the image shown in Figure 2 (or to an image that looks very similar to the image shown in Figure 2 ).

Listing 1 . Source code for Java3006r.
/*File Java3006r Copyright 2013 R.G.Baldwin *********************************************************/public class Java3006r{ public static void main(String[]args){ Java3006rRunner obj = new Java3006rRunner();obj.run(); System.out.println(obj.getPicture());}//end main }//end class Java3006r//======================================================// class Java3006rRunner{//Instantiate the Picture object. private Picture pic = new Picture("Java3006r.jpg"); public Java3006rRunner(){//constructorSystem.out.println("Dick Baldwin"); }//end constructor//----------------------------------------------------// //Accessor methodpublic Picture getPicture(){return pic;} //----------------------------------------------------////This method is where the action is. public void run(){pic.addMessage("Dick Baldwin",10,20); //Display a PictureExplorer object.pic.explore(); //Get an array of Pixel objects.Pixel[] pixels = pic.getPixels();//Declare working variables Pixel pixel = null;int green = 0; int blue = 0;int width = pic.getWidth(); double greenScale = 0;double blueScale = 0; //Scale the blue and green color components according// to the algorithm given above. //Do not scale the red component.for(int cnt = 0;cnt<pixels.length;cnt++){ //Get blue and green values for current pixel.pixel = pixels[cnt];green = pixel.getGreen(); blue = pixel.getBlue();//Compute the column number and use it to compute // the scale factor.int col = cnt%width; greenScale = (double)(width - col)/width;blueScale = (double)(col)/width; //Apply the scale factor.pixel.setGreen((int)(green * greenScale)); pixel.setBlue((int)(blue * blueScale));}//end for loop //Display a PictureExplorer object.pic.explore(); }//end run method}//end class Java3006rRunner

Figure 1 - The image from Java3006r.jpg.

This is the input image to the program named Java3006r.

Figure 2 - Possible output image.

This is a color modified version of the input image with the colors ranging from near yellow on the left to near magenta on the right.

Answer 1

Question 2

True or False? The output shown in Figure 2 was produced by calling the show method of Ericson's Picture class.

Answer 2

Question 3

True or False? A call to Ericson's getPixels method returns a reference to a one-dimensional array object. The elements in the array are references to Pixel objects, where each Pixel object represents a single pixel in an image.

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