Spec-Zone .ru
спецификации, руководства, описания, API
|
public class ComponentSampleModel extends SampleModel
DataBuffer.TYPE_BYTE
, DataBuffer.TYPE_USHORT
, или DataBuffer.TYPE_INT
, соответственно), данные, для которых каждая выборка является целым числом со знаком, которое может быть сохранено в 16 битах (использование DataBuffer.TYPE_SHORT
), или данные, для которых каждая выборка является плаванием со знаком или двойным количеством (использование DataBuffer.TYPE_FLOAT
или DataBuffer.TYPE_DOUBLE
, соответственно). Все выборки данного ComponentSampleModel сохранены той же самой точностью. Все шаги и смещения должны быть неотрицательными. Этот класс поддерживает TYPE_BYTE
, TYPE_USHORT
, TYPE_SHORT
, TYPE_INT
, TYPE_FLOAT
, TYPE_DOUBLE
,PixelInterleavedSampleModel
, BandedSampleModel
Модификатор и Тип | Поле и Описание |
---|---|
protected int[] |
bandOffsets
Смещения для всех полос в элементах массива данных.
|
protected int[] |
bankIndices
Индекс для каждого банка, хранящего полосу данных изображения.
|
protected int |
numBands
Число полос в этом
ComponentSampleModel . |
protected int |
numBanks
Число банков в этом
ComponentSampleModel . |
protected int |
pixelStride
Пиксельный шаг (в элементах массива данных) области данных изображения описывается этим ComponentSampleModel.
|
protected int |
scanlineStride
Шаг строки (в элементах массива данных) области данных изображения описывается этим ComponentSampleModel.
|
dataType, height, width
Конструктор и Описание |
---|
ComponentSampleModel(int dataType, int w, int h, int pixelStride, int scanlineStride, int[] bandOffsets)
Создает ComponentSampleModel с указанными параметрами.
|
ComponentSampleModel(int dataType, int w, int h, int pixelStride, int scanlineStride, int[] bankIndices, int[] bandOffsets)
Создает ComponentSampleModel с указанными параметрами.
|
Модификатор и Тип | Метод и Описание |
---|---|
SampleModel |
createCompatibleSampleModel(int w, int h)
Создает новое
ComponentSampleModel с указанной шириной и высотой. |
DataBuffer |
createDataBuffer()
Создает a
DataBuffer это соответствует этому ComponentSampleModel . |
SampleModel |
createSubsetSampleModel(int[] bands)
Создает новый ComponentSampleModel с подмножеством полос этого ComponentSampleModel.
|
boolean |
equals(Object o)
Указывает, " ли некоторый другой объект равен" этому.
|
int[] |
getBandOffsets()
Возвращает смещение полосы для всех полос.
|
int[] |
getBankIndices()
Возвращает индексы банка для всех полос.
|
Объект |
getDataElements(int x, int y, Object obj, DataBuffer data)
Данные возвратов для единственного пикселя в примитивном массиве типа
TransferType . |
int |
getNumDataElements()
Возвращается число элементов данных должно было передать пиксель с
getDataElements(int, int, Object, DataBuffer) и setDataElements(int, int, Object, DataBuffer) методы. |
int |
getOffset(int x, int y)
Получает смещение для первой полосы пикселя (x, y).
|
int |
getOffset(int x, int y, int b)
Получает смещение для полосы b пикселя (x, y).
|
int[] |
getPixel(int x, int y, int[] iArray, DataBuffer data)
Возвраты все выборки для указанного пикселя в международном массиве, одна выборка на элемент массива.
|
int[] |
getPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
Возвраты все выборки для указанного прямоугольника пикселей в международном массиве, одна выборка на элемент массива.
|
int |
getPixelStride()
Возвращает пиксельный шаг этого ComponentSampleModel.
|
int |
getSample(int x, int y, int b, DataBuffer data)
Возвраты как интервал выборка в указанной полосе для пикселя, расположенного в (x, y).
|
double |
getSampleDouble(int x, int y, int b, DataBuffer data)
Возвращает выборку в указанной полосе для пикселя, расположенного в (x, y) как двойное.
|
float |
getSampleFloat(int x, int y, int b, DataBuffer data)
Возвращает выборку в указанной полосе для пикселя, расположенного в (x, y) как плавание.
|
int[] |
getSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
Возвращает выборки в указанной полосе для указанного прямоугольника пикселей в международном массиве, одну выборку на элемент массива данных.
|
int[] |
getSampleSize()
Возвращает число битов на выборку для всех полос.
|
int |
getSampleSize(int band)
Возвращает число битов на выборку для указанной полосы.
|
int |
getScanlineStride()
Возвращает шаг растровой строки этого ComponentSampleModel.
|
int |
hashCode()
Возвращает значение хэш-кода для объекта.
|
void |
setDataElements(int x, int y, Object obj, DataBuffer data)
Устанавливает данные для единственного пикселя в указанном
DataBuffer от примитивного массива типа TransferType . |
void |
setPixel(int x, int y, int[] iArray, DataBuffer data)
Устанавливает пиксель в
DataBuffer использование международного массива выборок для ввода. |
void |
setPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
Наборы все выборки для прямоугольника пикселей от международного массива, содержащего одну выборку на элемент массива.
|
void |
setSample(int x, int y, int b, double s, DataBuffer data)
Устанавливает выборку в указанной полосе для пикселя, расположенного в (x, y) в
DataBuffer использование двойного для ввода. |
void |
setSample(int x, int y, int b, float s, DataBuffer data)
Устанавливает выборку в указанной полосе для пикселя, расположенного в (x, y) в
DataBuffer использование плавания для ввода. |
void |
setSample(int x, int y, int b, int s, DataBuffer data)
Устанавливает выборку в указанной полосе для пикселя, расположенного в (x, y) в
DataBuffer использование интервала для ввода. |
void |
setSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
Устанавливает выборки в указанной полосе для указанного прямоугольника пикселей от международного массива, содержащего одну выборку на элемент массива данных.
|
getDataElements, getDataType, getHeight, getNumBands, getPixel, getPixel, getPixels, getPixels, getSamples, getSamples, getTransferType, getWidth, setDataElements, setPixel, setPixel, setPixels, setPixels, setSamples, setSamples
protected int[] bandOffsets
protected int[] bankIndices
protected int numBands
ComponentSampleModel
.protected int numBanks
ComponentSampleModel
.protected int scanlineStride
protected int pixelStride
public ComponentSampleModel(int dataType, int w, int h, int pixelStride, int scanlineStride, int[] bandOffsets)
dataType
- тип данных для того, чтобы сохранить выборкиw
- ширина (в пикселях) области данных изображения описываетсяh
- высота (в пикселях) области данных изображения описываетсяpixelStride
- пиксельный шаг области данных изображения описываетсяscanlineStride
- шаг строки области данных изображения описываетсяbandOffsets
- смещения всех полосIllegalArgumentException
- если w
или h
не больше чем 0IllegalArgumentException
- если pixelStride
меньше чем 0IllegalArgumentException
- если scanlineStride
меньше чем 0IllegalArgumentException
- если numBands
меньше чем 1IllegalArgumentException
- если продукт w
и h
больше чем Integer.MAX_VALUE
IllegalArgumentException
- если dataType
не один из поддерживаемых типов данныхpublic ComponentSampleModel(int dataType, int w, int h, int pixelStride, int scanlineStride, int[] bankIndices, int[] bandOffsets)
dataType
- тип данных для того, чтобы сохранить выборкиw
- ширина (в пикселях) области данных изображения описываетсяh
- высота (в пикселях) области данных изображения описываетсяpixelStride
- пиксельный шаг области данных изображения описываетсяscanlineStride
- Шаг строки области данных изображения описываетсяbankIndices
- индексы банка всех полосbandOffsets
- смещения полосы всех полосIllegalArgumentException
- если w
или h
не больше чем 0IllegalArgumentException
- если pixelStride
меньше чем 0IllegalArgumentException
- если scanlineStride
меньше чем 0IllegalArgumentException
- если длина bankIndices
не равняется длине bankOffsets
IllegalArgumentException
- если любой из индексов банка bandIndices
меньше чем 0IllegalArgumentException
- если dataType
не один из поддерживаемых типов данныхpublic SampleModel createCompatibleSampleModel(int w, int h)
ComponentSampleModel
с указанной шириной и высотой. Новое SampleModel
будет иметь то же самое число полос, типа данных хранения, чередуя схему, и пиксельный шаг как это SampleModel
.createCompatibleSampleModel
в классе SampleModel
w
- ширина получающегося SampleModel
h
- высота получающегося SampleModel
ComponentSampleModel
с указанным размеромIllegalArgumentException
- если w
или h
не больше чем 0public SampleModel createSubsetSampleModel(int[] bands)
createSubsetSampleModel
в классе SampleModel
bands
- подмножество полос от этого ComponentSampleModel
ComponentSampleModel
создаваемый с подмножеством полос от этого ComponentSampleModel
.public DataBuffer createDataBuffer()
DataBuffer
это соответствует этому ComponentSampleModel
. DataBuffer
тип данных объекта, число банков, и размер быть непротиворечивыми с этим ComponentSampleModel
.createDataBuffer
в классе SampleModel
DataBuffer
чей тип данных, число банков и размера являются непротиворечивыми с этим ComponentSampleModel
.public int getOffset(int x, int y)
DataBuffer
data
с a ComponentSampleModel
csm
как data.getElem(csm.getOffset(x, y));
x
- X расположений пикселяy
- расположение Y пикселяpublic int getOffset(int x, int y, int b)
b
может быть получен от a DataBuffer
data
с a ComponentSampleModel
csm
как data.getElem(csm.getOffset(x, y, b));
x
- X расположений указанного пикселяy
- расположение Y указанного пикселяb
- указанная полосаpublic final int[] getSampleSize()
getSampleSize
в классе SampleModel
public final int getSampleSize(int band)
getSampleSize
в классе SampleModel
band
- указанная полосаpublic final int[] getBankIndices()
public final int[] getBandOffsets()
public final int getScanlineStride()
ComponentSampleModel
.public final int getPixelStride()
ComponentSampleModel
.public final int getNumDataElements()
getDataElements(int, int, Object, DataBuffer)
и setDataElements(int, int, Object, DataBuffer)
методы. Для a ComponentSampleModel
, это идентично числу полос.getNumDataElements
в классе SampleModel
getDataElements
и setDataElements
методы.SampleModel.getNumDataElements()
, SampleModel.getNumBands()
public Object getDataElements(int x, int y, Object obj, DataBuffer data)
TransferType
. Для a ComponentSampleModel
, это - то же самое как тип данных, и выборки возвращаются один на элемент массива. Обычно, obj
в нужно передать как null
, так, чтобы Object
создается автоматически и правильный примитивный тип данных. Следующий код иллюстрирует передачу данных для одного пикселя от DataBuffer
db1
, чье расположение хранения описывается ComponentSampleModel
csm1
, к DataBuffer
db2
, чье расположение хранения описывается ComponentSampleModel
csm2
. Передача обычно более эффективна чем использование getPixel
и setPixel
.
ComponentSampleModel csm1, csm2; DataBufferInt db1, db2; csm2.setDataElements(x, y, csm1.getDataElements(x, y, null, db1), db2);Используя
getDataElements
и setDataElements
передать между два DataBuffer/SampleModel
пары законны если SampleModel
у объектов есть то же самое число полос, у соответствующих полос есть то же самое число битов на выборку, и TransferType
s являются тем же самым. Если obj
не null
, это должен быть примитивный массив типа TransferType
. Иначе, a ClassCastException
бросается. ArrayIndexOutOfBoundsException
мог бы быть брошен, если координаты не находятся в границах, или если obj
не null
и не является достаточно большим, чтобы содержать пиксельные данные.
getDataElements
в классе SampleModel
x
- X координат пиксельного расположенияy
- координата Y пиксельного расположенияobj
- если не -null
, примитивный массив, в котором можно возвратить пиксельные данныеdata
- DataBuffer
содержа данные изображенияNullPointerException
- если данные являются нулем.ArrayIndexOutOfBoundsException
- если координаты не находятся в границах, или если obj является слишком маленьким, чтобы содержать ouput.setDataElements(int, int, Object, DataBuffer)
public int[] getPixel(int x, int y, int[] iArray, DataBuffer data)
ArrayIndexOutOfBoundsException
мог бы быть брошен, если координаты не находятся в границах.getPixel
в классе SampleModel
x
- X координат пиксельного расположенияy
- координата Y пиксельного расположенияiArray
- Если ненуль, возвращает выборки в этом массивеdata
- DataBuffer, содержащий данные изображенияNullPointerException
- если данные являются нулем.ArrayIndexOutOfBoundsException
- если координаты не находятся в границах, или если iArray является слишком маленьким, чтобы содержать вывод.setPixel(int, int, int[], DataBuffer)
public int[] getPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
ArrayIndexOutOfBoundsException
мог бы быть брошен, если координаты не находятся в границах.getPixels
в классе SampleModel
x
- X координат верхнего левого пиксельного расположенияy
- Координата Y верхнего левого пиксельного расположенияw
- Ширина пиксельного прямоугольникаh
- Высота пиксельного прямоугольникаiArray
- Если ненуль, возвращает выборки в этом массивеdata
- DataBuffer, содержащий данные изображенияsetPixels(int, int, int, int, int[], DataBuffer)
public int getSample(int x, int y, int b, DataBuffer data)
ArrayIndexOutOfBoundsException
мог бы быть брошен, если координаты не находятся в границах.getSample
в классе SampleModel
x
- X координат пиксельного расположенияy
- координата Y пиксельного расположенияb
- полоса, чтобы возвратитьсяdata
- DataBuffer
содержа данные изображенияsetSample(int, int, int, int, DataBuffer)
public float getSampleFloat(int x, int y, int b, DataBuffer data)
ArrayIndexOutOfBoundsException
мог бы быть брошен, если координаты не находятся в границах.getSampleFloat
в классе SampleModel
x
- X координат пиксельного расположенияy
- Координата Y пиксельного расположенияb
- Полоса, чтобы возвратитьсяdata
- DataBuffer, содержащий данные изображенияpublic double getSampleDouble(int x, int y, int b, DataBuffer data)
ArrayIndexOutOfBoundsException
мог бы быть брошен, если координаты не находятся в границах.getSampleDouble
в классе SampleModel
x
- X координат пиксельного расположенияy
- Координата Y пиксельного расположенияb
- Полоса, чтобы возвратитьсяdata
- DataBuffer, содержащий данные изображенияpublic int[] getSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
ArrayIndexOutOfBoundsException
мог бы быть брошен, если координаты не находятся в границах.getSamples
в классе SampleModel
x
- X координат верхнего левого пиксельного расположенияy
- Координата Y верхнего левого пиксельного расположенияw
- ширина пиксельного прямоугольникаh
- высота пиксельного прямоугольникаb
- полоса, чтобы возвратитьсяiArray
- если не -null
, возвращает выборки в этом массивеdata
- DataBuffer
содержа данные изображенияsetSamples(int, int, int, int, int, int[], DataBuffer)
public void setDataElements(int x, int y, Object obj, DataBuffer data)
DataBuffer
от примитивного массива типа TransferType
. Для a ComponentSampleModel
, это - то же самое как тип данных, и выборки передаются один на элемент массива. Следующий код иллюстрирует передачу данных для одного пикселя от DataBuffer
db1
, чье расположение хранения описывается ComponentSampleModel
csm1
, к DataBuffer
db2
, чье расположение хранения описывается ComponentSampleModel
csm2
. Передача обычно более эффективна чем использование getPixel
и setPixel
.
ComponentSampleModel csm1, csm2; DataBufferInt db1, db2; csm2.setDataElements(x, y, csm1.getDataElements(x, y, null, db1), db2);Используя
getDataElements
и setDataElements
передать между два DataBuffer/SampleModel
пары законны если SampleModel
у объектов есть то же самое число полос, у соответствующих полос есть то же самое число битов на выборку, и TransferType
s являются тем же самым. A ClassCastException
бросается если obj
не примитивный массив типа TransferType
. ArrayIndexOutOfBoundsException
мог бы быть брошен, если координаты не находятся в границах, или если obj
не является достаточно большим, чтобы содержать пиксельные данные.
setDataElements
в классе SampleModel
x
- X координат пиксельного расположенияy
- координата Y пиксельного расположенияobj
- примитивный массив, содержащий пиксельные данныеdata
- DataBuffer, содержащий данные изображенияgetDataElements(int, int, Object, DataBuffer)
public void setPixel(int x, int y, int[] iArray, DataBuffer data)
DataBuffer
использование международного массива выборок для ввода. ArrayIndexOutOfBoundsException
мог бы быть брошен, если координаты не находятся в границах.setPixel
в классе SampleModel
x
- X координат пиксельного расположенияy
- Координата Y пиксельного расположенияiArray
- Входные выборки в международном массивеdata
- DataBuffer, содержащий данные изображенияgetPixel(int, int, int[], DataBuffer)
public void setPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
ArrayIndexOutOfBoundsException
мог бы быть брошен, если координаты не находятся в границах.setPixels
в классе SampleModel
x
- X координат верхнего левого пиксельного расположенияy
- Координата Y верхнего левого пиксельного расположенияw
- Ширина пиксельного прямоугольникаh
- Высота пиксельного прямоугольникаiArray
- Входные выборки в международном массивеdata
- DataBuffer, содержащий данные изображенияgetPixels(int, int, int, int, int[], DataBuffer)
public void setSample(int x, int y, int b, int s, DataBuffer data)
DataBuffer
использование интервала для ввода. ArrayIndexOutOfBoundsException
мог бы быть брошен, если координаты не находятся в границах.setSample
в классе SampleModel
x
- X координат пиксельного расположенияy
- Координата Y пиксельного расположенияb
- полоса, чтобы установитьs
- входная выборка как интервалdata
- DataBuffer, содержащий данные изображенияgetSample(int, int, int, DataBuffer)
public void setSample(int x, int y, int b, float s, DataBuffer data)
DataBuffer
использование плавания для ввода. ArrayIndexOutOfBoundsException
мог бы быть брошен, если координаты не находятся в границах.setSample
в классе SampleModel
x
- X координат пиксельного расположенияy
- Координата Y пиксельного расположенияb
- Полоса, чтобы установитьs
- Входная выборка как плаваниеdata
- DataBuffer, содержащий данные изображенияgetSample(int, int, int, DataBuffer)
public void setSample(int x, int y, int b, double s, DataBuffer data)
DataBuffer
использование двойного для ввода. ArrayIndexOutOfBoundsException
мог бы быть брошен, если координаты не находятся в границах.setSample
в классе SampleModel
x
- X координат пиксельного расположенияy
- Координата Y пиксельного расположенияb
- Полоса, чтобы установитьs
- Входная выборка как двойноеdata
- DataBuffer, содержащий данные изображенияgetSample(int, int, int, DataBuffer)
public void setSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
ArrayIndexOutOfBoundsException
мог бы быть брошен, если координаты не находятся в границах.setSamples
в классе SampleModel
x
- X координат верхнего левого пиксельного расположенияy
- Координата Y верхнего левого пиксельного расположенияw
- Ширина пиксельного прямоугольникаh
- Высота пиксельного прямоугольникаb
- Полоса, чтобы установитьiArray
- Входные выборки в международном массивеdata
- DataBuffer, содержащий данные изображенияgetSamples(int, int, int, int, int, int[], DataBuffer)
public boolean equals(Object o)
Object
equals
метод реализует отношение эквивалентности на ненулевых ссылках на объект:
x
, x.equals(x)
должен возвратиться true
. x
и y
, x.equals(y)
должен возвратиться true
если и только если y.equals(x)
возвраты true
. x
, y
, и z
, если x.equals(y)
возвраты true
и y.equals(z)
возвраты true
, тогда x.equals(z)
должен возвратиться true
. x
и y
, многократные вызовы x.equals(y)
последовательно возвращайтесь true
или последовательно возвращайтесь false
, предоставленный никакая информация, используемая в equals
сравнения на объектах изменяются. x
, x.equals(null)
должен возвратиться false
. equals
метод для класса Object
реализует самое отличительное отношение эквивалентности на объектах; то есть, для любых ненулевых ссылочных значений x
и y
, этот метод возвраты true
если и только если x
и y
обратитесь к тому же самому объекту (x == y
имеет значение true
).
Отметьте, что обычно необходимо переопределить hashCode
метод всякий раз, когда этот метод переопределяется, чтобы поддержать общий контракт для hashCode
метод, который утверждает, что у равных объектов должны быть равные хэш-коды.
equals
в классе Object
o
- ссылочный объект, с которым можно сравниться.true
если этот объект является тем же самым как obj параметром; false
иначе.Object.hashCode()
, HashMap
public int hashCode()
Object
HashMap
. Общий контракт hashCode
:
hashCode
метод должен последовательно возвращать то же самое целое число, не предоставил информации, используемой в equals
сравнения на объекте изменяются. Эта целочисленная потребность не остается непротиворечивой от одного выполнения приложения к другому выполнению того же самого приложения. equals(Object)
метод, затем вызывая hashCode
метод на каждом из двух объектов должен привести к тому же самому целочисленному результату. Object.equals(java.lang.Object)
метод, затем вызывая hashCode
метод на каждом из двух объектов должен привести к отличным целочисленным результатам. Однако, программист должен знать, что приведение к отличным целочисленным результатам для неравных объектов может улучшить производительность хэш-таблиц. Столько, сколько разумно практично, метод хэш-кода, определенный классом Object
действительно возвращает отличные целые числа для отличных объектов. (Это обычно реализуется, преобразовывая внутренний адрес объекта в целое число, но этот метод реализации не требуется языком программирования JavaTM.)
hashCode
в классе Object
Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.