Class java.awt.swing.SyntheticImage
java.lang.Object
|
+----java.awt.swing.SyntheticImage
- public abstract class SyntheticImage
- extends Object
- implements ImageProducer
A helper class to make computing synthetic images a little easier.
All you need to do is define a subclass that overrides computeRow
to compute a row of the image. It is passed the y coordinate of the
row and an array into which to put the pixels in
standard ARGB format.
Normal usage looks something like this:
Image i = new Image(new SyntheticImage(200, 100) {
protected void computeRow(int y, int[] row) {
for(int i = width; --i>=0; ) {
int grey = i*255/(width-1);
row[i] = (255<<24)|(grey<<16)|(grey<<8)|grey;
}
}
}
This creates a image 200 pixels wide and 100 pixels high
that is a horizontal grey ramp, going from black on the left to
white on the right.
If the image is to be a movie, override isStatic to return false,
y cycling back to 0 is computeRow's signal that the next
frame has started. It is acceptable (expected?) for computeRow(0,r)
to pause until the appropriate time to start the next frame.
Methods inherited from class java.lang.Object
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
width
protected int width
height
protected int height
pixMask
public static final int pixMask
SyntheticImage
protected SyntheticImage()
SyntheticImage
protected SyntheticImage(int w,
int h)
computeRow
protected void computeRow(int y,
int[] row)
addConsumer
public void addConsumer(ImageConsumer ic)
- Implements:
- addConsumer in interface ImageProducer
isConsumer
public boolean isConsumer(ImageConsumer ic)
- Implements:
- isConsumer in interface ImageProducer
removeConsumer
public void removeConsumer(ImageConsumer ic)
- Implements:
- removeConsumer in interface ImageProducer
startProduction
public void startProduction(ImageConsumer ic)
- Implements:
- startProduction in interface ImageProducer
isStatic
protected boolean isStatic()
nextFrame
public void nextFrame(int param)
requestTopDownLeftRightResend
public void requestTopDownLeftRightResend(ImageConsumer ic)
- Implements:
- requestTopDownLeftRightResend in interface ImageProducer
Submit a bug or feature
Submit comments/suggestions about new javadoc look.
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A. All Rights Reserved.