Class ReplicateScaleFilter
- All Implemented Interfaces:
ImageConsumer, Cloneable
- Direct Known Subclasses:
AreaAveragingScaleFilter
It is meant to be used in conjunction with a FilteredImageSource object to produce scaled versions of existing images. Due to implementation dependencies, there may be differences in pixel values of an image filtered on different platforms.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected intThe target height to scale the image.protected intThe target width to scale the image.protected ObjectAbytearray initialized with a size ofdestWidthand used to deliver a row of pixel data to theImageConsumer.protected int[]Anintarray containing information about a column of pixels.protected intThe height of the source image.protected int[]Anintarray containing information about a row of pixels.protected intThe width of the source image.Fields declared in class ImageFilter
consumerModifier and TypeFieldDescriptionprotected ImageConsumerThe consumer of the particular image data stream for which this instance of the ImageFilter is filtering data.Fields declared in interface ImageConsumer
COMPLETESCANLINES, IMAGEABORTED, IMAGEERROR, RANDOMPIXELORDER, SINGLEFRAME, SINGLEFRAMEDONE, SINGLEPASS, STATICIMAGEDONE, TOPDOWNLEFTRIGHTModifier and TypeFieldDescriptionstatic final intThe pixels will be delivered in (multiples of) complete scanlines at a time.static final intThe image creation process was deliberately aborted.static final intAn error was encountered while producing the image.static final intThe pixels will be delivered in a random order.static final intThe image contain a single static image.static final intOne frame of the image is complete but there are more frames to be delivered.static final intThe pixels will be delivered in a single pass.static final intThe image is complete and there are no more pixels or frames to be delivered.static final intThe pixels will be delivered in top-down, left-to-right order. -
Constructor Summary
ConstructorsConstructorDescriptionReplicateScaleFilter(int width, int height) Constructs a ReplicateScaleFilter that scales the pixels from its source Image as specified by the width and height parameters. -
Method Summary
Modifier and TypeMethodDescriptionvoidsetDimensions(int w, int h) Override the dimensions of the source image and pass the dimensions of the new scaled size to the ImageConsumer.voidsetPixels(int x, int y, int w, int h, ColorModel model, byte[] pixels, int off, int scansize) Choose which rows and columns of the delivered byte pixels are needed for the destination scaled image and pass through just those rows and columns that are needed, replicated as necessary.voidsetPixels(int x, int y, int w, int h, ColorModel model, int[] pixels, int off, int scansize) Choose which rows and columns of the delivered int pixels are needed for the destination scaled image and pass through just those rows and columns that are needed, replicated as necessary.voidsetProperties(Hashtable<?, ?> props) Passes along the properties from the source object after adding a property indicating the scale applied.Methods declared in class ImageFilter
clone, getFilterInstance, imageComplete, resendTopDownLeftRight, setColorModel, setHintsModifier and TypeMethodDescriptionclone()Clones this object.Returns a unique instance of an ImageFilter object which will actually perform the filtering for the specified ImageConsumer.voidimageComplete(int status) Filters the information provided in the imageComplete method of the ImageConsumer interface.voidResponds to a request for a TopDownLeftRight (TDLR) ordered resend of the pixel data from anImageConsumer.voidsetColorModel(ColorModel model) Filter the information provided in the setColorModel method of the ImageConsumer interface.voidsetHints(int hints) Filters the information provided in the setHints method of the ImageConsumer interface.Methods declared in class Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitModifier and TypeMethodDescriptionbooleanCompares the argument to the receiver, and answers true if they represent the same object using a class specific comparison.protected voidfinalize()Deprecated, for removal: This API element is subject to removal in a future version.May cause performance issues, deadlocks and hangs.getClass()Answers the unique instance of java.lang.Class which represents the class of the receiver.inthashCode()Answers an integer hash code for the receiver.final voidnotify()Causes one thread which iswaiting on the receiver to be made ready to run.final voidCauses all threads which arewaiting on the receiver to be made ready to run.toString()Answers a string containing a concise, human-readable description of the receiver.final voidwait()Causes the thread which sent this message to be made not ready to run pending some change in the receiver (as indicated bynotifyornotifyAll).final voidwait(long time) Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated bynotifyornotifyAll) or the expiration of the timeout.final voidwait(long time, int frac) Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated bynotifyornotifyAll) or the expiration of the timeout.
-
Field Details
-
srcWidth
protected int srcWidthThe width of the source image. -
srcHeight
protected int srcHeightThe height of the source image. -
destWidth
protected int destWidthThe target width to scale the image. -
destHeight
protected int destHeightThe target height to scale the image. -
srcrows
protected int[] srcrowsAnintarray containing information about a row of pixels. -
srccols
protected int[] srccolsAnintarray containing information about a column of pixels. -
outpixbuf
Abytearray initialized with a size ofdestWidthand used to deliver a row of pixel data to theImageConsumer.
-
-
Constructor Details
-
ReplicateScaleFilter
public ReplicateScaleFilter(int width, int height) Constructs a ReplicateScaleFilter that scales the pixels from its source Image as specified by the width and height parameters.- Parameters:
width- the target width to scale the imageheight- the target height to scale the image- Throws:
IllegalArgumentException- ifwidthequals zero orheightequals zero
-
-
Method Details
-
setProperties
Passes along the properties from the source object after adding a property indicating the scale applied. This method invokessuper.setProperties, which might result in additional properties being added.Note: This method is intended to be called by the
ImageProducerof theImagewhose pixels are being filtered. Developers using this class to filter pixels from an image should avoid calling this method directly since that operation could interfere with the filtering operation.- Specified by:
setPropertiesin interfaceImageConsumer- Overrides:
setPropertiesin classImageFilter- Parameters:
props- the properties from the source object
-
setDimensions
public void setDimensions(int w, int h) Override the dimensions of the source image and pass the dimensions of the new scaled size to the ImageConsumer.Note: This method is intended to be called by the
ImageProducerof theImagewhose pixels are being filtered. Developers using this class to filter pixels from an image should avoid calling this method directly since that operation could interfere with the filtering operation.- Specified by:
setDimensionsin interfaceImageConsumer- Overrides:
setDimensionsin classImageFilter- Parameters:
w- the width of the source imageh- the height of the source image- See Also:
-
setPixels
public void setPixels(int x, int y, int w, int h, ColorModel model, byte[] pixels, int off, int scansize) Choose which rows and columns of the delivered byte pixels are needed for the destination scaled image and pass through just those rows and columns that are needed, replicated as necessary.Note: This method is intended to be called by the
ImageProducerof theImagewhose pixels are being filtered. Developers using this class to filter pixels from an image should avoid calling this method directly since that operation could interfere with the filtering operation.- Specified by:
setPixelsin interfaceImageConsumer- Overrides:
setPixelsin classImageFilter- Parameters:
x- the X coordinate of the upper-left corner of the area of pixels to be sety- the Y coordinate of the upper-left corner of the area of pixels to be setw- the width of the area of pixelsh- the height of the area of pixelsmodel- the specifiedColorModelpixels- the array of pixelsoff- the offset into thepixelsarrayscansize- the distance from one row of pixels to the next in thepixelsarray- See Also:
-
setPixels
public void setPixels(int x, int y, int w, int h, ColorModel model, int[] pixels, int off, int scansize) Choose which rows and columns of the delivered int pixels are needed for the destination scaled image and pass through just those rows and columns that are needed, replicated as necessary.Note: This method is intended to be called by the
ImageProducerof theImagewhose pixels are being filtered. Developers using this class to filter pixels from an image should avoid calling this method directly since that operation could interfere with the filtering operation.- Specified by:
setPixelsin interfaceImageConsumer- Overrides:
setPixelsin classImageFilter- Parameters:
x- the X coordinate of the upper-left corner of the area of pixels to be sety- the Y coordinate of the upper-left corner of the area of pixels to be setw- the width of the area of pixelsh- the height of the area of pixelsmodel- the specifiedColorModelpixels- the array of pixelsoff- the offset into thepixelsarrayscansize- the distance from one row of pixels to the next in thepixelsarray- See Also:
-