Класс WritableRaster
public class WritableRaster extends Raster
Конструкторы этого класса защищены. Для создания WritableRaster используйте один из методов-фабрик createWritableRaster в классе Raster.
Краткое описание полей
Поля, объявленные в классе java.awt.image.Raster
dataBuffer, height, minX, minY, numBands, numDataElements, parent, sampleModel, sampleModelTranslateX, sampleModelTranslateY, width
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Создаёт WritableRaster с заданным SampleModel и DataBuffer. |
|
protected |
Создаёт WritableRaster с заданным SampleModel, DataBuffer и родительским элементом. |
|
protected |
Создаёт WritableRaster с заданным SampleModel. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
WritableRaster |
createWritableChild |
Возвращает новый WritableRaster, который разделяет весь или часть DataBuffer этого WritableRaster. |
WritableRaster |
createWritableTranslatedChild |
Создаёт WritableRaster с такими же размерами, SampleModel и DataBuffer, как и этот, но с другим расположением. |
WritableRaster |
getWritableParent() |
Возвращает родительский WritableRaster (если есть) этого WritableRaster, в противном случае null. |
void |
setDataElements |
Устанавливает данные для прямоугольника пикселей из примитивного массива типа TransferType. |
void |
setDataElements |
Устанавливает данные для прямоугольника пикселей из входного Raster. |
void |
setDataElements |
Устанавливает данные для одного пикселя из примитивного массива типа TransferType. |
void |
setPixel |
Устанавливает пиксель в DataBuffer, используя массив с плавающей запятой double для входных данных. |
void |
setPixel |
Устанавливает пиксель в DataBuffer, используя массив с плавающей запятой float для входных данных. |
void |
setPixel |
Устанавливает пиксель в DataBuffer, используя массив int для входных данных. |
void |
setPixels |
Устанавливает все образцы для прямоугольника пикселей из массива double, содержащего по одному образцу на элемент массива. |
void |
setPixels |
Устанавливает все образцы для прямоугольника пикселей из массива float, содержащего по одному образцу на элемент массива. |
void |
setPixels |
Устанавливает все образцы для прямоугольника пикселей из массива int, содержащего по одному образцу на элемент массива. |
void |
setRect |
Копирует пиксели из Raster srcRaster в этот WritableRaster. |
void |
setRect |
Копирует пиксели из Raster srcRaster в этот WritableRaster. |
void |
setSample |
Устанавливает образец в указанном канале для пикселя, расположенного в (x,y) в DataBuffer, используя double для входных данных. |
void |
setSample |
Устанавливает образец в указанном канале для пикселя, расположенного в (x,y) в DataBuffer, используя float для входных данных. |
void |
setSample |
Устанавливает образец в указанном канале для пикселя, расположенного в (x,y) в DataBuffer, используя int для входных данных. |
void |
setSamples |
Устанавливает образцы в указанном канале для указанного прямоугольника пикселей из массива double, содержащего по одному образцу на элемент массива. |
void |
setSamples |
Устанавливает образцы в указанном канале для указанного прямоугольника пикселей из массива float, содержащего по одному образцу на элемент массива. |
void |
setSamples |
Устанавливает образцы в указанном канале для указанного прямоугольника пикселей из массива int, содержащего по одному образцу на элемент массива. |
Методы, объявленные в классе java.awt.image.Raster
createBandedRaster, createBandedRaster, createBandedRaster, createChild, createCompatibleWritableRaster, createCompatibleWritableRaster, createCompatibleWritableRaster, createCompatibleWritableRaster, createInterleavedRaster, createInterleavedRaster, createInterleavedRaster, createPackedRaster, createPackedRaster, createPackedRaster, createPackedRaster, createRaster, createTranslatedChild, createWritableRaster, createWritableRaster, getBounds, getDataBuffer, getDataElements, getDataElements, getHeight, getMinX, getMinY, getNumBands, getNumDataElements, getParent, getPixel, getPixel, getPixel, getPixels, getPixels, getPixels, getSample, getSampleDouble, getSampleFloat, getSampleModel, getSampleModelTranslateX, getSampleModelTranslateY, getSamples, getSamples, getSamples, getTransferType, getWidth
Подробное описание конструкторов
WritableRaster
protected WritableRaster(SampleModel sampleModel, Point origin)
- Параметры:
-
sampleModel- SampleModel, определяющий структуру. -
origin- Point, определяющий начало координат. - Исключения:
-
RasterFormatException- если вычислениеorigin.x + sampleModel.getWidth()илиorigin.y + sampleModel.getHeight()приводит к переполнению целого типа
WritableRaster
protected WritableRaster(SampleModel sampleModel, DataBuffer dataBuffer, Point origin)
- Параметры:
-
sampleModel- SampleModel, определяющий структуру. -
dataBuffer- DataBuffer, содержащий данные изображения. -
origin- Point, определяющий начало координат. - Исключения:
-
RasterFormatException- если вычислениеorigin.x + sampleModel.getWidth()илиorigin.y + sampleModel.getHeight()приводит к переполнению целого типа
WritableRaster
protected WritableRaster(SampleModel sampleModel, DataBuffer dataBuffer, Rectangle aRegion, Point sampleModelTranslate, WritableRaster parent)
- Параметры:
-
sampleModel- SampleModel, определяющий структуру. -
dataBuffer- DataBuffer, содержащий данные изображения. -
aRegion- Rectangle, определяющий область изображения. -
sampleModelTranslate- Point, определяющий перевод из координат SampleModel в координаты Raster. -
parent- Родительский элемент (если есть) этого raster. - Исключения:
-
RasterFormatException- если уaRegionширина или высота меньше или равны нулю, или вычислениеaRegion.x + aRegion.widthилиaRegion.y + aRegion.heightприводит к переполнению целого типа
Подробное описание методов
getWritableParent
public WritableRaster getWritableParent()
- Возвращает:
- родителя этого
WritableRaster, илиnull.
createWritableTranslatedChild
public WritableRaster createWritableTranslatedChild(int childMinX, int childMinY)
- Параметры:
-
childMinX- Координата x верхнего левого угла нового Raster. -
childMinY- Координата y верхнего левого угла нового Raster. - Возвращает:
- a
WritableRasterтакой же, как и этот, за исключением указанного расположения. - Исключения:
-
RasterFormatException- если вычислениеchildMinX + this.getWidth()илиchildMinY + this.getHeight()приводит к переполнению целого типа
createWritableChild
public WritableRaster createWritableChild(int parentX, int parentY, int w, int h, int childMinX, int childMinY, int[] bandList)
Параметры parentX, parentY, width и height образуют прямоугольник в пространстве координат этого WritableRaster, указывающий область пикселей для совместного использования. Ошибка будет выброшена, если этот прямоугольник не содержится в пределах границ текущего WritableRaster.
Новый WritableRaster может быть дополнительно переведён в другую систему координат для плоскости, отличную от используемой текущим WritableRaster. Параметры childMinX и childMinY задают новые (x, y) координаты верхнего левого пикселя возвращаемого WritableRaster; координата (childMinX, childMinY) в новом WritableRaster будет соответствовать координате (parentX, parentY) в текущем WritableRaster.
Новый WritableRaster может быть определён так, чтобы содержать только подмножество каналов текущего WritableRaster, возможно, в переупорядоченном порядке, с помощью параметра bandList. Если bandList равен null, предполагается, что он включает все каналы текущего WritableRaster в их текущем порядке.
Для создания нового WritableRaster, который содержит подобласть текущего WritableRaster, но использует его систему координат и каналы, этот метод должен вызываться с childMinX равным parentX, childMinY равным parentY и bandList равным null.
- Параметры:
-
parentX- Координата x верхнего левого угла в координатах этого WritableRaster. -
parentY- Координата y верхнего левого угла в координатах этого WritableRaster. -
w- Ширина области, начинающейся в (parentX, parentY). -
h- Высота области, начинающейся в (parentX, parentY). -
childMinX- Координата x верхнего левого угла возвращаемого WritableRaster. -
childMinY- Координата y верхнего левого угла возвращаемого WritableRaster. -
bandList- Массив индексов каналов или null для использования всех каналов. - Возвращает:
- a
WritableRaster, разделяющий все или частьDataBufferэтогоWritableRaster. - Исключения:
-
RasterFormatException- если подобласть находится за пределами границ raster. -
RasterFormatException- еслиwилиhменьше или равны нулю, или вычислениеparentX + w,parentY + h,childMinX + w, илиchildMinY + hприводит к переполнению целого типа
setDataElements
public void setDataElements(int x, int y, Object inData)
- Параметры:
-
x- Координата x расположения пикселя. -
y- Координата y расположения пикселя. -
inData- Ссылка на объект на массив типа, определённого getTransferType() и длины getNumDataElements(), содержащий данные пикселя, которые необходимо поместить в x,y. - Исключения:
-
ArrayIndexOutOfBoundsException- если координаты не в пределах границ или inData слишком мал для хранения входных данных. - См. также:
setDataElements
public void setDataElements(int x, int y, Raster inRaster)
- Параметры:
-
x- Координата x расположения пикселя. -
y- Координата y расположения пикселя. -
inRaster- Raster, содержащий данные для размещения в x,y. - Исключения:
-
NullPointerException- если inRaster равен null. -
ArrayIndexOutOfBoundsException- если координаты не в пределах границ.
setDataElements
public void setDataElements(int x, int y, int w, int h, Object inData)
- Parameters:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
inData- Ссылка на объект, массив типа, определенного getTransferType(), и длиной w*h*getNumDataElements(), содержащий данные пикселей, которые нужно разместить между x,y и x+w-1, y+h-1. - Throws:
-
NullPointerException- если inData равно null. -
ArrayIndexOutOfBoundsException- если координаты не находятся в пределах, или если inData слишком мал для хранения ввода. - See Also:
setRect
public void setRect(Raster srcRaster)
Если все образцы обоих исходных и целевых растров являются целочисленного типа и не превышают 32 бит в размере, то вызов этого метода эквивалентен выполнению следующего кода для всех x,y адресов, действительных в обоих растрах.
Raster srcRaster;
WritableRaster dstRaster;
for (int b = 0; b < srcRaster.getNumBands(); b++) {
dstRaster.setSample(x, y, b, srcRaster.getSample(x, y, b));
}
Таким образом, при копировании целочисленного типа источника в целочисленный тип назначения, если размер образца источника больше размера образца назначения для определенной полосы, старшие биты образца источника усекаются. Если размер образца источника меньше размера назначения для определенной полосы, старшие биты назначения заполняются нулями или расширяются со знаком, в зависимости от того, рассматривает ли SampleModel srcRaster образец как знаковое или беззнаковое значение. При копировании плавающей или двойной точности источника в целочисленный тип назначения каждый образец источника преобразуется в тип назначения. При копировании целочисленного типа источника в плавающую или двойную точность назначения исходный тип сначала преобразуется в 32-битное целое число (при необходимости), используя вышеуказанные правила для целочисленных типов, а затем целое число преобразуется в число с плавающей или двойной точностью.
- Parameters:
-
srcRaster- Raster, из которого копируются пиксели. - Throws:
-
NullPointerException- если srcRaster равен null.
setRect
public void setRect(int dx, int dy, Raster srcRaster)
setRect(Raster).- Parameters:
-
dx- Коэффициент смещения X от пространства src к пространству dst при копировании. -
dy- Коэффициент смещения Y от пространства src к пространству dst при копировании. -
srcRaster- Raster, из которого копируются пиксели. - Throws:
-
NullPointerException- если srcRaster равен null.
setPixel
public void setPixel(int x, int y, int[] iArray)
- Parameters:
-
x- Координата X положения пикселя. -
y- Координата Y положения пикселя. -
iArray- Входные образцы в массиве целых чисел. - Throws:
-
NullPointerException- если iArray равен null. -
ArrayIndexOutOfBoundsException- если координаты не находятся в пределах, или если iArray слишком мал для хранения ввода.
setPixel
public void setPixel(int x, int y, float[] fArray)
- Parameters:
-
x- Координата X положения пикселя. -
y- Координата Y положения пикселя. -
fArray- Входные образцы в массиве чисел с плавающей запятой. - Throws:
-
NullPointerException- если fArray равен null. -
ArrayIndexOutOfBoundsException- если координаты не находятся в пределах, или если fArray слишком мал для хранения ввода.
setPixel
public void setPixel(int x, int y, double[] dArray)
- Parameters:
-
x- Координата X положения пикселя. -
y- Координата Y положения пикселя. -
dArray- Входные образцы в массиве чисел с двойной точностью. - Throws:
-
NullPointerException- если dArray равен null. -
ArrayIndexOutOfBoundsException- если координаты не находятся в пределах, или если dArray слишком мал для хранения ввода.
setPixels
public void setPixels(int x, int y, int w, int h, int[] iArray)
- Parameters:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
iArray- Входной массив пикселей целых чисел. - Throws:
-
NullPointerException- если iArray равен null. -
ArrayIndexOutOfBoundsException- если координаты не находятся в пределах, или если iArray слишком мал для хранения ввода.
setPixels
public void setPixels(int x, int y, int w, int h, float[] fArray)
- Parameters:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
fArray- Входной массив пикселей чисел с плавающей запятой. - Throws:
-
NullPointerException- если fArray равен null. -
ArrayIndexOutOfBoundsException- если координаты не находятся в пределах, или если fArray слишком мал для хранения ввода.
setPixels
public void setPixels(int x, int y, int w, int h, double[] dArray)
- Parameters:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
dArray- Входной массив пикселей чисел с двойной точностью. - Throws:
-
NullPointerException- если dArray равен null. -
ArrayIndexOutOfBoundsException- если координаты не находятся в пределах, или если dArray слишком мал для хранения ввода.
setSample
public void setSample(int x, int y, int b, int s)
- Parameters:
-
x- Координата X положения пикселя. -
y- Координата Y положения пикселя. -
b- Полоса для установки. -
s- Входной образец. - Throws:
-
ArrayIndexOutOfBoundsException- если координаты или индекс полосы не находятся в пределах.
setSample
public void setSample(int x, int y, int b, float s)
- Parameters:
-
x- Координата X положения пикселя. -
y- Координата Y положения пикселя. -
b- Полоса для установки. -
s- Входной образец как число с плавающей запятой. - Throws:
-
ArrayIndexOutOfBoundsException- если координаты или индекс полосы не находятся в пределах.
УстановитьОбразец
public void setSample(int x, int y, int b, double s)
- Параметры:
-
x- Координата X расположения пикселя. -
y- Координата Y расположения пикселя. -
b- Полоса для установки. -
s- Входной образец в виде double. - Исключения:
-
ArrayIndexOutOfBoundsException- если координаты или индекс полосы выходят за пределы границ.
УстановитьОбразцы
public void setSamples(int x, int y, int w, int h, int b, int[] iArray)
- Параметры:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
b- Полоса для установки. -
iArray- Входной массив образцов int. - Исключения:
-
NullPointerException- если iArray равен null. -
ArrayIndexOutOfBoundsException- если координаты или индекс полосы выходят за пределы границ, или если iArray слишком мал для хранения ввода.
УстановитьОбразцы
public void setSamples(int x, int y, int w, int h, int b, float[] fArray)
- Параметры:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
b- Полоса для установки. -
fArray- Входной массив образцов float. - Исключения:
-
NullPointerException- если fArray равен null. -
ArrayIndexOutOfBoundsException- если координаты или индекс полосы выходят за пределы границ, или если fArray слишком мал для хранения ввода.
УстановитьОбразцы
public void setSamples(int x, int y, int w, int h, int b, double[] dArray)
- Параметры:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
b- Полоса для установки. -
dArray- Входной массив образцов double. - Исключения:
-
NullPointerException- если dArray равен null. -
ArrayIndexOutOfBoundsException- если координаты или индекс полосы выходят за пределы границ, или если dArray слишком мал для хранения ввода.
© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/java.desktop/java/awt/image/WritableRaster.html