Spec-Zone.ru › OpenJavaFX 24

Интерфейс PixelWriter

public interface PixelWriter
Данный интерфейс определяет методы для записи пиксельных данных WritableImage или другой поверхности, содержащей пиксели для записи.
Since:
JavaFX 2.2

Краткое описание методов

Модификатор и тип Метод Описание
PixelFormat getPixelFormat()
Данный метод возвращает PixelFormat, в котором поверхность хранит свои пиксели, или примерно эквивалентный формат пикселей, из которого можно легко преобразовать пиксели для их записи.
void setArgb(int x, int y, int argb)
Сохраняет пиксельные данные цвета в указанных координатах поверхности.
void setColor(int x, int y, Color c)
Сохраняет пиксельные данные для Color в указанных координатах поверхности.
void setPixels(int x, int y, int w, int h, PixelFormat<ByteBuffer> pixelformat, byte[] buffer, int offset, int scanlineStride)
Сохраняет пиксельные данные из массива байтов в прямоугольную область поверхности.
void setPixels(int x, int y, int w, int h, PixelFormat<IntBuffer> pixelformat, int[] buffer, int offset, int scanlineStride)
Сохраняет пиксельные данные из массива целых чисел в прямоугольную область поверхности.
<T extends Buffer>
void
setPixels(int x, int y, int w, int h, PixelFormat<T> pixelformat, T buffer, int scanlineStride)
Сохраняет пиксельные данные из буфера в прямоугольную область поверхности.
void setPixels(int dstx, int dsty, int w, int h, PixelReader reader, int srcx, int srcy)
Сохраняет пиксельные данные, полученные из экземпляра PixelReader, в прямоугольную область поверхности.

Подробное описание методов

getPixelFormat

PixelFormat getPixelFormat()
Этот метод возвращает PixelFormat, в котором поверхность хранит свои пиксели, или приблизительно эквивалентный формат пикселей, из которого можно легко преобразовать пиксели для целей записи.
Возвращает:
PixelFormat, который лучше всего описывает основанные пиксели

setArgb

void setArgb(int x, int y, int argb)
Хранит данные пикселей цвета в указанных координатах поверхности. 32-битное целое число argb должно содержать 4 цветовых компонента в отдельных 8-битных полях в порядке ARGB от старшего байта к младшему.
Параметры:
x - координата X цвета пикселя для записи
y - координата Y цвета пикселя для записи
argb - информация о цвете для записи, указанная в формате, описанном в INT_ARGB типе PixelFormat.

setColor

void setColor(int x, int y, Color c)
Хранит данные пикселей для Color в указанных координатах поверхности.
Параметры:
x - координата X цвета пикселя для записи
y - координата Y цвета пикселя для записи
c - Цвет для записи или null
Выбрасывает:
NullPointerException - если color является null

setPixels

<T extends Buffer> void setPixels(int x, int y, int w, int h, PixelFormat<T> pixelformat, T buffer, int scanlineStride)
Хранит данные пикселей из буфера в прямоугольной области поверхности. Формат пикселей в буфере определяется объектом PixelFormat, и преобразования форматов пикселей будут выполняться по мере необходимости для хранения данных на поверхности. Предполагается, что буфер расположен в позиции, где находятся первые данные пикселей, которые будут сохранены в пикселе поверхности в позиции (x, y). Данные пикселей для строки будут считываться из смежных позиций в буфере, упакованных максимально плотно для увеличения координат X. Данные пикселей для смежных строк будут считываться со смещением друг от друга на количество элементов данных буфера, определенное scanlineStride.
Параметры типа:
T - тип буфера
Параметры:
x - координата X прямоугольной области для записи
y - координата Y прямоугольной области для записи
w - ширина прямоугольной области для записи
h - высота прямоугольной области для записи
pixelformat - объект PixelFormat, определяющий формат для считывания пикселей из буфера
buffer - буфер подходящего типа для указанного объекта PixelFormat
scanlineStride - расстояние между данными пикселей для начала одной строки данных в буфере до начала следующей строки данных.
Выбрасывает:
NullPointerException - если pixelformat или buffer является null

