Класс WritableRaster

public class WritableRaster
extends Raster

Этот класс расширяет Raster, предоставляя возможности записи пикселей. Обратитесь к комментариям к классу Raster для описания того, как Raster хранит пиксели.

Конструкторы этого класса защищены. Для создания экземпляра WritableRaster используйте один из фабричных методов createWritableRaster в классе Raster.

Поля

Поля, объявленные в классе java.awt.image.Raster

dataBuffer, height, minX, minY, numBands, numDataElements, parent, sampleModel, sampleModelTranslateX, sampleModelTranslateY, width

Конструкторы

Модификатор Конструктор Описание
protected WritableRaster​(SampleModel sampleModel, DataBuffer dataBuffer, Point origin)

Создаёт WritableRaster с заданным SampleModel и DataBuffer.

protected WritableRaster​(SampleModel sampleModel, DataBuffer dataBuffer, Rectangle aRegion, Point sampleModelTranslate, WritableRaster parent)

Создаёт WritableRaster с заданным SampleModel, DataBuffer и родителем.

protected WritableRaster​(SampleModel sampleModel, Point origin)

Создаёт WritableRaster с заданным SampleModel.

Методы

Модификатор и тип Метод Описание
WritableRaster createWritableChild​(int parentX, int parentY, int w, int h, int childMinX, int childMinY, int[] bandList)

Возвращает новый WritableRaster, который использует общий или частичный DataBuffer этого WritableRaster.

WritableRaster createWritableTranslatedChild​(int childMinX, int childMinY)

Создаёт WritableRaster с такими же размерами, SampleModel и DataBuffer, как у текущего, но с другим расположением.

WritableRaster getWritableParent()

Возвращает родительский WritableRaster (если есть) этого WritableRaster, в противном случае null.

void setDataElements​(int x, int y, int w, int h, Object inData)

Устанавливает данные для прямоугольника пикселей из примитивного массива типа TransferType.

void setDataElements​(int x, int y, Raster inRaster)

Устанавливает данные для прямоугольника пикселей из входного Raster.

void setDataElements​(int x, int y, Object inData)

Устанавливает данные для одного пикселя из примитивного массива типа TransferType.

void setPixel​(int x, int y, double[] dArray)

Устанавливает пиксель в DataBuffer, используя массив double для входных образцов.

void setPixel​(int x, int y, float[] fArray)

Устанавливает пиксель в DataBuffer, используя массив float для входных образцов.

void setPixel​(int x, int y, int[] iArray)

Устанавливает пиксель в DataBuffer, используя массив int для входных образцов.

void setPixels​(int x, int y, int w, int h, double[] dArray)

Устанавливает все образцы для прямоугольника пикселей из массива double, содержащего по одному образцу на элемент массива.

void setPixels​(int x, int y, int w, int h, float[] fArray)

Устанавливает все образцы для прямоугольника пикселей из массива float, содержащего по одному образцу на элемент массива.

void setPixels​(int x, int y, int w, int h, int[] iArray)

Устанавливает все образцы для прямоугольника пикселей из массива int, содержащего по одному образцу на элемент массива.

void setRect​(int dx, int dy, Raster srcRaster)

Копирует пиксели из Raster srcRaster в этот WritableRaster.

void setRect​(Raster srcRaster)

Копирует пиксели из Raster srcRaster в этот WritableRaster.

void setSample​(int x, int y, int b, double s)

Устанавливает образец в указанной полосе для пикселя, расположенного в (x,y) в DataBuffer, используя double для ввода.

void setSample​(int x, int y, int b, float s)

Устанавливает образец в указанной полосе для пикселя, расположенного в (x,y) в DataBuffer, используя float для ввода.

void setSample​(int x, int y, int b, int s)

Устанавливает образец в указанной полосе для пикселя, расположенного в (x,y) в DataBuffer, используя int для ввода.

void setSamples​(int x, int y, int w, int h, int b, double[] dArray)

Устанавливает образцы в указанной полосе для указанного прямоугольника пикселей из массива double, содержащего по одному образцу на элемент массива.

