JavaTM 2 Platform Standard Ed. 5.0 |
java.awt.image
Class SampleModel
java.lang.Object java.awt.image.SampleModel
-
Direct Known Subclasses:
- ComponentSampleModel, MultiPixelPackedSampleModel, SinglePixelPackedSampleModel
public abstract class SampleModel extends Object
这个抽象类为提取图像中像素的采样定义了一个接口。所有图像数据可以表示为一个像素的集合。每个像素由许多采样组成。对于图像里的波段,一个采样是其中的一个基本值,并且波段由图像中所有特定类型的采样组成。例如,一个像素可能3个采样来表现它的红、绿、蓝成分,那么图像里就会用3个波段来容纳这个像素。第一个波段由图像所有像素中的所有红色采样组成;第二个波段由所有绿色采样组成;最后一个波段由所有蓝色采样组成。像素可以使用多种格式储存。例如,特定波段的所有采样可以连续的存储或者单个像素的所有采样可以连续地存储。
SampleModel的子类指定了它们可以描述的取样类型(例如,无符号8-bit字节, 有符号16-bit短整等等),并且也可以说明采样在内存中的是怎么组织的。在Java 2D(tm) API里,内置的图像处理操作类不可能对所有可能出现的采样类型进行操作,但是一般情况下,需要处理的采样是16位或者更少的无符号整型。有一些操作支持更广泛的多种多样的采样类型。
像素的集合被描述为Raster,由一个DataBuffer和一个SampleModel组成。SampleModel允许存取DataBuffer中的采样并能提供底层信息,开发人员可以用这些信息直接操作DataBuffer的采样和像素。
一般说来,这个类是一种落后的处理图像的方法。更有效率的代码会铸造SampleModel到合适的子类,提取所需的信息直接操作DataBuffer中的像素。
-
参见:
-
DataBuffer
,Raster
,ComponentSampleModel
,PixelInterleavedSampleModel
,BandedSampleModel
,MultiPixelPackedSampleModel
,SinglePixelPackedSampleModel