<< Chapter < Page
  Digital signal processing - dsp     Page 14 / 24
Chapter >> Page >

New to j2se 5.0

According to Oracle's documentation, the log10 method became part of Java with the release of J2SE 5.0. Therefore, this code is notcompatible with earlier versions of Java.

Here are a couple of restrictions taken from Oracle's documentation that apply to the use of the method named log10 :

  • If the argument is NaN or less than zero, then the result is NaN.
  • If the argument is positive zero or negative zero, then the result is negative infinity.

Because of the first restriction, the code in Listing 7 converts all negative values into positive values before performing the conversion. Because of thesecond restriction, no attempt is made to compute the log of elevation values of zero.

Otherwise, the code in Listing 7 is straightforward and should not require further explanation.

Normalize the surface elevation data

After converting the elevation data to log form, (or not converting as the case may be) , the code in Listing 8 calls the method named scaleTheSurfaceData to normalize the elevation data by squeezing it into the integer range between 0and 255 inclusive. When this method returns, the lowest elevation has a value of 0 and the highest elevation has a value of 255.

Listing 8. Normalize the surface elevation data.
scaleTheSurfaceData();

The elevation data is normalized to this range to make it easier later to form relationships between the elevation values and allowable color values.

(Recall that allowable color values range from 0 to 255.)

The method named scaleTheSurfaceData

At this point, we will take a side trip and examine the method named scaleTheSurfaceData , which is shown in its entirety in Listing 9 .

Listing 9. The method named scaleTheSurfaceData.
double min; double max;//This method is used to scale the surface data // to force it to fit in the range from 0 to// 255. void scaleTheSurfaceData(){//Find the minimum surface value. min = Double.MAX_VALUE;for(int row = 0;row<dataHeight;row++){ for(int col = 0;col<dataWidth;col++){ if(data[row][col]<min) min = data[row][col];}//end col loop }//end row loop//Shift all values up or down to force new // minimum value to be 0.for(int row = 0;row<dataHeight;row++){ for(int col = 0;col<dataWidth;col++){ data[row][col] = data[row][col] - min;}//end col loop }//end row loop//Now get the maximum value of the shifted// surface values max = -Double.MAX_VALUE;for(int row = 0;row<dataHeight;row++){ for(int col = 0;col<dataWidth;col++){ if(data[row][col]>max) max = data[row][col];}//end col loop }//end row loop//Now scale all values to cause the new // maximum value to be 255.for(int row = 0;row<dataHeight;row++){ for(int col = 0;col<dataWidth;col++){ data[row][col] =data[row][col]* 255/max; }//end col loop}//end row loop }//end scaleTheSurfaceData

While this method is rather long, it is completely straightforward and shouldn't require further explanation.

Create an appropriate pair of Canvas objects

Return now to the discussion of the constructor for the ImgMod29 class.

Questions & Answers

what are components of cells
ofosola Reply
twugzfisfjxxkvdsifgfuy7 it
Sami
58214993
Sami
what is a salt
John
the difference between male and female reproduction
John
what is computed
IBRAHIM Reply
what is biology
IBRAHIM
what is the full meaning of biology
IBRAHIM
what is biology
Jeneba
what is cell
Kuot
425844168
Sami
what is cytoplasm
Emmanuel Reply
structure of an animal cell
Arrey Reply
what happens when the eustachian tube is blocked
Puseletso Reply
what's atoms
Achol Reply
discuss how the following factors such as predation risk, competition and habitat structure influence animal's foraging behavior in essay form
Burnet Reply
cell?
Kuot
location of cervical vertebra
KENNEDY Reply
What are acid
Sheriff Reply
define biology infour way
Happiness Reply
What are types of cell
Nansoh Reply
how can I get this book
Gatyin Reply
what is lump
Chineye Reply
what is cell
Maluak Reply
what is biology
Maluak
what is vertibrate
Jeneba
what's cornea?
Majak Reply
what are cell
Achol
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Digital signal processing - dsp. OpenStax CNX. Jan 06, 2016 Download for free at https://legacy.cnx.org/content/col11642/1.38
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Digital signal processing - dsp' conversation and receive update notifications?

Ask