|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
java.lang.Object java.awt.image.Raster
public class Raster
픽셀로 구성되는 구형 배열을 표현하는 클래스입니다. Raster 는, 샘플치가 포함되고 있는 DataBuffer 와 지정된 샘플치를 DataBuffer 로부터 검출할 방법이 기술되고 있는 SampleModel 를 캡슐화합니다.
Raster 는, 평면상의 특정의 구형 영역 (반드시 (0, 0)를 포함하지 않아도 좋다)를 차지하는 픽셀의 값을 정의합니다. 이 구형은, Raster 의 경계의 구형으로 불려 getBounds 메소드에 의해 취득되어 minX, minY, width, height 의 값에 의해 정의됩니다. minX 와 minY 의 값은, Raster 의 좌상구석의 좌표를 정의합니다. 경계의 구형외의 픽셀을 참조하면(자), 예외가 throw 되거나 Raster 의 관련 DataBuffer 의 의도하지 않는 요소가 참조되게 됩니다. Raster 를 사용할 때는, 이러한 범위외의 액세스는 실시하지 않게 해 주세요.
SampleModel 는, Raster 의 샘플이 DataBuffer 의 프리미티브(primitive) 배열 요소에 포함되는 방법을 기술합니다. 샘플은, PixelInterleavedSampleModel 이나 BandedSampleModel 와 같이 데이터 요소 마다 1 개(살)씩 포함하는 일도, SinglePixelPackedSampleModel 나 MultiPixelPackedSampleModel 와 같이 복수의 요소를 1 개로 정리해 포함할 수도 있습니다. SampleModel 는, 샘플이 부호 첨부 확장 형식인가 어떤가도 제어합니다. 이것에 의해, 부호 없음 데이터를 byte, short, int 등의, Java 의 부호 첨부 데이터형으로서 포함할 수 있습니다.
Raster 는 평면상의 어디에라도 존재할 수 있습니다만, SampleModel 는 (0, 0)으로부터 시작되는 간이 좌표 체계를 이용합니다. 이 때문에, Raster 는, Raster 의 좌표 체계와 SampleModel 의 좌표 체계의 사이에 픽셀 위치를 매핑 할 수 있도록(듯이) 하는 변환계수를 가지고 있습니다. SampleModel 의 좌표 체계로부터 Raster 의 좌표 체계에의 변환은, getSampleModelTranslateX 메소드와 getSampleModelTranslateY 메소드로 취득할 수 있습니다.
Raster 는 다른 Raster 와 DataBuffer 를 공유할 수 있습니다만, 이 때문에는, 이러한 Raster 를 명시적으로 구축하는지, createChild 메소드와 createTranslatedChild 메소드를 사용합니다. 이러한 메소드에 의해 구축된 Raster 에 대해서 getParent 메소드를 사용하면(자), 구축원의 Raster 에의 참조를 취득할 수 있습니다. createTranslatedChild 나 createChild 의 호출에 의해 구축된 Raster 가 아닌 경우, getParent 는 null 를 돌려줍니다.
createTranslatedChild 메소드는, 현재의 Raster 의 모든 데이터를 공유하는 새로운 Raster 를 돌려줍니다. 새로운 Raster 는, 현재의 Raster 와 같은 폭과 높이의 경계의 구형을 차지합니다만, 개시점이 다릅니다. 예를 들어, 부모의 Raster 가 (10, 10)로부터 (100, 100)까지의 영역을 차지하는 경우, 변환 후의 Raster 의 영역의 시점을 (50, 50)에 정의하면(자), 부모의 픽셀 (20, 20)과 아이의 픽셀 (60, 60)은 이것들 2 개의 Raster 로 공유되는 DataBuffer 로 같은 위치를 차지합니다. 대응하는 SampleModel 좌표를 취득하는 경우, 부모의 Raster 에서는 픽셀 좌표에 (-10, -10)가 가산되는데 대해, 변환 후의 Raster 에서는 (-50, -50)이 가산됩니다.
부모의 sampleModelTranslateX 와 sampleModelTranslateY 의 값으로부터, 아이의 sampleModelTranslateX 와 sampleModelTranslateY 의 값을 감산하는 것으로, Raster 의 부모와 자식 사이의 변환이 가능합니다.
createChild 메소드를 사용하면(자), 부모의 경계의 구형의 부분집합만을 차지해 같은 좌표 체계 또는 변환 후의 좌표 체계를 가지는 새로운 Raster 나, 부모의 밴드의 부분집합을 가지는 새로운 Raster 를 생성할 수 있습니다.
생성자 은 모두 보호되고 있습니다. Raster 를 생성하는 올바른 방법은, 이 클래스에서 정의되고 있는 정적인 create 메소드의 1 개를 사용하는 것입니다. 이러한 메소드를 사용하면(자), 표준의 인타리브화 된 SampleModel, 밴드화 된 SmpleModel, 및 팩 된 SampleModel 를 사용하는 Raster 의 인스턴스가 생성되어 외부에서 생성된 SampleModel 와 DataBuffer 를 결합해 생성되는 경우와 비교해 효율적으로 처리할 수 있습니다.
DataBuffer
,
SampleModel
,
PixelInterleavedSampleModel
,
BandedSampleModel
,
SinglePixelPackedSampleModel
,
MultiPixelPackedSampleModel
필드의 개요 | |
---|---|
protected DataBuffer |
dataBuffer
이미지 데이터를 포함하는 DataBuffer 입니다. |
protected int |
height
이 Raster 의 높이입니다. |
protected int |
minX
이 Raster 의 좌상구석의 픽셀의 X 좌표입니다. |
protected int |
minY
이 Raster 의 좌상구석의 픽셀의 Y 좌표입니다. |
protected int |
numBands
Raster 내의 밴드수입니다. |
protected int |
numDataElements
1 픽셀 근처의 DataBuffer 데이터 요소의 수입니다. |
protected Raster |
parent
이 Raster 의 부모, 또는 null 입니다. |
protected SampleModel |
sampleModel
이 Raster 의 픽셀이 DataBuffer 에 포함되는 방법을 기술하는 SampleModel 입니다. |
protected int |
sampleModelTranslateX
Raster 의 SampleModel 의 좌표 공간으로부터 Raster 의 좌표 공간에의 X 변환입니다. |
protected int |
sampleModelTranslateY
Raster 의 SampleModel 의 좌표 공간으로부터 Raster 의 좌표 공간에의 Y 변환입니다. |
protected int |
width
이 Raster 의 폭입니다. |
생성자 의 개요 | |
---|---|
protected |
Raster (SampleModel sampleModel,
DataBuffer dataBuffer,
Point origin)
지정된 SampleModel 및 DataBuffer 를 가지는 Raster 를 구축합니다. |
protected |
Raster (SampleModel sampleModel,
DataBuffer dataBuffer,
Rectangle aRegion,
Point sampleModelTranslate,
Raster parent)
지정된 SampleModel, DataBuffer, 및 부모를 사용해 Raster 를 구축합니다. |
protected |
Raster (SampleModel sampleModel,
Point origin)
지정된 SampleModel 를 가지는 Raster 를 구축합니다. |
메소드의 개요 | |
---|---|
static WritableRaster |
createBandedRaster (DataBuffer dataBuffer,
int w,
int h,
int scanlineStride,
int[] bankIndices,
int[] bandOffsets,
Point location)
지정된 DataBuffer, 폭, 높이, 주사선 보폭, 뱅크 인덱스, 및 뱅크 오프셋(offset)을 가지는, BandedSampleModel 에 근거한 Raster 를 생성합니다. |
static WritableRaster |
createBandedRaster (int dataType,
int w,
int h,
int scanlineStride,
int[] bankIndices,
int[] bandOffsets,
Point location)
지정된 데이터형, 폭, 높이, 주사선 보폭, 뱅크 인덱스, 밴드 오프셋(offset)을 가지는, BandedSampleModel 에 근거한 Raster 를 생성합니다. |
static WritableRaster |
createBandedRaster (int dataType,
int w,
int h,
int bands,
Point location)
지정된 데이터형, 폭, 높이, 밴드수를 가지는, BandedSampleModel 에 근거한 Raster 를 생성합니다. |
Raster |
createChild (int parentX,
int parentY,
int width,
int height,
int childMinX,
int childMinY,
int[] bandList)
이 Raster 의 DataBuffer 의 모두 또는 일부를 공유하는 새로운 Raster 를 돌려줍니다. |
WritableRaster |
createCompatibleWritableRaster ()
이 Raster 와 같은 SampleModel 와 초기화된 새로운 DataBuffer 를 가져, 이 Raster 와 같은 사이즈로 호환성이 있는 WritableRaster 를 생성합니다. |
WritableRaster |
createCompatibleWritableRaster (int w,
int h)
지정된 사이즈, 새로운 SampleModel, 및 초기화된 새로운 DataBuffer 를 가져, 호환성이 있는 WritableRaster 를 생성합니다. |
WritableRaster |
createCompatibleWritableRaster (int x,
int y,
int w,
int h)
지정된 위치 (minX, minY)와 사이즈 (width, height), 새로운 SampleModel, 및 초기화된 새로운 DataBuffer 를 가져, 호환성이 있는 WritableRaster 를 생성합니다. |
WritableRaster |
createCompatibleWritableRaster (Rectangle rect)
rect 에 의해 지정되는 위치 (minX, minY)와 사이즈 (width, height), 새로운 SampleModel, 및 초기화된 새로운 DataBuffer 를 가져, 호환성이 있는 WritableRaster 를 생성합니다. |
static WritableRaster |
createInterleavedRaster (DataBuffer dataBuffer,
int w,
int h,
int scanlineStride,
int pixelStride,
int[] bandOffsets,
Point location)
지정된 DataBuffer, 폭, 높이, 주사선 보폭, 픽셀 보폭, 및 밴드 오프셋(offset)를 가지는, PixelInterleavedSampleModel 에 근거한 Raster 를 생성합니다. |
static WritableRaster |
createInterleavedRaster (int dataType,
int w,
int h,
int scanlineStride,
int pixelStride,
int[] bandOffsets,
Point location)
지정된 데이터형, 폭, 높이, 주사선 보폭, 픽셀 보폭, 및 밴드 오프셋(offset)를 가지는, PixelInterleavedSampleModel 에 근거한 Raster 를 생성합니다. |
static WritableRaster |
createInterleavedRaster (int dataType,
int w,
int h,
int bands,
Point location)
지정된 데이터형, 폭, 높이, 및 밴드수를 가지는, PixelInterleavedSampleModel 에 근거한 Raster 를 생성합니다. |
static WritableRaster |
createPackedRaster (DataBuffer dataBuffer,
int w,
int h,
int scanlineStride,
int[] bandMasks,
Point location)
지정된 DataBuffer, 폭, 높이, 주사선 보폭, 및 밴드 마스크를 가지는, SinglePixelPackedSampleModel 에 근거한 Raster 를 생성합니다. |
static WritableRaster |
createPackedRaster (DataBuffer dataBuffer,
int w,
int h,
int bitsPerPixel,
Point location)
지정된 DataBuffer, 폭, 높이, 및 1 픽셀 근처의 비트수를 가지는, MultiPixelPackedSampleModel 에 근거한 Raster 를 생성합니다. |
static WritableRaster |
createPackedRaster (int dataType,
int w,
int h,
int[] bandMasks,
Point location)
지정된 데이터형, 폭, 높이, 및 밴드 마스크를 가지는, SinglePixelPackedSampleModel 에 근거한 Raster 를 생성합니다. |
static WritableRaster |
createPackedRaster (int dataType,
int w,
int h,
int bands,
int bitsPerBand,
Point location)
지정된 데이터형, 폭, 높이, 밴드수, 및 1 밴드 근처의 비트수를 가지는, 팩 된 SampleModel 에 근거한 Raster 를 생성합니다. |
static Raster |
createRaster (SampleModel sm,
DataBuffer db,
Point location)
지정된 SampleModel 와 DataBuffer 을 가지는 Raster 를 생성합니다. |
Raster |
createTranslatedChild (int childMinX,
int childMinY)
이 Raster 와 같은 사이즈, SampleModel, 및 DataBuffer 를 가져, 위치가 다른 Raster 를 생성합니다. |
static WritableRaster |
createWritableRaster (SampleModel sm,
DataBuffer db,
Point location)
지정된 SampleModel 와 DataBuffer 를 가지는 WritableRaster 를 생성합니다. |
static WritableRaster |
createWritableRaster (SampleModel sm,
Point location)
지정된 SampleModel 를 가지는 WritableRaster 를 생성합니다. |
Rectangle |
getBounds ()
이 Raster 의 경계의 Rectangle 를 돌려줍니다. |
DataBuffer |
getDataBuffer ()
이 Raster 에 관련한 DataBuffer 를 돌려줍니다. |
Object |
getDataElements (int x,
int y,
int w,
int h,
Object outData)
TransferType 형의 프리미티브(primitive) 배열의, 지정된 픽셀 구형의 픽셀 데이터를 돌려줍니다. |
Object |
getDataElements (int x,
int y,
Object outData)
transferType 형의 프리미티브(primitive) 배열내의 1 개의 픽셀의 데이터를 돌려줍니다. |
int |
getHeight ()
Raster 의 높이를 픽셀 단위로 돌려줍니다. |
int |
getMinX ()
Raster 의 유효한 최소의 X 좌표를 돌려줍니다. |
int |
getMinY ()
Raster 의 유효한 최소의 Y 좌표를 돌려줍니다. |
int |
getNumBands ()
이 Raster 내의 밴드수 (1 픽셀 근처의 샘플수)를 돌려줍니다. |
int |
getNumDataElements ()
getDataElements 메소드 및 setDataElements 메소드를 사용해 1 픽셀 전송 하는데 필요한 데이터 요소의 수를 돌려줍니다. |
Raster |
getParent ()
이 Raster 의 친 Raster 가 있으면 그것을 돌려줍니다. |
double[] |
getPixel (int x,
int y,
double[] dArray)
지정된 픽셀의 샘플을 double 배열로서 돌려줍니다. |
float[] |
getPixel (int x,
int y,
float[] fArray)
지정된 픽셀의 샘플을 float 배열로서 돌려줍니다. |
int[] |
getPixel (int x,
int y,
int[] iArray)
지정된 픽셀의 샘플을 int 배열로서 돌려줍니다. |
double[] |
getPixels (int x,
int y,
int w,
int h,
double[] dArray)
구형의 픽셀의 샘플 모든 것을, 배열 요소 마다 1 개의 샘플이 포함되고 있는 double 배열로서 돌려줍니다. |
float[] |
getPixels (int x,
int y,
int w,
int h,
float[] fArray)
구형의 픽셀의 샘플 모든 것을, 배열 요소 마다 1 개의 샘플이 포함되고 있는 float 배열로서 돌려줍니다. |
int[] |
getPixels (int x,
int y,
int w,
int h,
int[] iArray)
구형의 픽셀의 샘플 모든 것을, 배열 요소 마다 1 개의 샘플이 포함되고 있는 int 배열로서 돌려줍니다. |
int |
getSample (int x,
int y,
int b)
(x, y)에 위치하는 픽셀의 지정된 밴드내의 샘플을 int 로서 돌려줍니다. |
double |
getSampleDouble (int x,
int y,
int b)
(x, y)에 위치하는 픽셀의 지정된 밴드내의 샘플을 double 로서 돌려줍니다. |
float |
getSampleFloat (int x,
int y,
int b)
(x, y)에 위치하는 픽셀의 지정된 밴드내의 샘플을 float 로서 돌려줍니다. |
SampleModel |
getSampleModel ()
이미지 데이터의 레이아웃을 기술하는 SampleModel 를 돌려줍니다. |
int |
getSampleModelTranslateX ()
SampleModel 의 좌표 체계로부터 Raster 의 좌표 체계에의 X 변환을 돌려줍니다. |
int |
getSampleModelTranslateY ()
SampleModel 의 좌표 체계로부터 Raster 의 좌표 체계에의 Y 변환을 돌려줍니다. |
double[] |
getSamples (int x,
int y,
int w,
int h,
int b,
double[] dArray)
double 배열내의 지정된 픽셀 구형의, 지정된 밴드의 샘플을 돌려줍니다. |
float[] |
getSamples (int x,
int y,
int w,
int h,
int b,
float[] fArray)
float 배열내의 지정된 픽셀 구형의, 지정된 밴드의 샘플을 돌려줍니다. |
int[] |
getSamples (int x,
int y,
int w,
int h,
int b,
int[] iArray)
int 배열의 지정된 픽셀의 구형의, 지정된 밴드의 샘플을 돌려줍니다. |
int |
getTransferType ()
getDataElements 메소드와 setDataElements 메소드로, 1 개의 픽셀을 전송 하기 위해서 필요한 데이터 요소의 수를 돌려줍니다. |
int |
getWidth ()
Raster 의 폭을 픽셀 단위로 돌려줍니다. |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
필드의 상세 |
---|
protected SampleModel sampleModel
protected DataBuffer dataBuffer
protected int minX
protected int minY
protected int width
protected int height
protected int sampleModelTranslateX
protected int sampleModelTranslateY
protected int numBands
protected int numDataElements
protected Raster parent
생성자 의 상세 |
---|
protected Raster(SampleModel sampleModel, Point origin)
sampleModel
- 레이아웃을 지정하는 SampleModelorigin
- 원점을 지정한 Point
RasterFormatException
- origin.x + sampleModel.getWidth()
또는 origin.y + sampleModel.getHeight()
의
계산으로, 정수형 오버플로우가 발생했다
경우
NullPointerException
- sampleModel
또는
origin
가 null 의 경우protected Raster(SampleModel sampleModel, DataBuffer dataBuffer, Point origin)
sampleModel
- 레이아웃을 지정하는 SampleModeldataBuffer
- 이미지 데이터를 포함하는 DataBufferorigin
- 원점을 지정하는 Point
RasterFormatException
- origin.x + sampleModel.getWidth()
또는 origin.y + sampleModel.getHeight()
의
계산으로, 정수형 오버플로우가 발생했다
경우
NullPointerException
- sampleModel
또는
origin
가 null 의 경우protected Raster(SampleModel sampleModel, DataBuffer dataBuffer, Rectangle aRegion, Point sampleModelTranslate, Raster parent)
sampleModel
- 레이아웃을 지정하는 SampleModeldataBuffer
- 이미지 데이터를 포함하는 DataBufferaRegion
- 이미지 영역을 지정하는 RectanglesampleModelTranslate
- SampleModel 로부터 Raster 좌표에의
변환을 지정하는 Pointparent
- 이 라스터의 부모 (존재하는 경우)
NullPointerException
- sampleModel
,
dataBuffer
,aRegion
,
sampleModelTranslate
중 한쪽이 null 의 경우
RasterFormatException
- aRegion
의 폭 또는 높이가
제로 이하의 경우, 또는
aRegion.x + aRegion.width
와
aRegion.y + aRegion.height
의 몇개의 계산으로 정수형 오버플로우가
발생했을 경우메소드의 상세 |
---|
public static WritableRaster createInterleavedRaster(int dataType, int w, int h, int bands, Point location)
Raster 의 좌상구석은 location 인수에 의해 지정됩니다. location 가 null 의 경우는, (0, 0)가 사용됩니다. dataType 파라미터에는, DataBuffer 클래스 정의로 열거되는 값의 1 개를 지정합니다.
인타리브화 된 DataBuffer.TYPE_INT
Raster 는 지원되고 있지 않습니다. DataBuffer.TYPE_INT
형의 1 밴드의 Raster 를 생성하려면 , Raster.createPackedRaster()를 사용합니다.
현재 지원되고 있는 dataType 는, TYPE_BYTE 와 TYPE_USHORT 뿐입니다.
dataType
- 샘플 포함용의 데이터 형식w
- 이미지 데이터의 폭 (픽셀 단위)h
- 이미지 데이터의 높이 (픽셀 단위)bands
- 밴드수location
- Raster
의 좌상구석
RasterFormatException
- w
또는 h
가
제로 이하의 경우, 혹은
location.x + w
와
location.y + h
의 몇개의 계산으로 정수형 오버플로우가
발생했을 경우public static WritableRaster createInterleavedRaster(int dataType, int w, int h, int scanlineStride, int pixelStride, int[] bandOffsets, Point location)
Raster 의 좌상구석은 location 인수에 의해 지정됩니다. location 가 null 의 경우는, (0, 0)가 사용됩니다. dataType 파라미터에는, DataBuffer 클래스 정의로 열거되는 값의 1 개를 지정합니다.
인타리브화 된 DataBuffer.TYPE_INT
Raster 는 지원되고 있지 않습니다. DataBuffer.TYPE_INT
형의 1 밴드의 Raster 를 생성하려면 , Raster.createPackedRaster()를 사용합니다.
현재 지원되고 있는 dataType 는, TYPE_BYTE 와 TYPE_USHORT 뿐입니다.
dataType
- 샘플 포함용의 데이터 형식w
- 이미지 데이터의 폭 (픽셀 단위)h
- 이미지 데이터의 높이 (픽셀 단위)scanlineStride
- 이미지 데이터의 주사선 보폭pixelStride
- 이미지 데이터의 픽셀 보폭bandOffsets
- 모든 밴드의 오프셋(offset)location
- Raster
의 좌상구석
RasterFormatException
- w
또는 h
가
제로 이하의 경우, 혹은
location.x + w
와
location.y + h
의 몇개의 계산으로 정수형 오버플로우가
발생했을 경우
IllegalArgumentException
- dataType
가
지원되고 있는 데이터형
DataBuffer.TYPE_BYTE
또는
DataBuffer.TYPE_USHORT
가 어느 쪽도 아닌 경우public static WritableRaster createBandedRaster(int dataType, int w, int h, int bands, Point location)
Raster 의 좌상구석은 location 인수에 의해 지정됩니다. location 가 null 의 경우는, (0, 0)가 사용됩니다. dataType 파라미터에는, DataBuffer 클래스 정의로 열거되는 값의 1 개를 지정합니다.
현재 지원되고 있는 dataType 는, TYPE_BYTE, TYPE_USHORT, 및 TYPE_INT 뿐입니다.
dataType
- 샘플 포함용의 데이터 형식w
- 이미지 데이터의 폭 (픽셀 단위)h
- 이미지 데이터의 높이 (픽셀 단위)bands
- 밴드수location
- Raster
의 좌상구석
RasterFormatException
- w
또는 h
가
제로 이하의 경우, 혹은
location.x + w
와
location.y + h
의 몇개의 계산으로 정수형 오버플로우가
발생했을 경우
ArrayIndexOutOfBoundsException
- bands
가
1 보다 작은 경우public static WritableRaster createBandedRaster(int dataType, int w, int h, int scanlineStride, int[] bankIndices, int[] bandOffsets, Point location)
Raster 의 좌상구석은 location 인수에 의해 지정됩니다. dataType 파라미터에는, DataBuffer 클래스 정의로 열거되는 값의 1 개를 지정합니다.
현재 지원되고 있는 dataType 는, TYPE_BYTE, TYPE_USHORT, 및 TYPE_INT 뿐입니다.
dataType
- 샘플 포함용의 데이터 형식w
- 이미지 데이터의 폭 (픽셀 단위)h
- 이미지 데이터의 높이 (픽셀 단위)scanlineStride
- 이미지 데이터의 주사선 보폭bankIndices
- 각 밴드의 뱅크 인덱스bandOffsets
- 모든 밴드의 오프셋(offset)location
- Raster
의 좌상구석
RasterFormatException
- w
또는 h
가
제로 이하의 경우, 혹은
location.x + w
와
location.y + h
의 몇개의 계산으로 정수형 오버플로우가
발생했을 경우
IllegalArgumentException
- dataType
가
지원되고 있는 데이터형
DataBuffer.TYPE_BYTE
,
DataBuffer.TYPE_USHORT
,
DataBuffer.TYPE_INT
의 머지않아도 아닌 경우
ArrayIndexOutOfBoundsException
- bankIndices
또는 bandOffsets
가 null
의 경우public static WritableRaster createPackedRaster(int dataType, int w, int h, int[] bandMasks, Point location)
Raster 의 좌상구석은 location 인수에 의해 지정됩니다. location 가 null 의 경우는, (0, 0)가 사용됩니다. dataType 파라미터에는, DataBuffer 클래스 정의로 열거되는 값의 1 개를 지정합니다.
현재 지원되고 있는 dataType 는, TYPE_BYTE, TYPE_USHORT, 및 TYPE_INT 뿐입니다.
dataType
- 샘플 포함용의 데이터 형식w
- 이미지 데이터의 폭 (픽셀 단위)h
- 이미지 데이터의 높이 (픽셀 단위)bandMasks
- 각 뱅크의 엔트리를 포함하는 배열location
- Raster
의 좌상구석
RasterFormatException
- w
또는 h
가
제로 이하의 경우, 혹은
location.x + w
와
location.y + h
의 몇개의 계산으로 정수형 오버플로우가
발생했을 경우
IllegalArgumentException
- dataType
가
지원되고 있는 데이터형
DataBuffer.TYPE_BYTE
,
DataBuffer.TYPE_USHORT
,
DataBuffer.TYPE_INT
의 머지않아도 아닌 경우public static WritableRaster createPackedRaster(int dataType, int w, int h, int bands, int bitsPerBand, Point location)
밴드수가 복수의 경우, SampleModel 는 각 밴드가 bitsPerBand 비트를 가지는 SinglePixelPackedSampleModel 가 됩니다. 어느 쪽의 경우도, 대응하는 SampleModel 가 요구하는 dataType 와 bitsPerBand 에 관한 요건을 채우지 않으면 안됩니다.
Raster 의 좌상구석은 location 인수에 의해 지정됩니다. location 가 null 의 경우는, (0, 0)가 사용됩니다. dataType 파라미터에는, DataBuffer 클래스 정의로 열거되는 값의 1 개를 지정합니다.
현재 지원되고 있는 dataType 는, TYPE_BYTE, TYPE_USHORT, 및 TYPE_INT 뿐입니다.
dataType
- 샘플 포함용의 데이터 형식w
- 이미지 데이터의 폭 (픽셀 단위)h
- 이미지 데이터의 높이 (픽셀 단위)bands
- 밴드수bitsPerBand
- 밴드마다의 비트수location
- Raster
의 좌상구석
RasterFormatException
- w
또는 h
가
제로 이하의 경우, 혹은
location.x + w
와
location.y + h
의 몇개의 계산으로 정수형 오버플로우가
발생했을 경우
IllegalArgumentException
- bitsPerBand
와
bands
의 적이,
dataType
가 보관 유지하는 비트수부터
큰 경우
IllegalArgumentException
- bitsPerBand
또는
bands
가 0 이하인 경우
IllegalArgumentException
- dataType
가
지원되고 있는 데이터형
DataBuffer.TYPE_BYTE
,
DataBuffer.TYPE_USHORT
,
DataBuffer.TYPE_INT
의 머지않아도 아닌 경우public static WritableRaster createInterleavedRaster(DataBuffer dataBuffer, int w, int h, int scanlineStride, int pixelStride, int[] bandOffsets, Point location)
인타리브화 된 DataBuffer.TYPE_INT
Raster 는 지원되고 있지 않습니다. DataBuffer.TYPE_INT
형의 1 밴드의 Raster 를 생성하려면 , Raster.createPackedRaster()를 사용합니다.
dataBuffer
- 이미지 데이터를 포함한다
DataBuffer
w
- 이미지 데이터의 폭 (픽셀 단위)h
- 이미지 데이터의 높이 (픽셀 단위)scanlineStride
- 이미지 데이터의 주사선 보폭pixelStride
- 이미지 데이터의 픽셀 보폭bandOffsets
- 모든 밴드의 오프셋(offset)location
- Raster
의 좌상구석
DataBuffer
, 폭, 높이,
주사선 보폭, 픽셀 보폭, 및 밴드 오프셋(offset)를 가진다
WritableRaster 객체
RasterFormatException
- w
또는 h
가
제로 이하의 경우, 혹은
location.x + w
와
location.y + h
의 몇개의 계산으로 정수형 오버플로우가
발생했을 경우
IllegalArgumentException
- dataType
가
지원되고 있는 데이터형
DataBuffer.TYPE_BYTE
와
DataBuffer.TYPE_USHORT
가 어느 쪽도 아닌 경우
RasterFormatException
- dataBuffer
가
복수의 뱅크를 가지는 경우
NullPointerException
- dataBuffer
가 null 의 경우public static WritableRaster createBandedRaster(DataBuffer dataBuffer, int w, int h, int scanlineStride, int[] bankIndices, int[] bandOffsets, Point location)
dataBuffer
- 이미지 데이터를 포함한다
DataBuffer
w
- 이미지 데이터의 폭 (픽셀 단위)h
- 이미지 데이터의 높이 (픽셀 단위)scanlineStride
- 이미지 데이터의 주사선 보폭bankIndices
- 각 밴드의 뱅크 인덱스bandOffsets
- 모든 밴드의 오프셋(offset)location
- Raster
의 좌상구석
DataBuffer
, 폭, 높이,
주사선 보폭, 뱅크 인덱스, 및 밴드 오프셋(offset)를 가진다
WritableRaster 객체
RasterFormatException
- w
또는 h
가
제로 이하의 경우, 혹은
location.x + w
와
location.y + h
의 몇개의 계산으로 정수형 오버플로우가
발생했을 경우
IllegalArgumentException
- dataType
가
지원되고 있는 데이터형
DataBuffer.TYPE_BYTE
,
DataBuffer.TYPE_USHORT
,
DataBuffer.TYPE_INT
의 머지않아도 아닌 경우
NullPointerException
- dataBuffer
가 null 의 경우public static WritableRaster createPackedRaster(DataBuffer dataBuffer, int w, int h, int scanlineStride, int[] bandMasks, Point location)
dataBuffer
- 이미지 데이터를 포함한다
DataBuffer
w
- 이미지 데이터의 폭 (픽셀 단위)h
- 이미지 데이터의 높이 (픽셀 단위)scanlineStride
- 이미지 데이터의 주사선 보폭bandMasks
- 각 뱅크의 엔트리를 포함하는 배열location
- Raster
의 좌상구석
DataBuffer
, 폭, 높이,
주사선 보폭, 및 밴드 마스크를 가진다
WritableRaster 객체
RasterFormatException
- w
또는 h
가
제로 이하의 경우, 혹은
location.x + w
와
location.y + h
의 몇개의 계산으로 정수형 오버플로우가
발생했을 경우
IllegalArgumentException
- dataType
가
지원되고 있는 데이터형
DataBuffer.TYPE_BYTE
,
DataBuffer.TYPE_USHORT
,
DataBuffer.TYPE_INT
의 머지않아도 아닌 경우
RasterFormatException
- dataBuffer
가
복수의 뱅크를 가지는 경우
NullPointerException
- dataBuffer
가 null 의 경우public static WritableRaster createPackedRaster(DataBuffer dataBuffer, int w, int h, int bitsPerPixel, Point location)
dataBuffer
- 이미지 데이터를 포함한다
DataBuffer
w
- 이미지 데이터의 폭 (픽셀 단위)h
- 이미지 데이터의 높이 (픽셀 단위)bitsPerPixel
- 각 픽셀의 비트수location
- Raster
의 좌상구석
DataBuffer
, 폭, 높이,
및 픽셀 근처의 비트수를 가진다
WritableRaster 객체
RasterFormatException
- w
또는 h
가
제로 이하의 경우, 혹은
location.x + w
와
location.y + h
의 몇개의 계산으로 정수형 오버플로우가
발생했을 경우
IllegalArgumentException
- dataType
가
지원되고 있는 데이터형
DataBuffer.TYPE_BYTE
,
DataBuffer.TYPE_USHORT
,
DataBuffer.TYPE_INT
의 머지않아도 아닌 경우
RasterFormatException
- dataBuffer
가
복수의 뱅크를 가지는 경우
NullPointerException
- dataBuffer
가 null 의 경우public static Raster createRaster(SampleModel sm, DataBuffer db, Point location)
sm
- 지정된 SampleModel
db
- 지정된 DataBuffer
location
- Raster
의 좌상구석
SampleModel
,
DataBuffer
, 및 위치를 가진다
Raster
RasterFormatException
- location.x + sm.getWidth()
와
location.y + sm.getHeight()
의
몇개의 계산으로 정수형 오버플로우가
발생했을 경우
RasterFormatException
- dataBuffer
가
복수의 뱅크를 가져,sampleModel
가
PixelInterleavedSampleModel, SinglePixelPackedSampleModel,
또는 MultiPixelPackedSampleModel 의 경우
NullPointerException
- SampleModel 또는 DataBuffer 가
null 의 경우public static WritableRaster createWritableRaster(SampleModel sm, Point location)
sm
- 지정된 SampleModel
location
- WritableRaster
의
좌상구석
SampleModel
, 및 위치를 가진다
WritableRaster
RasterFormatException
- location.x + sm.getWidth()
와
location.y + sm.getHeight()
의
몇개의 계산으로 정수형 오버플로우가
발생했을 경우public static WritableRaster createWritableRaster(SampleModel sm, DataBuffer db, Point location)
sm
- 지정된 SampleModel
db
- 지정된 DataBuffer
location
- WritableRaster
의
좌상구석
SampleModel
,
DataBuffer
, 및 위치를 가진다
WritableRaster
RasterFormatException
- location.x + sm.getWidth()
와
location.y + sm.getHeight()
의
몇개의 계산으로 정수형 오버플로우가
발생했을 경우
RasterFormatException
- dataBuffer
가
복수의 뱅크를 가져,sampleModel
가
PixelInterleavedSampleModel, SinglePixelPackedSampleModel,
또는 MultiPixelPackedSampleModel 의 경우
NullPointerException
- SampleModel 또는 DataBuffer 가 null 의 경우public Raster getParent()
null
public final int getSampleModelTranslateX()
public final int getSampleModelTranslateY()
public WritableRaster createCompatibleWritableRaster()
WritableRaster
public WritableRaster createCompatibleWritableRaster(int w, int h)
w
- 새로운 WritableRaster
의 지정된 폭h
- 새로운 WritableRaster
의 지정된 높이
WritableRaster
RasterFormatException
- 폭 또는 높이가
0 이하인 경우public WritableRaster createCompatibleWritableRaster(Rectangle rect)
rect
- WritableRaster
의 사이즈와 위치를 나타낸다
Rectangle
WritableRaster
RasterFormatException
- rect
의 폭 또는 높이가
제로 이하의 경우, 혹은
rect.x + rect.width
와
rect.y + rect.height
의 몇개의 계산으로 정수형 오버플로우가
발생했을 경우
NullPointerException
- rect
가 null 의 경우public WritableRaster createCompatibleWritableRaster(int x, int y, int w, int h)
x
- WritableRaster
의 좌상구석의
X 좌표y
- WritableRaster
의 좌상구석의
Y 좌표w
- WritableRaster
의 지정된 폭h
- WritableRaster
의 지정된 높이
WritableRaster
RasterFormatException
- w
또는 h
가
제로 이하의 경우, 혹은
x + w
와
y + h
의 몇개의 계산으로 정수형 오버플로우가
발생했을 경우public Raster createTranslatedChild(int childMinX, int childMinY)
childMinX
- 새로운 Raster
의 좌상구석의
X 좌표childMinY
- 새로운 Raster
의 좌상구석의
Y 좌표
Raster
와 같은 사이즈, SampleModel,
및 데이터 버퍼를 가져, 지정된 위치를 가진다
새로운 Raster
RasterFormatException
- childMinX + this.getWidth()
와
childMinY + this.getHeight()
의
몇개의 계산으로 정수형 오버플로우가
발생했을 경우public Raster createChild(int parentX, int parentY, int width, int height, int childMinX, int childMinY, int[] bandList)
parentX, parentY, width, height 의 각 파라미터에 의해 이 Raster 의 좌표 공간에 형성되는 Rectangle 가, 공유되는 픽셀 영역을 나타냅니다. 이 Rectangle 가 현재의 Raster 의 경계내에 없는 경우는, 에러가 throw 됩니다.
새로운 Raster 는 게다가 같은 평면상으로 현재의 Raster 가 사용하는 좌표 체계와는 다른 좌표 체계로 변환할 수 있습니다. childMinX 파라미터와 childMinY 파라미터에 의해, 반환된 Raster 의 좌상구석의 픽셀의 새로운 좌표 (x, y)가 지정됩니다. 새로운 Raster 내의 좌표 (childMinX, childMinY)는, 현재의 Raster 내의 좌표 (parentX, parentY)와 같은 픽셀에 맵 됩니다.
bandList 파라미터를 사용해, 새로운 Raster 가 현재의 Raster 의 밴드의 부분집합만을, 경우에 따라서는 순서를 변경해, 포함하도록(듯이) 정의할 수 있습니다. bandList 가 null 의 경우는, 현재의 Raster 의 모든 밴드가 현재와 같은 순서로 포함됩니다.
현재의 Raster 의 부분 영역을 보관 유지하지만, 좌표 체계와 밴드는 현재의 Raster 와 공유하는 새로운 Raster 를 생성하려면 , childMinX 를 parentX 와 같은 값에, childMinY 를 parentY 와 같은 값에, bandList 를 null 에 각각 지정해, 이 메소드를 호출합니다.
parentX
- 이 Raster 의 좌표로
좌상구석의 X 좌표parentY
- 이 Raster 의 좌표로
좌상구석의 Y 좌표width
- (parentX, parentY)로부터 시작되는 영역의 폭height
- (parentX, parentY)로부터 시작되는 영역의 높이childMinX
- 반환되는 Raster 의
좌상구석의 X 좌표childMinY
- 반환되는 Raster 의
좌상구석의 Y 좌표bandList
- 밴드 인덱스의 배열. 모든 밴드를 사용하는 경우는 null
Raster
RasterFormatException
- 지정된 부분 영역이 라스터 경계의
외측에 있는 경우
RasterFormatException
- width
또는
height
가
제로 이하의 경우, 혹은
parentX + width
,parentY + height
,
childMinX + width
,
childMinY + height
의 몇개의 계산으로 정수형 오버플로우가
발생했을 경우public Rectangle getBounds()
Raster
의 바운딩 박스public final int getMinX()
Raster
의 최소 x 좌표public final int getMinY()
Raster
의 최소 y 좌표public final int getWidth()
Raster
의 폭public final int getHeight()
Raster
의 높이public final int getNumBands()
Raster
의 밴드수public final int getNumDataElements()
public final int getTransferType()
public DataBuffer getDataBuffer()
Raster
의 DataBuffer
public SampleModel getSampleModel()
Raster
의 SampleModel
public Object getDataElements(int x, int y, Object outData)
x
- 픽셀 위치의 X 좌표y
- 픽셀 위치의 Y 좌표outData
- getTransferType()에 의해 정의된 형태와
getNumDataElements()에 의해 정의된 길이를 가지는 배열에의 객체 참조.
null 의 경우는, 적절한 형태와 사이즈의 배열이
할당할 수 있다
ArrayIndexOutOfBoundsException
- 좌표가 경계내에
존재하지 않는 경우, 또는 outData 가 너무 작아 출력을 보관 유지할 수 없는 경우SampleModel.getDataElements(int, int, Object, DataBuffer)
public Object getDataElements(int x, int y, int w, int h, Object outData)
x
- 좌상의 픽셀 위치의 X 좌표y
- 좌상의 픽셀 위치의 Y 좌표w
- 픽셀 구형의 폭h
- 픽셀 구형의 높이outData
- getTransferType()에 의해 형태가, w*h*getNumDataElements()에 의해 길이가
정의된 배열에의 객체 참조.
null 의 경우는, 적절한 형태와 사이즈의 배열이
할당할 수 있다
ArrayIndexOutOfBoundsException
- 좌표가 경계내에
존재하지 않는 경우, 또는 outData 가 너무 작아 출력을 보관 유지할 수 없는 경우SampleModel.getDataElements(int, int, int, int, Object, DataBuffer)
public int[] getPixel(int x, int y, int[] iArray)
x
- 픽셀 위치의 X 좌표y
- 픽셀 위치의 Y 좌표iArray
- 필요에 따라서 사전에 할당할 수 있었던 int 배열
ArrayIndexOutOfBoundsException
- 좌표가 경계내에
존재하지 않는 경우, 또는 iArray 가 너무 작아 출력을 보관 유지할 수 없는 경우public float[] getPixel(int x, int y, float[] fArray)
x
- 픽셀 위치의 X 좌표y
- 픽셀 위치의 Y 좌표fArray
- 필요에 따라서 사전에 할당할 수 있었던 float 배열
ArrayIndexOutOfBoundsException
- 좌표가 경계내에
존재하지 않는 경우, 또는 fArray 가 너무 작아 출력을 보관 유지할 수 없는 경우public double[] getPixel(int x, int y, double[] dArray)
x
- 픽셀 위치의 X 좌표y
- 픽셀 위치의 Y 좌표dArray
- 필요에 따라서 사전에 할당할 수 있었던 double 배열
ArrayIndexOutOfBoundsException
- 좌표가 경계내에
존재하지 않는 경우, 또는 dArray 가 너무 작아 출력을 보관 유지할 수 없는 경우public int[] getPixels(int x, int y, int w, int h, int[] iArray)
x
- 좌상의 픽셀 위치의 X 좌표y
- 좌상의 픽셀 위치의 Y 좌표w
- 픽셀 구형의 폭h
- 픽셀 구형의 높이iArray
- 필요에 따라서 사전에 할당할 수 있었던 int 배열
ArrayIndexOutOfBoundsException
- 좌표가 경계내에
존재하지 않는 경우, 또는 iArray 가 너무 작아 출력을 보관 유지할 수 없는 경우public float[] getPixels(int x, int y, int w, int h, float[] fArray)
x
- 픽셀 위치의 X 좌표y
- 픽셀 위치의 Y 좌표w
- 픽셀 구형의 폭h
- 픽셀 구형의 높이fArray
- 필요에 따라서 사전에 할당할 수 있었던 float 배열
ArrayIndexOutOfBoundsException
- 좌표가 경계내에
존재하지 않는 경우, 또는 fArray 가 너무 작아 출력을 보관 유지할 수 없는 경우public double[] getPixels(int x, int y, int w, int h, double[] dArray)
x
- 좌상의 픽셀 위치의 X 좌표y
- 좌상의 픽셀 위치의 Y 좌표w
- 픽셀 구형의 폭h
- 픽셀 구형의 높이dArray
- 필요에 따라서 사전에 할당할 수 있었던 double 배열
ArrayIndexOutOfBoundsException
- 좌표가 경계내에
존재하지 않는 경우, 또는 dArray 가 너무 작아 출력을 보관 유지할 수 없는 경우public int getSample(int x, int y, int b)
x
- 픽셀 위치의 X 좌표y
- 픽셀 위치의 Y 좌표b
- 반환되는 밴드
ArrayIndexOutOfBoundsException
- 좌표 또는 밴드 인덱스가
경계내에 없는 경우public float getSampleFloat(int x, int y, int b)
x
- 픽셀 위치의 X 좌표y
- 픽셀 위치의 Y 좌표b
- 반환되는 밴드
ArrayIndexOutOfBoundsException
- 좌표 또는 밴드 인덱스가
경계내에 없는 경우public double getSampleDouble(int x, int y, int b)
x
- 픽셀 위치의 X 좌표y
- 픽셀 위치의 Y 좌표b
- 반환되는 밴드
ArrayIndexOutOfBoundsException
- 좌표 또는 밴드 인덱스가
경계내에 없는 경우public int[] getSamples(int x, int y, int w, int h, int b, int[] iArray)
x
- 좌상의 픽셀 위치의 X 좌표y
- 좌상의 픽셀 위치의 Y 좌표w
- 픽셀 구형의 폭h
- 픽셀 구형의 높이b
- 반환되는 밴드iArray
- 필요에 따라서 사전에 할당할 수 있었던 int 배열
ArrayIndexOutOfBoundsException
- 좌표 또는 밴드 인덱스가
경계내에 없는 경우, 또는 iArray 가 너무 작아
입력을 보관 유지할 수 없는 경우public float[] getSamples(int x, int y, int w, int h, int b, float[] fArray)
x
- 좌상의 픽셀 위치의 X 좌표y
- 좌상의 픽셀 위치의 Y 좌표w
- 픽셀 구형의 폭h
- 픽셀 구형의 높이b
- 반환되는 밴드fArray
- 필요에 따라서 사전에 할당할 수 있었던 float 배열
ArrayIndexOutOfBoundsException
- 좌표 또는 밴드 인덱스가
경계내에 없는 경우, 또는 fArray 가 너무 작아
입력을 보관 유지할 수 없는 경우public double[] getSamples(int x, int y, int w, int h, int b, double[] dArray)
x
- 좌상의 픽셀 위치의 X 좌표y
- 좌상의 픽셀 위치의 Y 좌표w
- 픽셀 구형의 폭h
- 픽셀 구형의 높이b
- 반환되는 밴드dArray
- 필요에 따라서 사전에 할당할 수 있었던 double 배열
ArrayIndexOutOfBoundsException
- 좌표 또는 밴드 인덱스가
경계내에 없는 경우, 또는 dArray 가 너무 작아
입력을 보관 유지할 수 없는 경우
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.