void setSamples​(int x, int y, int w, int h, int b, float[] fArray)

Устанавливает образцы в указанной полосе для указанного прямоугольника пикселей из массива float, содержащего по одному образцу на элемент массива.

void setSamples​(int x, int y, int w, int h, int b, int[] iArray)

Устанавливает образцы в указанной полосе для указанного прямоугольника пикселей из массива 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

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Конструкторы

WritableRaster

protected WritableRaster(SampleModel sampleModel,
                         Point origin)

Создаёт WritableRaster с заданным SampleModel. Верхний левый угол WritableRaster совпадает с origin и имеет такие же размеры, как SampleModel. DataBuffer достаточных размеров для описания WritableRaster создаётся автоматически.

Параметры:
sampleModel - SampleModel, определяющий расположение.
origin - Point, определяющий начало координат.
Исключения:
RasterFormatException - если вычисление origin.x + sampleModel.getWidth() или origin.y + sampleModel.getHeight() приводит к переполнению целых чисел

WritableRaster

protected WritableRaster(SampleModel sampleModel,
                         DataBuffer dataBuffer,
                         Point origin)

Создаёт WritableRaster с заданным SampleModel и DataBuffer. Верхний левый угол WritableRaster совпадает с origin и имеет такие же размеры, как SampleModel. DataBuffer не инициализируется и должен быть совместим с SampleModel.

Параметры:
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)

Создаёт WritableRaster с заданным SampleModel, DataBuffer и родителем. aRegion задаёт ограничивающий прямоугольник нового Raster. При переводе в систему координат базового Raster, aRegion должен быть содержимым базового Raster. (Базовый Raster — это предок Raster, у которого нет родителя.) sampleModelTranslate задаёт значения sampleModelTranslateX и sampleModelTranslateY нового Raster. Обратите внимание, что этот конструктор, как правило, вызывается другими конструкторами или методами создания, его не следует использовать напрямую.

Параметры:
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 (если есть) этого WritableRaster, в противном случае null.

Возвращает:
родителя этого WritableRaster, или null.

createWritableTranslatedChild

public WritableRaster createWritableTranslatedChild(int childMinX,
                                                    int childMinY)

Создаёт WritableRaster с теми же размерами, SampleModel и DataBuffer, что и этот, но с другим расположением. Новый WritableRaster будет иметь ссылку на текущий WritableRaster, доступную через методы getParent() и getWritableParent().

Параметры:
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)

Возвращает новый WritableRaster, который совместно использует весь или часть DataBuffer этого WritableRaster. Новый WritableRaster будет иметь ссылку на текущий WritableRaster, доступную через методы getParent() и getWritableParent().

Параметры 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 - если подрегион находится вне границ растра.
RasterFormatException - если w или h меньше или равно нулю, или вычисление любого из parentX + w, parentY + h, childMinX + w, или childMinY + h приводит к переполнению целого числа

setDataElements

public void setDataElements(int x,
                            int y,
                            Object inData)

Устанавливает данные для одного пикселя из примитивного массива типа TransferType. Для данных изображений, поддерживаемых API Java 2D(tm), это будет один из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, DataBuffer.TYPE_INT, DataBuffer.TYPE_SHORT, DataBuffer.TYPE_FLOAT или DataBuffer.TYPE_DOUBLE. Данные в массиве могут быть в упакованном формате, что увеличивает эффективность передачи данных. Может быть выброшено ArrayIndexOutOfBoundsException, если координаты находятся вне границ или inData недостаточно велик для хранения данных пикселя. Однако явная проверка границ не гарантируется. Будет выброшен ClassCastException, если входной объект не null и ссылается на что-либо, кроме массива типа TransferType.

Параметры:
x - Координата X расположения пикселя.
y - Координата Y расположения пикселя.
inData - Ссылка на объект на массив типа, определённого getTransferType(), и длиной getNumDataElements(), содержащий данные пикселя, которые нужно поместить в x,y.
Исключения:
ArrayIndexOutOfBoundsException - если координаты находятся вне границ или inData слишком мал для хранения ввода.
См. также:
SampleModel.setDataElements(int, int, Object, DataBuffer)

