java.awt.image
Class AreaAveragingScaleFilter
- Cloneable, ImageConsumer
This filter should produce images which do not have image artifacts
like broken lines which were originally unbroken. The cost is of
course speed. Using bi-linear interpolation here against 4 pixel
points should give the desired results although Sun does not
specify what the exact algorithm should be.
AreaAveragingScaleFilter(int width, int height) - Construct an instance of
AreaAveragingScaleFilter which
should be used in conjunction with a FilteredImageSource
object.
|
void | setHints(int flags) - The
ImageProducer should call this method with a
bit mask of hints from any of RANDOMPIXELORDER ,
TOPDOWNLEFTRIGHT , COMPLETESCANLINES ,
SINGLEPASS , SINGLEFRAME from the
ImageConsumer interface.
|
void | setPixels(int x, int y, int w, int h, ColorModel model, byte[] pixels, int offset, int scansize) - This function delivers a rectangle of pixels where any
pixel(m,n) is stored in the array as a
byte at
index (n * scansize + m + offset).
|
void | setPixels(int x, int y, int w, int h, ColorModel model, int[] pixels, int offset, int scansize) - This function delivers a rectangle of pixels where any
pixel(m,n) is stored in the array as an
int at
index (n * scansize + m + offset).
|
clone , equals , extends Object> getClass , finalize , hashCode , notify , notifyAll , toString , wait , wait , wait |
AreaAveragingScaleFilter
public AreaAveragingScaleFilter(int width,
int height)
Construct an instance of AreaAveragingScaleFilter
which
should be used in conjunction with a FilteredImageSource
object.
width
- the width of the destination imageheight
- the height of the destination image
setHints
public void setHints(int flags)
The ImageProducer
should call this method with a
bit mask of hints from any of RANDOMPIXELORDER
,
TOPDOWNLEFTRIGHT
, COMPLETESCANLINES
,
SINGLEPASS
, SINGLEFRAME
from the
ImageConsumer
interface.
FIXME - more than likely Sun's implementation desires
TOPDOWNLEFTRIGHT
order and this method is overloaded here
in order to assure that mask is part of the hints added to
the consumer.
- setHints in interface ImageConsumer
- setHints in interface ImageFilter
flags
- a bit mask of hints
setPixels
public void setPixels(int x,
int y,
int w,
int h,
ColorModel model,
byte[] pixels,
int offset,
int scansize)
This function delivers a rectangle of pixels where any
pixel(m,n) is stored in the array as a byte
at
index (n * scansize + m + offset).
- setPixels in interface ImageConsumer
- setPixels in interface ReplicateScaleFilter
x
- the x coordinate of the rectangley
- the y coordinate of the rectanglew
- the width of the rectangleh
- the height of the rectanglemodel
- the ColorModel
used to translate the pixelspixels
- the array of pixel valuesoffset
- the index of the first pixels in the pixels
arrayscansize
- the width to use in extracting pixels from the pixels
array
setPixels
public void setPixels(int x,
int y,
int w,
int h,
ColorModel model,
int[] pixels,
int offset,
int scansize)
This function delivers a rectangle of pixels where any
pixel(m,n) is stored in the array as an int
at
index (n * scansize + m + offset).
- setPixels in interface ImageConsumer
- setPixels in interface ReplicateScaleFilter
x
- the x coordinate of the rectangley
- the y coordinate of the rectanglew
- the width of the rectangleh
- the height of the rectanglemodel
- the ColorModel
used to translate the pixelspixels
- the array of pixel valuesoffset
- the index of the first pixels in the pixels
arrayscansize
- the width to use in extracting pixels from the pixels
array
AreaAveragingScaleFilter.java -- Java class for filtering images
Copyright (C) 1999,2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Classpath is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 USA.
Linking this library statically or dynamically with other modules is
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module. An independent module is a module which is not derived from
or based on this library. If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so. If you do not wish to do so, delete this
exception statement from your version.