setPixels

void setPixels(int x, int y, int w, int h, PixelFormat<ByteBuffer> pixelformat, byte[] buffer, int offset, int scanlineStride)
Хранит данные пикселей из массива байтов в прямоугольной области поверхности. Формат пикселей в буфере определяется объектом PixelFormat, и преобразования форматов пикселей будут выполняться по мере необходимости для хранения данных на поверхности. pixelformat должен быть совместимого типа PixelFormat<ByteBuffer>. Данные для первого пикселя в позиции (x, y) будут считываться из индекса массива, указанного параметром offset. Данные пикселей для строки будут считываться из смежных позиций в массиве, упакованных максимально плотно для увеличения координат X. Данные пикселей для смежных строк будут считываться со смещением друг от друга на количество элементов массива байтов, определенное scanlineStride.
Параметры:
x - координата X прямоугольной области для записи
y - координата Y прямоугольной области для записи
w - ширина прямоугольной области для записи
h - высота прямоугольной области для записи
pixelformat - объект PixelFormat<ByteBuffer>, определяющий формат байтов для считывания пикселей из буфера
buffer - массив байтов, содержащий данные пикселей для хранения
offset - смещение в buffer для считывания первых данных пикселей
scanlineStride - расстояние между данными пикселей для начала одной строки данных в буфере до начала следующей строки данных
Выбрасывает:
NullPointerException - если pixelformat или buffer является null

setPixels

void setPixels(int x, int y, int w, int h, PixelFormat<IntBuffer> pixelformat, int[] buffer, int offset, int scanlineStride)
Хранит данные пикселей из целочисленного массива в прямоугольной области поверхности. Формат пикселей в буфере определяется объектом PixelFormat, и преобразования форматов пикселей будут выполняться по мере необходимости для хранения данных на поверхности. pixelformat должен быть совместимого типа PixelFormat<IntBuffer>. Данные для первого пикселя в позиции (x, y) будут считываться из индекса массива, указанного параметром offset. Данные пикселей для строки будут считываться из смежных позиций в массиве, упакованных максимально плотно для увеличения координат X. Данные пикселей для смежных строк будут считываться со смещением друг от друга на количество элементов целочисленного массива, определенное scanlineStride.
Параметры:
x - координата X прямоугольной области для записи
y - координата Y прямоугольной области для записи
w - ширина прямоугольной области для записи
h - высота прямоугольной области для записи
pixelformat - объект PixelFormat<IntBuffer>, определяющий целочисленный формат для считывания пикселей из буфера
buffer - целочисленный массив, содержащий данные пикселей для хранения
offset - смещение в buffer для считывания первых данных пикселей
scanlineStride - расстояние между данными пикселей для начала одной строки данных в буфере до начала следующей строки данных
Выбрасывает:
NullPointerException - если pixelformat или buffer является null

setPixels

void setPixels(int dstx, int dsty, int w, int h, PixelReader reader, int srcx, int srcy)
Хранит данные пикселей, полученные из экземпляра PixelReader, в прямоугольной области поверхности. Данные для пикселя на поверхности в позиции (dstx, dsty) будут получены из reader из его позиции (srcx, srcy). Этот метод выполняет операцию, семантически эквивалентную (хотя, вероятно, намного быстрее, чем) этому псевдокоду:
     for (int y = 0; y < h, y++) {
         for (int x = 0; x < w; x++) {
             setArgb(dstx + x, dsty + y,
                     reader.getArgb(srcx + x, srcy + y));
         }
     }
 
Параметры:
dstx - координата X прямоугольной области для записи
dsty - координата Y прямоугольной области для записи
w - ширина прямоугольной области для записи
h - высота прямоугольной области для записи
reader - PixelReader, используемый для получения данных пикселей для записи
srcx - координата X данных для чтения из reader
srcy - координата Y данных для чтения из reader
Выбрасывает:
NullPointerException - если reader является null

Сообщить об ошибке или предложить улучшение
Авторские права © 2008, 2025, Oracle и/или его аффилированные лица. Все права защищены.

© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API