setDataElements

public void setDataElements(int x,
                            int y,
                            Raster inRaster)

Устанавливает данные для прямоугольника пикселей из входного Raster. Входной Raster должен быть совместим с этим WritableRaster в том, что у них должно быть одинаковое количество каналов, соответствующие каналы должны иметь одинаковое количество бит на образец, TransferTypes и NumDataElements должны быть одинаковыми, и упаковка, используемая getDataElements/setDataElements, должна быть идентичной. Может быть выброшено ArrayIndexOutOfBoundsException, если координаты находятся вне границ. Однако явная проверка границ не гарантируется.

Параметры:
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)

Устанавливает данные для прямоугольника пикселей из примитивного массива типа TransferType. Для данных изображений, поддерживаемых API Java 2D, это может быть один из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, DataBuffer.TYPE_INT, DataBuffer.TYPE_SHORT, DataBuffer.TYPE_FLOAT или DataBuffer.TYPE_DOUBLE. Данные в массиве могут быть в упакованном формате, что повышает эффективность передачи данных. Может быть выброшено ArrayIndexOutOfBoundsException, если координаты находятся вне границ, или если inData недостаточно велик для хранения данных пикселя. Однако явная проверка границ не гарантируется. Будет выброшен ClassCastException, если входной объект не null и ссылается на что-либо, кроме массива типа TransferType.

Параметры:
x - Координата X верхнего левого пикселя.
y - Координата Y верхнего левого пикселя.
w - Ширина прямоугольника пикселей.
h - Высота прямоугольника пикселей.
inData - Ссылка на объект массива типа, определённого getTransferType(), и длиной w*h*getNumDataElements(), содержащий данные пикселя, которые нужно поместить между x,y и x+w-1, y+h-1.
Исключения:
NullPointerException - если inData равен null.
ArrayIndexOutOfBoundsException - если координаты находятся вне границ или inData слишком мал для хранения входных данных.
См. также:
SampleModel.setDataElements(int, int, int, int, Object, DataBuffer)

setRect

public void setRect(Raster srcRaster)

Копирует пиксели из Raster srcRaster в этот WritableRaster. Каждый пиксель в srcRaster копируется в тот же адрес x,y в этом растре, если адрес не выходит за пределы границ этого растра. srcRaster должен иметь то же количество каналов, что и этот WritableRaster. Копирование — это простое копирование образцов источника в соответствующие образцы назначения.

Если все образцы обоих Raster являются целочисленными типов и не превышают 32 бит в размере, то вызов этого метода эквивалентен выполнению следующего кода для всех x,y адресов, допустимых в обоих Raster.

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-битовое целое число (если необходимо), с использованием вышеизложенных правил для целочисленных типов, а затем это целое число преобразуется в тип с плавающей или двойной точностью.

Параметры:
srcRaster - Raster, из которого копировать пиксели.
Исключения:
NullPointerException - если srcRaster равен null.

setRect

public void setRect(int dx,
                    int dy,
                    Raster srcRaster)

Копирует пиксели из Raster srcRaster в этот WritableRaster. Для каждого адреса (x, y) в srcRaster соответствующий пиксель копируется в адрес (x+dx, y+dy) в этом WritableRaster, если (x+dx, y+dy) не выходит за пределы границ этого растра. srcRaster должен иметь то же количество каналов, что и этот WritableRaster. Копирование — это простое копирование образцов источника в соответствующие образцы назначения. Подробнее см. setRect(Raster).

Параметры:
dx - Фактор сдвига по оси X от пространства src к пространству dst при копировании.
dy - Фактор сдвига по оси Y от пространства src к пространству dst при копировании.
srcRaster - Raster, из которого копировать пиксели.
Исключения:
NullPointerException - если srcRaster равен null.

setPixel

public void setPixel(int x,
                     int y,
                     int[] iArray)

