ui/src/main/java/ucar/nc2/ui/image/PicturePane.java
public void zoomIn() {
		double OldScaleFactor = sclPic.getScaleFactor();
		double NewScaleFactor = OldScaleFactor * 1.5;

		// If scaling goes from scale down to scale up, set ScaleFactor to exactly 1
		if ((OldScaleFactor < 1) && (NewScaleFactor > 1))
			NewScaleFactor = 1;


		// Check if the picture would get to large and cause the system to "hang"		
		if ((sclPic.getOriginalWidth() * sclPic.getScaleFactor() < maximumPictureSize)
		&&  (sclPic.getOriginalHeight() * sclPic.getScaleFactor() < maximumPictureSize) ) {
			sclPic.setScaleFactor(NewScaleFactor);
			sclPic.createScaledPictureInThread( Thread.MAX_PRIORITY );
		}
	}
public void zoomIn() {
		double OldScaleFactor = sclPic.getScaleFactor();
		double NewScaleFactor = OldScaleFactor * 1.5;

		// If scaling goes from scale down to scale up, set ScaleFactor to exactly 1
		if ((OldScaleFactor < 1) && (NewScaleFactor > 1))
			NewScaleFactor = 1;


		// Check if the picture would get to large and cause the system to "hang"		
		if ((sclPic.getOriginalWidth() * sclPic.getScaleFactor() < maximumPictureSize)
		&&  (sclPic.getOriginalHeight() * sclPic.getScaleFactor() < maximumPictureSize) ) {
			sclPic.setScaleFactor(NewScaleFactor);
			sclPic.createScaledPictureInThread( Thread.MAX_PRIORITY );
		}
	}
Multifilies the scale factor so that paint() method scales the
image larger. This method calls
{@link ScalablePicture#createScaledPictureInThread(int)} which in
turn will tell this oject by means of the status update that
the image is ready and should be repainted.