<< Chapter < Page Chapter >> Page >
This module contains review questions and answers keyed to the module titled Java3030: Merging Pictures.

Revised: Mon Apr 04 11:10:04 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 Java3030: Merging Pictures .

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 .

Given the two input images shown in Figure 1 and Figure 2 , which of the following two output images is produced by the code in Listing 1 ? Note that the differences in the two possible output images are subtle. Also note the RGB colorvalues shown at the same cursor location in all four images.

A. Figure 3

B. Figure 4

Listing 1 . Question 1.
/*File Java3030ra Copyright 2013 R.G.Baldwin *********************************************************/import java.awt.Color; import java.awt.Graphics2D;import java.awt.Graphics; import java.awt.GradientPaint;import java.awt.geom.Ellipse2D; public class Java3030ra{public static void main(String[] args){new Java3030raRunner().run(); }//end main method}//end class Java3030ra //======================================================//class Java3030raRunner{ public void run(){Picture penguin = new Picture("Prob05a.jpg"); penguin.explore();Picture hare = new Picture("Prob05b.jpg"); hare.explore();merge(hare,penguin); hare.explore();}//end run //----------------------------------------------------//private void merge(Picture left,Picture right){ int width = left.getWidth();int height = left.getHeight(); double scaleL = 0;double scaleR = 0; int redL = 0;int greenL = 0; int blueL = 0;int redR = 0; int greenR = 0;int blueR = 0; Pixel pixelL = null;Pixel pixelR = null; for(int row = 0;row<height;row++){ for(int col = 0;col<width;col++){ scaleR = (double)col/width;scaleR *= scaleR; scaleL = 1.0 - scaleR;pixelL = left.getPixel(col,row); pixelR = right.getPixel(col,row);redL = pixelL.getColor().getRed(); greenL = pixelL.getColor().getGreen();blueL = pixelL.getColor().getBlue(); redR = pixelR.getColor().getRed();greenR = pixelR.getColor().getGreen(); blueR = pixelR.getColor().getBlue();redL = (int)(redL*scaleL + redR*scaleR); greenL = (int)(greenL*scaleL + greenR*scaleR);blueL = (int)(blueL*scaleL + blueR*scaleR); pixelL.setColor(new Color(redL,greenL,blueL));}//end inner loop }//end outer loop}//end merge //----------------------------------------------------//}//end class Java3030raRunner

Figure 1 - One of two input images.

Input image displayed in a PictureExplorer object.

Figure 2 - The second of two input images.

Input image displayed in a PictureExplorer object.

Figure 3 - Possible output image.

Possible output image.

Figure 4 - Possible output image.

Possible output image.

Answer 1

Figures

Listings

What is the meaning of the following two images?

This image was inserted here simply to insert some space between the questions and the answers to keep them from being visible on the screen at thesame time.

The image is also an example of the kinds of things that we do in my course titled ITSE 2321, Object-Oriented Programming.

Spacer image of a rabbit and a penguin.

This image was also inserted for the purpose of inserting space between the questions and the answers.

Spacer image of a penguin in the snow in front of some houses.

Answers

Answer 1

The code in Listing 1 produces the output image shown in Figure 3 .

Back to Question 1

Miscellaneous

This section contains a variety of miscellaneous information.

Housekeeping material
  • Module name: Java3030r Review
  • File: Java3030r.htm
  • Published: 02/18/13
Disclaimers:

Financial : Although the Connexions site makes it possible for you to download aPDF file for this module at no charge, and also makes it possible for you to purchase a pre-printed version of the PDF file, youshould be aware that some of the HTML elements in this module may not translate well into PDF.

I also want you to know that, I receive no financial compensation from the Connexions website even if you purchase the PDF version ofthe module.

In the past, unknown individuals have copied my modules from cnx.org, converted them to Kindle books, and placed them for sale onAmazon.com showing me as the author. I neither receive compensation for those sales nor do I know who does receive compensation. If youpurchase such a book, please be aware that it is a copy of a module that is freely available on cnx.org and that it was made andpublished without my prior knowledge.

Affiliation : I am a professor of Computer Information Technology at Austin Community College in Austin, TX.

-end-

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