Устанавливает пиксель в DataBuffer, используя массив int для входных образцов. Может быть выброшено ArrayIndexOutOfBoundsException, если координаты находятся вне границ. Однако явная проверка границ не гарантируется.

Параметры:
x - Координата X расположения пикселя.
y - Координата Y расположения пикселя.
iArray - Входные образцы в массиве int.
Исключения:
NullPointerException - если iArray равен null.
ArrayIndexOutOfBoundsException - если координаты находятся вне границ или iArray слишком мал для хранения ввода.

setPixel

public void setPixel(int x,
                     int y,
                     float[] fArray)

Устанавливает пиксель в DataBuffer, используя массив с плавающей точкой (float) для входных данных. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты не находятся в пределах границ. Однако явная проверка границ не гарантируется.

Параметры:
x - Координата X расположения пикселя.
y - Координата Y расположения пикселя.
fArray - Входные данные в массиве с плавающей точкой (float).
Исключения:
NullPointerException - если fArray равно null.
ArrayIndexOutOfBoundsException - если координаты не находятся в пределах границ или если fArray слишком мал для хранения входных данных.

setPixel

public void setPixel(int x,
                     int y,
                     double[] dArray)

Устанавливает пиксель в DataBuffer, используя массив с двойной точностью (double) для входных данных. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты не находятся в пределах границ. Однако явная проверка границ не гарантируется.

Параметры:
x - Координата X расположения пикселя.
y - Координата Y расположения пикселя.
dArray - Входные данные в массиве с двойной точностью (double).
Исключения:
NullPointerException - если dArray равно null.
ArrayIndexOutOfBoundsException - если координаты не находятся в пределах границ или если dArray слишком мал для хранения входных данных.

setPixels

public void setPixels(int x,
                      int y,
                      int w,
                      int h,
                      int[] iArray)

Устанавливает все образцы для прямоугольника пикселей из массива int, содержащего по одному образцу на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты не находятся в пределах границ. Однако явная проверка границ не гарантируется.

Параметры:
x - Координата X левого верхнего пикселя.
y - Координата Y левого верхнего пикселя.
w - Ширина прямоугольника пикселей.
h - Высота прямоугольника пикселей.
iArray - Входной массив пикселей int.
Исключения:
NullPointerException - если iArray равно null.
ArrayIndexOutOfBoundsException - если координаты не находятся в пределах границ или если iArray слишком мал для хранения входных данных.

setPixels

public void setPixels(int x,
                      int y,
                      int w,
                      int h,
                      float[] fArray)

Устанавливает все образцы для прямоугольника пикселей из массива float, содержащего по одному образцу на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты не находятся в пределах границ. Однако явная проверка границ не гарантируется.

Параметры:
x - Координата X левого верхнего пикселя.
y - Координата Y левого верхнего пикселя.
w - Ширина прямоугольника пикселей.
h - Высота прямоугольника пикселей.
fArray - Входной массив пикселей float.
Исключения:
NullPointerException - если fArray равно null.
ArrayIndexOutOfBoundsException - если координаты не находятся в пределах границ или если fArray слишком мал для хранения входных данных.

setPixels

public void setPixels(int x,
                      int y,
                      int w,
                      int h,
                      double[] dArray)

Устанавливает все образцы для прямоугольника пикселей из массива double, содержащего по одному образцу на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты не находятся в пределах границ. Однако явная проверка границ не гарантируется.

Параметры:
x - Координата X левого верхнего пикселя.
y - Координата Y левого верхнего пикселя.
w - Ширина прямоугольника пикселей.
h - Высота прямоугольника пикселей.
dArray - Входной массив пикселей double.
Исключения:
NullPointerException - если dArray равно null.
ArrayIndexOutOfBoundsException - если координаты не находятся в пределах границ или если dArray слишком мал для хранения входных данных.

setSample

public void setSample(int x,
                      int y,
                      int b,
                      int s)

Устанавливает образец в указанном канале для пикселя, расположенного в (x,y) в DataBuffer, используя целое число (int) в качестве входных данных. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты не находятся в пределах границ. Однако явная проверка границ не гарантируется.

Параметры:
x - Координата X расположения пикселя.
y - Координата Y расположения пикселя.
b - Канал для установки.
s - Входной образец.
Исключения:
ArrayIndexOutOfBoundsException - если координаты или индекс канала не находятся в пределах границ.

setSample

public void setSample(int x,
                      int y,
                      int b,
                      float s)

Устанавливает образец в указанном канале для пикселя, расположенного в (x,y) в DataBuffer, используя значение с плавающей точкой (float) в качестве входных данных. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты не находятся в пределах границ. Однако явная проверка границ не гарантируется.

Параметры:
x - Координата X расположения пикселя.
y - Координата Y расположения пикселя.
b - Канал для установки.
s - Входной образец как значение с плавающей точкой (float).
Исключения:
ArrayIndexOutOfBoundsException - если координаты или индекс канала не находятся в пределах границ.

setSample

public void setSample(int x,
                      int y,
                      int b,
                      double s)

Устанавливает образец в указанном канале для пикселя, расположенного в (x,y) в DataBuffer, используя значение с двойной точностью (double) в качестве входных данных. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты не находятся в пределах границ. Однако явная проверка границ не гарантируется.

Параметры:
x - Координата X расположения пикселя.
y - Координата Y расположения пикселя.
b - Канал для установки.
s - Входной образец как значение с двойной точностью (double).
Исключения:
ArrayIndexOutOfBoundsException - если координаты или индекс канала не находятся в пределах границ.

setSamples

public void setSamples(int x,
                       int y,
                       int w,
                       int h,
                       int b,
                       int[] iArray)

Устанавливает образцы в указанном канале для заданного прямоугольника пикселей из массива int, содержащего по одному образцу на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты не находятся в пределах границ. Однако явная проверка границ не гарантируется.

Параметры:
x - Координата X левого верхнего пикселя.
y - Координата Y левого верхнего пикселя.
w - Ширина прямоугольника пикселей.
h - Высота прямоугольника пикселей.
b - Канал для установки.
iArray - Входной массив образцов int.
Исключения:
NullPointerException - если iArray равно null.
ArrayIndexOutOfBoundsException - если координаты или индекс канала не находятся в пределах границ, или если iArray слишком мал для хранения входных данных.

setSamples

public void setSamples(int x,
                       int y,
                       int w,
                       int h,
                       int b,
                       float[] fArray)

Устанавливает образцы в указанном канале для заданного прямоугольника пикселей из массива float, содержащего по одному образцу на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты не находятся в пределах границ. Однако явная проверка границ не гарантируется.

Параметры:
x - Координата X левого верхнего пикселя.
y - Координата Y левого верхнего пикселя.
w - Ширина прямоугольника пикселей.
h - Высота прямоугольника пикселей.
b - Канал для установки.
fArray - Входной массив образцов float.
Исключения:
NullPointerException - если fArray равно null.
ArrayIndexOutOfBoundsException - если координаты или индекс канала не находятся в пределах границ, или если fArray слишком мал для хранения входных данных.

setSamples

public void setSamples(int x,
                       int y,
                       int w,
                       int h,
                       int b,
                       double[] dArray)

Устанавливает образцы в указанном канале для заданного прямоугольника пикселей из массива double, содержащего по одному образцу на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты не находятся в пределах границ. Однако явная проверка границ не гарантируется.

Параметры:
x - Координата X левого верхнего пикселя.
y - Координата Y левого верхнего пикселя.
w - Ширина прямоугольника пикселей.
h - Высота прямоугольника пикселей.
b - Канал для установки.
dArray - Входной массив образцов double.
Исключения:
NullPointerException - если dArray равно null.
ArrayIndexOutOfBoundsException - если координаты или индекс канала не находятся в пределах границ, или если dArray слишком мал для хранения входных данных.

© 1993, 2020, 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/11/docs/api/java.desktop/java/awt/image/WritableRaster.html

Spec-Zone .ru
спецификации, руководства, описания, API