JavaTM Platform
Standard Ed. 6

java.awt.image
클래스 ColorModel

java.lang.Object 
  상위를 확장 java.awt.image.ColorModel
모든 구현된 인터페이스:
Transparency
직계의 기존의 서브 클래스:
ComponentColorModel , IndexColorModel , PackedColorModel


public abstract class ColorModel
extends Object
implements Transparency

ColorModel abstract 클래스는, 픽셀치를 색성분 (적, 초록, 파랑등) 및 알파 성분으로 변환하는 메소드를 캡슐화합니다. 이미지를 스크린, 프린터, 또는 다른 이미지에 draw 하려면 , 픽셀치를 색성분 및 알파 성분으로 변환할 필요가 있습니다. 이 클래스의 메소드의 인수 또는 반환값으로서 픽셀은 32 비트 int 또는 원시형의 배열로서 나타내집니다. ColorModel 의 색성분의 수, 순서, 및 해석은,ColorSpace 로 지정합니다. 알파 정보를 가지지 않는 픽셀 데이터와 함께 사용되는 ColorModel 는, 모든 픽셀을 불투명 (알파치 1.0)으로서 처리합니다.  

ColorModel 클래스에서는, 픽셀치의 2 개의 표현을 지원합니다. 픽셀치는, 단일의 32 비트 int 또는 원시형의 배열로서 나타낼 수가 있습니다. Java(TM) Platform 1.0 및 1.1 API 에서는, 픽셀은 단일의 byte 치 또는 단일의 int 치로 표현되었습니다. ColorModel 클래스에서는, 픽셀 가격인하수는 int 로서 건네받았습니다. Java(TM) 2 Platform API 에서는, 이미지를 나타내기 위한 새로운 클래스가 도입되었습니다. Raster 클래스 및 SampleModel 클래스에 근거하는 BufferedImage 객체 또는 RenderedImage 객체의 경우, 픽셀치는 단일의 int 로서는 표현할 수 없습니다. 이 때문에, 현재,ColorModel 에는 원시형의 배열로서 표시된 픽셀치를 받아들이는 메소드가 있습니다. 특정의 ColorModel 객체에 의해 사용되는 원시형은, 전송형으로 불립니다.  

픽셀치를 단일의 int 로서 표현할 수 없는 이미지와 함께 사용되는 ColorModel 객체는, 단일의 int 픽셀 인수를 취하는 메소드가 불려 가면(자) IllegalArgumentException 를 throw 합니다. ColorModel 의 서브 클래스에서는, 이 예외가 발생하는 조건을 지정할 필요가 있습니다. DirectColorModel 객체나 IndexColorModel 객체에서는, 이 예외는 발생하지 않습니다.  

현재 Java 2D(TM) API 로 지원되고 있는 전송형은, DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, DataBuffer.TYPE_INT, DataBuffer.TYPE_SHORT, DataBuffer.TYPE_FLOAT, 및 DataBuffer.TYPE_DOUBLE 입니다. 전송형의 처음의 3 개에 근거하는 ColorModel 와 이미지를 사용하면(자), 대부분의 draw 조작이 보다 빠르게 실행됩니다. 또, 나머지의 3 개의 전송형에 근거하는 ColorModel 와 이미지에 대해서는, 이미지의 필터 조작 가운데 몇개인가가 지원되고 있지 않습니다. 특정의 ColorModel 객체의 전송형은, 객체가 생성될 때 명시적으로 또는 디폴트로 지정됩니다. ColorModel 의 각 서브 클래스에서는, 이용 가능한 전송형이 언젠가, 및 픽셀을 나타내는 프리미티브(primitive) 배열의 요소수를 어떻게 결정할 수 있는지를 지정할 필요가 있습니다.  

BufferedImage 의 경우,RasterRaster 객체의 SampleModel 의 전송형 (그러한 클래스의 getTransferType 메소드를 개입시켜 취득할 수 있다)은,ColorModel 의 전송형과 일치할 필요가 있습니다. RasterSampleModel 의 픽셀을 나타내는 배열의 요소수 (그러한 클래스의 getNumDataElements 메소드를 개입시켜 취득할 수 있다)는,ColorModel 와 일치할 필요가 있습니다.  

픽셀치로부터 색성분 및 알파 성분에의 변환에 사용하는 알고리즘은, 서브 클래스에 의해 다릅니다. 예를 들어,BufferedImage 객체의 RasterSampleModel 에 의해 얻을 수 있는 샘플과 색성분 및 알파 성분의 사이는 1 대 1 으로 대응하고 있지 않아도 괜찮습니다. 1 대 1 의 대응이 있는 경우에서도, 샘플의 비트수는, 대응하는 색성분 및 알파 성분의 비트수와 같지 않아도 괜찮습니다. 각 서브 클래스에서는, 픽셀치로부터 색성분 및 알파 성분에의 변환이 어떻게 행해지는지를 지정할 필요가 있습니다.  

ColorModel 클래스의 메소드는, 색성분 및 알파 성분의 2 개가 다른 표현인 표준화 형식과 비표준화 형식을 사용합니다. 표준화 형식에서는, 각 성분은 최소치와 최대치의 사이의 float 치입니다. 알파 성분에서는, 최소치는 0.0, 최대치는 1.0 입니다. 색성분에서는, 각 성분의 최소치와 최대치는 ColorSpace 객체로부터 취득할 수 있어 값은 일반적으로 0.0 으로 1.0 (디폴트의 sRGB 칼라 영역에 있는 표준화 성분의 값의 범위는 0.0 ~ 1.0, 등)입니다만, 이것과 다른 상한과 하한의 성분치를 가지는 칼라 영역도 있습니다. 이러한 한계치는 ColorSpace 클래스의 getMinValue 메소드 및 getMaxValue 메소드를 사용해 취득할 수 있습니다. 표준화색성분치는 미리 곱셈되지 않습니다. 모든 ColorModels 는 표준화 형식을 지원할 필요가 있습니다.  

비표준화 형식에서는, 각 성분은 0 으로 2n - 1 의 사이의 부호 없음 정수치입니다. n 는, 특정의 성분의 유효 비트의 수입니다. 특정의 ColorModel 의 픽셀치가 알파 샘플로 미리 곱셈되고 있는 칼라 샘플을 나타내는 경우, 비표준화색성분도 똑같이 미리 곱셈됩니다. 비표준화 형식은,ColorSpace 가 모든 성분에 대해서 최소 성분치가 0.0, 최대 성분치가 1.0 인 ColorModel 의 인스턴스만과 함께 사용됩니다. 비표준화 형식의 색성분과 알파 성분은, 표준화 성분치가 모두 0.0 으로 1.0 의 사이에 있는 ColorModels 를 나타낼 수가 있습니다. 이러한 경우, 정수치 0 은 0.0 에 맵 되어 값 2n -1 는 1.0 에 맵 됩니다. 이외의, 예를 들어 표준화 성분치가 정 또는 부의 경우는, 비표준화 형식은 적절하지는 않습니다. 이러한 ColorModel 객체는, 비표준화 인수를 포함한 메소드가 불려 가면(자) IllegalArgumentException 를 throw 합니다. ColorModel 의 서브 클래스에서는, 이 예외가 발생하는 조건을 지정할 필요가 있습니다.

관련 항목:
IndexColorModel , ComponentColorModel , PackedColorModel , DirectColorModel , Image , BufferedImage , RenderedImage , ColorSpace , SampleModel , Raster , DataBuffer

필드의 개요
protected  int pixel_bits
          픽셀의 총비트수입니다.
protected  int transferType
          픽셀치의 표현에 사용되는 배열의 데이터형입니다.
 
인터페이스 java.awt. Transparency 로부터 상속된 필드
BITMASK , OPAQUE , TRANSLUCENT
 
생성자 의 개요
  ColorModel (int bits)
          지정된 비트수의 픽셀을 색성분 및 알파 성분으로 변환하는 ColorModel 를 구축합니다.
protected ColorModel (int pixel_bits, int[] bits, ColorSpace  cspace, boolean hasAlpha, boolean isAlphaPremultiplied, int transparency, int transferType)
          픽셀치를 색성분 및 알파 성분으로 변환하는 ColorModel 를 구축합니다.
 
메소드의 개요
 ColorModel coerceData (WritableRaster  raster, boolean isAlphaPremultiplied)
          라스터 데이터가 isAlphaPremultiplied 변수로 지정된 상태와 일치하도록(듯이) 합니다.
 SampleModel createCompatibleSampleModel (int w, int h)
          이 ColorModel 와 호환성이 있는 데이터 레이아웃을 가지는, 지정된 폭과 높이의 SampleModel 를 작성합니다.
 WritableRaster createCompatibleWritableRaster (int w, int h)
          이 ColorModel 와 호환성이 있는 데이터 레이아웃 (SampleModel)을 가지는, 지정된 폭과 높이의 WritableRaster 를 생성합니다.
 boolean equals (Object  obj)
          지정된 ObjectColorModel 의 인스턴스이며, 이 ColorModel 와 동일한지 어떤지를 판정합니다.
 void finalize ()
          이 ColorModel 가 참조되지 않게 되었을 때에, 관련한 system resource를 파기합니다.
abstract  int getAlpha (int pixel)
          지정된 픽셀의 알파 성분을, 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다.
 int getAlpha (Object  inData)
          지정된 픽셀의 알파 성분을 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다.
 WritableRaster getAlphaRaster (WritableRaster  raster)
          이 ColorModel 의 픽셀치가 다른 공간 밴드로서 색정보 및 알파 정보를 나타내는 경우 (ComponentColorModelDirectColorModel 등)에, 입력 Raster 로부터 추출된, 이미지의 알파 채널을 나타내는 Raster 를 돌려줍니다.
abstract  int getBlue (int pixel)
          지정된 픽셀의 파랑의 색성분을, 디폴트의 RGB ColorSpace, 즉 sRGB 의 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다.
 int getBlue (Object  inData)
          지정된 픽셀의 청색 성분을 디폴트 RGB ColorSpace (sRGB)의 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다.
 ColorSpace getColorSpace ()
          이 ColorModel 에 관련한 ColorSpace 를 돌려줍니다.
 int[] getComponents (int pixel, int[] components, int offset)
          이 ColorModel 로 픽셀을 지정해, 표준화되어 있지 않은 색성분과 알파 성분의 배열을 돌려줍니다.
 int[] getComponents (Object  pixel, int[] components, int offset)
          이 ColorModel 로 픽셀을 지정해, 표준화되어 있지 않은 색성분과 알파 성분의 배열을 돌려줍니다.
 int[] getComponentSize ()
          색성분 및 알파 성분마다의 비트수의 배열을 돌려줍니다.
 int getComponentSize (int componentIdx)
          지정된 색성분 및 알파 성분의 비트수를 돌려줍니다.
 int getDataElement (float[] normComponents, int normOffset)
          표준화되어 있지 않은 색성분 및 알파 성분의 배열을 지정해, 이 ColorModelint 로서 나타내지는 픽셀치를 돌려줍니다.
 int getDataElement (int[] components, int offset)
          표준화되어 있지 않은 색성분과 알파 성분의 배열을 지정해, 이 ColorModel int 로서 표현되는 픽셀치를 돌려줍니다.
 Object getDataElements (float[] normComponents, int normOffset, Object  obj)
          표준화색성분 및 알파 성분의 배열을 지정해, 이 ColorModel 의 픽셀의 데이터 요소 배열 표현을 돌려줍니다.
 Object getDataElements (int[] components, int offset, Object  obj)
          표준화되어 있지 않은 색성분 및 알파 성분의 배열을 지정해, 이 ColorModel 의 픽셀의 데이터 요소 배열 표현을 돌려줍니다.
 Object getDataElements (int rgb, Object  pixel)
          디폴트 RGB 칼라 모델의 정수형 픽셀 표현을 지정해, 이 ColorModel 의 픽셀의 데이터 요소 배열 표현을 돌려줍니다.
abstract  int getGreen (int pixel)
          지정된 픽셀의 초록의 색성분을, 디폴트의 RGB ColorSpace, 즉 sRGB 의 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다.
 int getGreen (Object  inData)
          지정된 픽셀의 녹색 성분을 디폴트 RGB ColorSpace (sRGB)의 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다.
 float[] getNormalizedComponents (int[] components, int offset, float[] normComponents, int normOffset)
          표준화 성분 배열을 지정해, 비표준화 형식에서 모든 색성분 및 알파 성분의 배열을 돌려줍니다.
 float[] getNormalizedComponents (Object  pixel, float[] normComponents, int normOffset)
          이 ColorModel 의 지정된 픽셀에 대해, 표준화 형식에서 색성분과 알파 성분의 배열을 돌려줍니다.
 int getNumColorComponents ()
          이 ColorModel 의 색성분수를 돌려줍니다.
 int getNumComponents ()
          이 ColorModel 의 성분 (알파를 포함한다)의 수를 돌려줍니다.
 int getPixelSize ()
          이 ColorModel 에 의해 기술되는 픽셀마다의 비트수를 돌려줍니다.
abstract  int getRed (int pixel)
          지정된 픽셀의 빨강의 색성분을, 디폴트의 RGB ColorSpace, 즉 sRGB 의 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다.
 int getRed (Object  inData)
          지정된 픽셀의 적색 성분을 디폴트 RGB ColorSpace (sRGB)의 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다.
 int getRGB (int pixel)
          픽셀의 색성분과 알파 성분을, 디폴트의 RGB 칼라 모델 형식에서 돌려줍니다.
 int getRGB (Object  inData)
          지정된 픽셀의 색성분 및 알파 성분을 디폴트 RGB 칼라 모델 형식에서 돌려줍니다.
static ColorModel getRGBdefault ()
          프로그래머를 위해서(때문에), AWT 이미지 인터페이스가 많은 메소드로 사용되는 정수형 RGB 치의 디폴트 형식을 기술하는 DirectColorModel 를 돌려줍니다.
 int getTransferType ()
          이 ColorModel 의 전송형을 돌려줍니다.
 int getTransparency ()
          투명도를 돌려줍니다.
 int[] getUnnormalizedComponents (float[] normComponents, int normOffset, int[] components, int offset)
          표준화 성분 배열을 지정해, 비표준화 형식에서 모든 색성분 및 알파 성분의 배열을 돌려줍니다.
 boolean hasAlpha ()
          알파가 이 ColorModel 로 지원되고 있는지 어떤지를 돌려줍니다.
 int hashCode ()
          이 ColorModel 의 해시 코드를 돌려줍니다.
 boolean isAlphaPremultiplied ()
          이 ColorModel 로 변환되는 픽셀치로 알파가 미리 곱셈되고 있는지 어떤지를 돌려줍니다.
 boolean isCompatibleRaster (Raster  raster)
          raster 가 이 ColorModel 와 호환성이 있는 경우에는 true 를 돌려주어, 그렇지 않은 경우에는 false 를 돌려줍니다.
 boolean isCompatibleSampleModel (SampleModel  sm)
          SampleModel 가 이 ColorModel 와 호환성이 있을지 어떨지를 판정합니다.
 String toString ()
          이 ColorModel 객체의 내용을 나타내는 String 를 돌려줍니다.
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , getClass , notify , notifyAll , wait , wait , wait
 

필드의 상세

pixel_bits

protected int pixel_bits
픽셀의 총비트수입니다.


transferType

protected int transferType
픽셀치의 표현에 사용되는 배열의 데이터형입니다.

생성자 의 상세

ColorModel

public ColorModel(int bits)
지정된 비트수의 픽셀을 색성분 및 알파 성분으로 변환하는 ColorModel 를 구축합니다. 칼라 스페이스는 디폴트의 RGB ColorSpace (sRGB)입니다. 픽셀치에는, 알파 정보가 포함되어 있다고 보여집니다. 색 및 알파의 정보가 다른 공간 밴드로서 픽셀치로 나타내지는 경우, 칼라 밴드에는 알파치가 미리 곱셈되고 있지 않습니다. 투명도형은, java.awt.Transparency.TRANSLUCENT 입니다. 전송형은, 단일 픽셀을 보관 유지할 수가 있는 DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, 또는 DataBuffer.TYPE_INT 의 최소치입니다 (비트가 32 보다 큰 경우는 DataBuffer.TYPE_UNDEFINED). 이 생성자 은 색성분 및 알파 성분마다의 비트수에 관한 정보를 가지지 않기 때문에, 이 생성자 을 호출하는 서브 클래스는, 이 정보를 필요로 하는 메소드를 오버라이드(override) 합니다.

파라미터:
bits - 픽셀의 비트수
예외:
IllegalArgumentException - bits 의 비트수가 1 보다 작은 경우

ColorModel

protected ColorModel(int pixel_bits,
                     int[] bits,
                     ColorSpace  cspace,
                     boolean hasAlpha,
                     boolean isAlphaPremultiplied,
                     int transparency,
                     int transferType)
픽셀치를 색성분 및 알파 성분으로 변환하는 ColorModel 를 구축합니다. 색성분은, 지정된 ColorSpace 에 있습니다. pixel_bits 는, 픽셀치의 비트수입니다. bits 배열은, 색성분 및 알파 성분마다의 유효 비트수를 지정합니다. 그 길이는, 픽셀치에 알파 정보가 없는 경우에는 ColorSpace 의 성분수, 알파 정보가 있는 경우에는 이 숫자에 1 을 가산합니다. hasAlpha 는, 알파 정보가 존재할지 어떨지를 나타냅니다. boolean 형의 isAlphaPremultiplied 는, 색정보 및 알파 정보가 다른 공간 밴드로서 나타내지는 픽셀치를 해석하는 방법을 지정합니다. boolean 형이 true 의 경우, 칼라 샘플은 알파 샘플로 곱셈된 것이라고 보여집니다. transparency 는, 이 칼라 모델로 표현할 수 있는 알파치를 지정합니다. 전송 타입은, 픽셀치를 표현하기 위해서 사용하는 프리미티브(primitive) 배열의 형태입니다. 비트 배열은, 픽셀치로부터의 변환 후의 색성분 및 알파 성분마다의 유효 비트수를 포함합니다. 예를 들어,pixel_bits 가 16 의 IndexColorModel 의 경우, 비트 배열은 각 요소가 8 으로 설정되어 있는 4 개의 요소를 가집니다.

파라미터:
pixel_bits - 픽셀치의 비트수
bits - 색성분 및 알파 성분마다의 유효 비트수를 지정하는 배열
cspace - 지정된 ColorSpace
hasAlpha - 알파 정보가 존재하는 경우는 true, 그렇지 않은 경우는 false
isAlphaPremultiplied - 칼라 샘플이 알파 샘플에 의해 미리 곱셈되고 있다고 보여지는 경우는 true, 그렇지 않은 경우는 false
transparency - 이 칼라 모델로 나타낼 수가 있다 알파치
transferType - 픽셀치의 표현에 사용되는 배열의 형
예외:
IllegalArgumentException - 비트 배열의 길이가 이 ColorModel 의 색성분 또는 알파 성분의 수보다 작은 경우, 또는 투명도가 유효한 값이 아닌 경우
IllegalArgumentException - bits 의 비트수의 합계가 1 보다 작은 경우, 또는 bits 의 요소가 0 보다 작은 경우
관련 항목:
Transparency
메소드의 상세

getRGBdefault

public static ColorModel  getRGBdefault()
프로그래머를 위해서(때문에), AWT 이미지 인터페이스가 많은 메소드로 사용되는 정수형 RGB 치의 디폴트 형식을 기술하는 DirectColorModel 를 돌려줍니다. 칼라 스페이스는, 디폴트 ColorSpace (sRGB)입니다. RGB 치의 형식은, 0xAARRGGBB 와 같이, 최상정도 바이트로부터 최하정도 바이트까지, 알파, 적, 록, 및 파랑의 각 성분을 이 순서에 늘어놓은, 각각 8 비트의 정수입니다. 색성분은, 알파 성분에 의해 미리 곱셈되지 않습니다. 이 형식은, 특정의 디바이스 또는 모든 이미지의 네이티브 또는 가장 효율적인 ColorModel 를 반드시 나타내지 않습니다. 공통의 칼라 모델 형식으로서 사용됩니다.

반환값:
디폴트의 RGB 치를 나타내는 DirectColorModel 객체

hasAlpha

public final boolean hasAlpha()
알파가 이 ColorModel 로 지원되고 있는지 어떤지를 돌려줍니다.

반환값:
ColorModel 로 알파가 지원되고 있는 경우는 true, 그렇지 않은 경우는 false

isAlphaPremultiplied

public final boolean isAlphaPremultiplied()
ColorModel 로 변환되는 픽셀치로 알파가 미리 곱셈되고 있는지 어떤지를 돌려줍니다. boolean 가 true 의 경우, 이 ColorModel 는 색정보 및 알파 정보가 다른 공간 밴드로서 나타내지는 픽셀치를 해석하기 위해서 사용되어 칼라 샘플은 알파 샘플에 의해 곱셈되었다고 보여집니다.

반환값:
ColorModel 로 변환되는 픽셀치로 알파치가 미리 곱셈되고 있는 경우는 true, 그렇지 않은 경우는 false

getTransferType

public final int getTransferType()
ColorModel 의 전송형을 돌려줍니다. 전송형은, 픽셀치를 배열로서 나타내는데 사용되는 프리미티브(primitive) 배열의 형태입니다.

반환값:
전송형
도입된 버젼:
1.3

getPixelSize

public int getPixelSize()
ColorModel 에 의해 기술되는 픽셀마다의 비트수를 돌려줍니다.

반환값:
픽셀마다의 비트수

getComponentSize

public int getComponentSize(int componentIdx)
지정된 색성분 및 알파 성분의 비트수를 돌려줍니다. 색성분은,ColorSpace 로 지정된 순서로 인덱스를 붙일 수 있습니다. 일반적으로, 이 순서는 칼라 스페이스의 형태의 이름을 반영합니다. 예를 들어, TYPE_RGB 의 경우, 인덱스 0 은 빨강, 인덱스 1 은 초록, 인덱스 2 는 파랑에 대응합니다. 이 ColorModel 가 알파를 지원하는 경우, 알파 성분은 마지막에 지정된 색성분의 뒤의 인덱스에 대응합니다.

파라미터:
componentIdx - 색성분 및 알파 성분의 인덱스
반환값:
지정된 인덱스에 있는 색성분 및 알파 성분의 비트수
예외:
ArrayIndexOutOfBoundsException - componentIdx 가 성분의 수보다 큰지, 0 보다 작은 경우
NullPointerException - 비트 배열의 수가 null 의 경우

getComponentSize

public int[] getComponentSize()
색성분 및 알파 성분마다의 비트수의 배열을 돌려줍니다. 이 배열은,ColorSpace 로 지정된 순서로 색성분을 포함해, 알파 성분이 있는 경우는, 다음에 알파 성분이 계속됩니다.

반환값:
색성분 및 알파 성분마다의 비트수의 배열

getTransparency

public int getTransparency()
투명도를 돌려줍니다. OPAQUE, BITMASK, TRANSLUCENT 의 어느쪽이든을 돌려줍니다.

정의:
인터페이스 Transparency 내의 getTransparency
반환값:
ColorModel 의 투명도
관련 항목:
Transparency.OPAQUE , Transparency.BITMASK , Transparency.TRANSLUCENT

getNumComponents

public int getNumComponents()
ColorModel 의 성분 (알파를 포함한다)의 수를 돌려줍니다. 이것은, 색성분의 수 (알파 성분이 있는 경우는 1 을 가산)로 동일해집니다.

반환값:
ColorModel 의 성분수

getNumColorComponents

public int getNumColorComponents()
ColorModel 의 색성분수를 돌려줍니다. 이것은,ColorSpace.getNumComponents() 에 의해 반환된 성분수입니다.

반환값:
ColorModel 의 색성분수
관련 항목:
ColorSpace.getNumComponents()

getRed

public abstract int getRed(int pixel)
지정된 픽셀의 빨강의 색성분을, 디폴트의 RGB ColorSpace, 즉 sRGB 의 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다. 필요한 경우, 색변환을 합니다. 픽셀치는 int 로서 지정됩니다. 이 ColorModel 의 픽셀치가 단일의 int 로서 표현할 수 없는 경우는 IllegalArgumentException 가 throw 됩니다. 반환값은 미리 곱셈되어 있지 않은 값이 됩니다. 예를 들어, 알파가 미리 곱셈되고 있는 경우, 이 메소드는 값을 돌려주기 전에 그것을 제산합니다. 알파치가 0 의 경우, 빨강의 값은 0 이 됩니다.

파라미터:
pixel - 지정된 픽셀
반환값:
지정된 픽셀의 적색 성분의 값

getGreen

public abstract int getGreen(int pixel)
지정된 픽셀의 초록의 색성분을, 디폴트의 RGB ColorSpace, 즉 sRGB 의 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다. 필요한 경우, 색변환을 합니다. 픽셀치는 int 로서 지정됩니다. 이 ColorModel 의 픽셀치가 단일의 int 로서 표현할 수 없는 경우는 IllegalArgumentException 가 throw 됩니다. 반환값은, 미리 곱셈되어 있지 않은 값이 됩니다. 예를 들어, 알파가 미리 곱셈되고 있는 경우, 이 메소드는 값을 돌려주기 전에 그것을 제산합니다. 알파치가 0 의 경우, 초록의 값은 0 이 됩니다.

파라미터:
pixel - 지정된 픽셀
반환값:
지정된 픽셀의 녹색 성분의 값

getBlue

public abstract int getBlue(int pixel)
지정된 픽셀의 파랑의 색성분을, 디폴트의 RGB ColorSpace, 즉 sRGB 의 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다. 필요한 경우, 색변환을 합니다. 픽셀치는 int 로서 지정됩니다. 이 ColorModel 의 픽셀치가 단일의 int 로서 표현할 수 없는 경우는 IllegalArgumentException 가 throw 됩니다. 반환값은, 미리 곱셈되어 있지 않은 값이 됩니다. 예를 들어, 알파가 미리 곱셈되고 있는 경우, 이 메소드는 값을 돌려주기 전에 그것을 제산합니다. 알파치가 0 의 경우, 파랑의 값은 0 이 됩니다.

파라미터:
pixel - 지정된 픽셀
반환값:
지정된 픽셀의 청색 성분의 값

getAlpha

public abstract int getAlpha(int pixel)
지정된 픽셀의 알파 성분을, 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다. 픽셀치는 int 로서 지정됩니다. 이 ColorModel 의 픽셀치가 단일의 int 로서 표현할 수 없는 경우는 IllegalArgumentException 가 throw 됩니다.

파라미터:
pixel - 지정된 픽셀
반환값:
지정된 픽셀의 알파 성분의 값

getRGB

public int getRGB(int pixel)
픽셀의 색성분과 알파 성분을, 디폴트의 RGB 칼라 모델 형식에서 돌려줍니다. 필요한 경우, 색변환을 합니다. 픽셀치는 int 로서 지정됩니다. 이 ColorModel 의 픽셀치가 단일의 int 로서 표현할 수 없는 경우는 IllegalArgumentException 가 throw 됩니다. 반환값은, 미리 곱셈되어 있지 않은 형식이 됩니다. 예를 들어, 알파가 미리 곱셈되고 있는 경우, 이 메소드는 그것을 색성분으로 제산합니다. 알파치가 0 의 경우, 색의 값은 0 이 됩니다.

파라미터:
pixel - 지정된 픽셀
반환값:
지정된 픽셀의 색성분 및 알파 성분의 RGB 치
관련 항목:
getRGBdefault()

getRed

public int getRed(Object  inData)
지정된 픽셀의 적색 성분을 디폴트 RGB ColorSpace (sRGB)의 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다. 필요한 경우, 색변환을 합니다. 픽셀치는, 객체 참조로서 건네받는 transferType 형의 데이터 요소의 배열에 의해 지정됩니다. 반환값은, 미리 곱셈되어 있지 않은 값이 됩니다. 예를 들어, 알파가 미리 곱셈되고 있는 경우, 이 메소드는 값을 돌려주기 전에 그것을 제산합니다. 알파치가 0 의 경우, 빨강의 값은 0 이 됩니다. inData 가 transferType 형의 프리미티브(primitive) 배열이 아닌 경우는,ClassCastException 가 throw 됩니다. inData 의 크기가 이 ColorModel 의 픽셀치를 보관 유지하는데 충분하지 않은 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. 이 transferType 가 지원되어 있지 않은 경우는,UnsupportedOperationException 가 throw 됩니다. ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 아니면 안됩니다. 서브 클래스는 이 메소드의 구현을 상속합니다. 서브 클래스가 그 구현을 오버라이드(override) 하지 않는 경우, 서브 클래스가 DataBuffer.TYPE_BYTE,DataBuffer.TYPE_USHORT, 또는 DataBuffer.TYPE_INT 이외의 transferType 를 사용하면(자), 이 메소드는 예외를 throw 합니다.

파라미터:
inData - 픽셀치의 배열
반환값:
지정된 픽셀의 적색 성분의 값
예외:
ClassCastException - inDatatransferType 형의 프리미티브(primitive) 배열이 아닌 경우
ArrayIndexOutOfBoundsException - inData 가 이 ColorModel 의 픽셀치를 보관 유지하는데 충분한 크기가 아닌 경우
UnsupportedOperationException - 이 tranferType이 ColorModel 로 지원되어 있지 않은 경우

getGreen

public int getGreen(Object  inData)
지정된 픽셀의 녹색 성분을 디폴트 RGB ColorSpace (sRGB)의 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다. 필요한 경우, 색변환을 합니다. 픽셀치는, 객체 참조로서 건네받는 transferType 형의 데이터 요소의 배열에 의해 지정됩니다. 반환값은, 미리 곱셈되어 있지 않은 값입니다. 예를 들어, 알파가 미리 곱셈되고 있는 경우, 이 메소드는 값을 돌려주기 전에 그것을 제산합니다. 알파치가 0 의 경우, 초록의 값은 0 이 됩니다. inData 가 transferType 형의 프리미티브(primitive) 배열이 아닌 경우는,ClassCastException 가 throw 됩니다. inData 의 크기가 이 ColorModel 의 픽셀치를 보관 유지하는데 충분하지 않은 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. 이 transferType 가 지원되어 있지 않은 경우는,UnsupportedOperationException 가 throw 됩니다. ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 아니면 안됩니다. 서브 클래스는 이 메소드의 구현을 상속합니다. 서브 클래스가 그 구현을 오버라이드(override) 하지 않는 경우, 서브 클래스가 DataBuffer.TYPE_BYTE,DataBuffer.TYPE_USHORT, 또는 DataBuffer.TYPE_INT 이외의 transferType 를 사용하면(자), 이 메소드는 예외를 throw 합니다.

파라미터:
inData - 픽셀치의 배열
반환값:
지정된 픽셀의 녹색 성분의 값
예외:
ClassCastException - inDatatransferType 형의 프리미티브(primitive) 배열이 아닌 경우
ArrayIndexOutOfBoundsException - inData 가 이 ColorModel 의 픽셀치를 보관 유지하는데 충분한 크기가 아닌 경우
UnsupportedOperationException - 이 tranferType이 ColorModel 로 지원되어 있지 않은 경우

getBlue

public int getBlue(Object  inData)
지정된 픽셀의 청색 성분을 디폴트 RGB ColorSpace (sRGB)의 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다. 필요한 경우, 색변환을 합니다. 픽셀치는, 객체 참조로서 건네받는 transferType 형의 데이터 요소의 배열에 의해 지정됩니다. 반환값은, 미리 곱셈되어 있지 않은 값이 됩니다. 예를 들어, 알파가 미리 곱셈되고 있는 경우, 이 메소드는 값을 돌려주기 전에 그것을 제산합니다. 알파치가 0 의 경우, 파랑의 값은 0 이 됩니다. inData 가 transferType 형의 프리미티브(primitive) 배열이 아닌 경우는,ClassCastException 가 throw 됩니다. inData 의 크기가 이 ColorModel 의 픽셀치를 보관 유지하는데 충분하지 않은 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. 이 transferType 가 지원되어 있지 않은 경우는,UnsupportedOperationException 가 throw 됩니다. ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 아니면 안됩니다. 서브 클래스는 이 메소드의 구현을 상속합니다. 서브 클래스가 그 구현을 오버라이드(override) 하지 않는 경우, 서브 클래스가 DataBuffer.TYPE_BYTE,DataBuffer.TYPE_USHORT, 또는 DataBuffer.TYPE_INT 이외의 transferType 를 사용하면(자), 이 메소드는 예외를 throw 합니다.

파라미터:
inData - 픽셀치의 배열
반환값:
지정된 픽셀의 청색 성분의 값
예외:
ClassCastException - inDatatransferType 형의 프리미티브(primitive) 배열이 아닌 경우
ArrayIndexOutOfBoundsException - inData 가 이 ColorModel 의 픽셀치를 보관 유지하는데 충분한 크기가 아닌 경우
UnsupportedOperationException - 이 tranferType이 ColorModel 로 지원되어 있지 않은 경우

getAlpha

public int getAlpha(Object  inData)
지정된 픽셀의 알파 성분을 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다. 픽셀치는, 객체 참조로서 건네받은 transferType 형의 데이터 요소의 배열로 지정됩니다. inData 가 transferType 형의 프리미티브(primitive) 배열이 아닌 경우는,ClassCastException 가 throw 됩니다. inData 의 크기가 이 ColorModel 의 픽셀치를 보관 유지하는데 충분하지 않은 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. 이 transferType 가 지원되어 있지 않은 경우는,UnsupportedOperationException 가 throw 됩니다. ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 아니면 안됩니다. 서브 클래스는 이 메소드의 구현을 상속합니다. 서브 클래스가 그 구현을 오버라이드(override) 하지 않는 경우, 서브 클래스가 DataBuffer.TYPE_BYTE,DataBuffer.TYPE_USHORT, 또는 DataBuffer.TYPE_INT 이외의 transferType 를 사용하면(자), 이 메소드는 예외를 throw 합니다.

파라미터:
inData - 지정된 픽셀
반환값:
0 ~ 255 의 범위에서 슬캘링 된, 지정된 픽셀의 알파 성분
예외:
ClassCastException - inDatatransferType 형의 프리미티브(primitive) 배열이 아닌 경우
ArrayIndexOutOfBoundsException - inData 가 이 ColorModel 의 픽셀치를 보관 유지하는데 충분한 크기가 아닌 경우
UnsupportedOperationException - 이 tranferType이 ColorModel 로 지원되어 있지 않은 경우

getRGB

public int getRGB(Object  inData)
지정된 픽셀의 색성분 및 알파 성분을 디폴트 RGB 칼라 모델 형식에서 돌려줍니다. 필요한 경우, 색변환을 합니다. 픽셀치는, 객체 참조로서 건네받는 transferType 형의 데이터 요소의 배열에 의해 지정됩니다. inData 가 transferType 형의 프리미티브(primitive) 배열이 아닌 경우는,ClassCastException 가 throw 됩니다. inData 의 크기가 이 ColorModel 의 픽셀치를 보관 유지하는데 충분하지 않은 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. 반환값은, 미리 곱셈되어 있지 않은 값입니다. 즉, 알파가 미리 곱셈되고 있는 경우, 이 메소드는 색성분으로 그것을 제산합니다. 알파치가 0 의 경우, 색의 값은 0 이 됩니다.

파라미터:
inData - 지정된 픽셀
반환값:
지정된 픽셀의 색성분 및 알파 성분
관련 항목:
getRGBdefault()

getDataElements

public Object  getDataElements(int rgb,
                              Object  pixel)
디폴트 RGB 칼라 모델의 정수형 픽셀 표현을 지정해, 이 ColorModel 의 픽셀의 데이터 요소 배열 표현을 돌려줍니다. 이 배열은,WritableRaster 객체의 WritableRaster.setDataElements(int, int, java.lang.Object) 메소드에 건네줄 수가 있습니다. pixel 변수가 null 의 경우는, 새로운 배열을 할당할 수 있습니다. pixelnull 가 아닌 경우는,transferType 형의 프리미티브(primitive) 배열일 필요가 있습니다. 그렇지 않은 경우는,ClassCastException 가 throw 됩니다. pixel 가 이 ColorModel 의 픽셀치를 포함할 수 있을 만큼 크지 않은 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. 픽셀 배열이 돌려주어집니다. 이 transferType 가 지원되어 있지 않은 경우는,UnsupportedOperationException 가 throw 됩니다. ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 됩니다. 이 abstract 클래스의 구현은 UnsupportedOperationException 를 throw 하므로, 서브 클래스는 이 메소드를 오버라이드(override) 할 필요가 있습니다.

파라미터:
rgb - 디폴트 RGB 칼라 모델의 정수형 픽셀 표현
pixel - 지정된 픽셀
반환값:
ColorModel 의 지정된 픽셀의 배열 표현
예외:
ClassCastException - pixeltransferType 형의 프리미티브(primitive) 배열이 아닌 경우
ArrayIndexOutOfBoundsException - pixel 가 이 ColorModel 의 픽셀치를 보관 유지하는데 충분한 크기가 아닌 경우
UnsupportedOperationException - 이 ColorModel 로 이 메소드가 지원되어 있지 않은 경우
관련 항목:
WritableRaster.setDataElements(int, int, java.lang.Object) , SampleModel.setDataElements(int, int, java.lang.Object, java.awt.image.DataBuffer)

getComponents

public int[] getComponents(int pixel,
                           int[] components,
                           int offset)
ColorModel 로 픽셀을 지정해, 표준화되어 있지 않은 색성분과 알파 성분의 배열을 돌려줍니다. 픽셀치는 int 로서 지정됩니다. 이 ColorModel 의 픽셀치가 단일의 int 로서 표현할 수 없는 경우, 또는 이 ColorModel 의 색성분치가 비표준화 형식에서 표현할 수 없는 경우는,IllegalArgumentException 가 throw 됩니다. 예를 들어, 이 메소드는,DirectColorModel 의 특정의 픽셀치의 성분을 꺼내기 위해서(때문에) 사용할 수 있습니다. components 배열이 null 의 경우는, 새로운 배열을 할당할 수 있습니다. components 배열이 돌려주어집니다. 색성분 및 알파 성분은,offset 를 기점으로 components 배열에 포함됩니다. 배열이 이 메소드로 할당할 수 있고 있는 경우도 같습니다. components 배열이 null 가 아닌 경우에, (offset 를 기점으로) 모든 색성분 및 알파 성분을 보관 유지하는데 충분한 크기가 아닐 때는,ArrayIndexOutOfBoundsException 가 throw 됩니다. ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 됩니다. 이 abstract 클래스의 구현은 UnsupportedOperationException 를 throw 하므로, 서브 클래스는 이 메소드를 오버라이드(override) 할 필요가 있습니다.

파라미터:
pixel - 지정된 픽셀
components - 지정된 픽셀의 색성분 및 알파 성분을 받는 배열
offset - 색성분 및 알파 성분의 포함을 개시하는, components 배열에의 오프셋(offset)
반환값:
지정된 오프셋(offset) 이후에, 지정된 픽셀의 색성분 및 알파 성분이 포함되고 있는 배열
예외:
UnsupportedOperationException - 이 ColorModel 로 이 메소드가 지원되어 있지 않은 경우

getComponents

public int[] getComponents(Object  pixel,
                           int[] components,
                           int offset)
ColorModel 로 픽셀을 지정해, 표준화되어 있지 않은 색성분과 알파 성분의 배열을 돌려줍니다. 픽셀치는, 객체 참조로서 건네받는 transferType 형의 데이터 요소의 배열에 의해 지정됩니다. pixel 가 transferType 형의 프리미티브(primitive) 배열이 아닌 경우는,ClassCastException 가 throw 됩니다. 이 ColorModel 의 색성분치가 비표준화 형식에서 표현할 수 없는 경우는,IllegalArgumentException 가 throw 됩니다. pixel 가 이 ColorModel 의 픽셀치를 포함할 수 있을 만큼 크지 않은 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. 이 메소드는, 임의의 ColorModel 의 특정의 픽셀치의 성분을 꺼내기 위해서(때문에) 사용할 수 있습니다. components 배열이 null 의 경우는, 새로운 배열을 할당할 수 있습니다. components 배열이 돌려주어집니다. 색성분 및 알파 성분은,offset 를 기점으로 components 배열에 포함됩니다. 배열이 이 메소드로 할당할 수 있고 있는 경우도 같습니다. components 배열이 null 가 아닌 경우에, (offset 를 기점으로) 모든 색성분 및 알파 성분을 보관 유지하는데 충분한 크기가 아닐 때는,ArrayIndexOutOfBoundsException 가 throw 됩니다. ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 됩니다. 이 abstract 클래스의 구현은 UnsupportedOperationException 를 throw 하므로, 서브 클래스는 이 메소드를 오버라이드(override) 할 필요가 있습니다.

파라미터:
pixel - 지정된 픽셀
components - 지정된 픽셀의 색성분 및 알파 성분을 받는 배열
offset - 지정된 픽셀의 색성분 및 알파 성분의 포함을 개시하는,components 배열에의 인덱스
반환값:
지정된 오프셋(offset) 이후에, 지정된 픽셀의 색성분 및 알파 성분이 포함되고 있는 배열
예외:
UnsupportedOperationException - 이 ColorModel 로 이 메소드가 지원되어 있지 않은 경우

getUnnormalizedComponents

public int[] getUnnormalizedComponents(float[] normComponents,
                                       int normOffset,
                                       int[] components,
                                       int offset)
표준화 성분 배열을 지정해, 비표준화 형식에서 모든 색성분 및 알파 성분의 배열을 돌려줍니다. 비표준화 성분은, 0 으로 2n - 1 의 사이의 부호 없음 정수치입니다. n 는, 특정의 성분의 비트수입니다. 표준화 성분은, 이 ColorModelColorSpace 객체에 의해 지정된 성분마다의 최소와 최대의 사이의 float 치입니다. 이 ColorModel 의 색성분치가 비표준화 형식에서 표현할 수 없는 경우는,IllegalArgumentException 가 throw 됩니다. components 배열이 null 의 경우는, 새로운 배열을 할당할 수 있습니다. components 배열이 돌려주어집니다. 색성분 및 알파 성분은,offset 를 기점으로 components 배열에 포함됩니다. 배열이 이 메소드로 할당할 수 있고 있는 경우도 같습니다. components 배열이 null 가 아닌 경우에, (offset 를 기점으로) 모든 색성분 및 알파 성분을 포함하는데 충분한 크기가 아닐 때는,ArrayIndexOutOfBoundsException 가 throw 됩니다. normComponents 배열이 normOffset 를 기점으로 모든 색성분 및 알파 성분을 포함하는데 충분한 크기가 아닌 경우는,IllegalArgumentException 가 throw 됩니다.

파라미터:
normComponents - 표준화 성분을 포함하고 있는 배열
normOffset - 표준화 성분의 취득을 개시하는, normComponents 배열에의 오프셋(offset)
components - normComponents 로부터 성분을 받는다 배열
offset - normComponents 로부터 표준화 성분의 포함을 개시하는, components 의 인덱스
반환값:
표준화되어 있지 않은 색성분 및 알파 성분이 포함되고 있는 배열
예외:
IllegalArgumentException - 이 ColorModel 의 성분치가 비표준화 형식에서 표현할 수 없는 경우
IllegalArgumentException - normComponents 로부터 normOffset 를 당긴 길이가 numComponents 보다 짧은 경우
UnsupportedOperationException - 이 ColorModel 의 생성자 이 super(bits) 생성자 을 호출해, 한편 이 메소드를 오버라이드(override) 하지 않았던 경우. 생성자 ColorModel(int) 를 참조

getNormalizedComponents

public float[] getNormalizedComponents(int[] components,
                                       int offset,
                                       float[] normComponents,
                                       int normOffset)
표준화 성분 배열을 지정해, 비표준화 형식에서 모든 색성분 및 알파 성분의 배열을 돌려줍니다. 비표준화 성분은, 0 으로 2n - 1 의 사이의 부호 없음 정수치입니다. n 는, 특정의 성분의 비트수입니다. 표준화 성분은, 이 ColorModelColorSpace 객체에 의해 지정된 성분마다의 최소와 최대의 사이의 float 치입니다. 이 ColorModel 의 색성분치가 비표준화 형식에서 표현할 수 없는 경우는,IllegalArgumentException 가 throw 됩니다. normComponents 배열이 null 의 경우는, 새로운 배열을 할당할 수 있습니다. 그 normComponents 배열이 돌려주어집니다. 색성분과 알파 성분은,normOffset 로부터 시작되는 normComponents 배열에 포함됩니다. 이것은, 배열이 이 메소드로 할당할 수 있고 있는 경우도 같습니다. normComponents 배열이 null 가 아니고, 색성분과 알파 성분 (normOffset 로부터 시작된다)의 모든 것을 포함할 수 있을 만큼 크지 않은 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. normComponents 배열이 normOffset 를 기점으로 모든 색성분 및 알파 성분을 포함하는데 충분한 크기가 아닌 경우는,IllegalArgumentException 가 throw 됩니다.  

ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 됩니다. 이 abstract 클래스에서의, 이 메소드의 디폴트의 구현은, 이 클래스의 성분치가 비표준화 형식에서 표현된다고 봅니다. 따라서, 비표준화 형식을 지원하지 않는 인스턴스를 가지는 서브 클래스는, 이 메소드를 오버라이드(override) 할 필요가 있습니다.

파라미터:
components - 표준화되어 있지 않은 성분을 포함하고 있는 배열
offset - 표준화되어 있지 않은 성분의 취득을 개시하는, components 배열에의 오프셋(offset)
normComponents - 표준화 성분을 받는 배열
normOffset - 표준화 성분의 포함을 개시하는, normComponents 의 인덱스
반환값:
표준화 된 색성분 및 알파 성분이 포함되고 있는 배열
예외:
IllegalArgumentException - 이 ColorModel 의 성분치가 비표준화 형식에서 표현할 수 없는 경우
UnsupportedOperationException - 이 ColorModel 의 생성자 이 super(bits) 생성자 을 호출해, 한편 이 메소드를 오버라이드(override) 하지 않았던 경우. 생성자 ColorModel(int) 를 참조
UnsupportedOperationException - 이 메소드가 성분마다의 비트수를 판정할 수 없었던 경우

getDataElement

public int getDataElement(int[] components,
                          int offset)
표준화되어 있지 않은 색성분과 알파 성분의 배열을 지정해, 이 ColorModel int 로서 표현되는 픽셀치를 돌려줍니다. 이 ColorModel 의 성분치가 단일의 int 로서 표현할 수 없는 경우, 또는 이 ColorModel 의 색성분치가 비표준화 형식에서 표현할 수 없는 경우는, 이 메소드는 IllegalArgumentException 를 throw 합니다. components 배열이 (offset 를 기점으로) 모든 색성분 및 알파 성분을 보관 유지하는데 충분한 크기가 아닌 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 됩니다. 이 abstract 클래스의 구현은 UnsupportedOperationException 를 throw 하므로, 서브 클래스는 이 메소드를 오버라이드(override) 할 필요가 있습니다.

파라미터:
components - 표준화되어 있지 않은 색성분 및 알파 성분의 배열
offset - 색성분 및 알파 성분의 취득을 개시하는, components 의 인덱스
반환값:
지정된 성분에 대응하는, 이 ColorModel 내의 int 픽셀치
예외:
IllegalArgumentException - 이 ColorModel 의 픽셀치가 단일의 int 로서 표현할 수 없는 경우
IllegalArgumentException - 이 ColorModel 의 성분치가 비표준화 형식에서 표현할 수 없는 경우
ArrayIndexOutOfBoundsException - components 배열이, offset 를 기점으로 모든 색성분 및 알파 성분을 포함하는데 충분한 크기가 아닌 경우
UnsupportedOperationException - 이 ColorModel 로 이 메소드가 지원되어 있지 않은 경우

getDataElements

public Object  getDataElements(int[] components,
                              int offset,
                              Object  obj)
표준화되어 있지 않은 색성분 및 알파 성분의 배열을 지정해, 이 ColorModel 의 픽셀의 데이터 요소 배열 표현을 돌려줍니다. 이 배열은,WritableRaster 객체의 setDataElements 메소드에 건네줄 수가 있습니다. 이 ColorModel 의 색성분치가 비표준화 형식에서 표현할 수 없는 경우, 이 메소드는 IllegalArgumentException 를 throw 합니다. components 배열이 (offset 를 기점으로) 모든 색성분 및 알파 성분을 보관 유지하는데 충분한 크기가 아닌 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. obj 변수가 null 의 경우는, 새로운 배열을 할당할 수 있습니다. objnull 가 아닌 경우는, transferType 형의 프리미티브(primitive) 배열일 필요가 있습니다. 그렇지 않은 경우는,ClassCastException 가 throw 됩니다. obj 가 이 ColorModel 의 픽셀치를 보관 유지하는데 충분한 크기가 아닌 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 됩니다. 이 abstract 클래스의 구현은 UnsupportedOperationException 를 throw 하므로, 서브 클래스는 이 메소드를 오버라이드(override) 할 필요가 있습니다.

파라미터:
components - 표준화되어 있지 않은 색성분 및 알파 성분의 배열
offset - 색성분 및 알파 성분의 취득을 개시하는, components 의 인덱스
obj - 색성분 및 알파 성분의 배열을 나타낸다 Object
반환값:
색성분 및 알파 성분의 배열을 나타낸다 Object
예외:
ClassCastException - objtransferType 형의 프리미티브(primitive) 배열이 아닌 경우
ArrayIndexOutOfBoundsException - obj 가 이 ColorModel 의 픽셀치를 포함하는데 충분한 크기가 아닌 경우, 또는 components 배열이 offset 를 기점으로 모든 색성분 및 알파 성분을 포함하는데 충분한 크기가 아닌 경우
IllegalArgumentException - 이 ColorModel 의 성분치가 비표준화 형식에서 표현할 수 없는 경우
UnsupportedOperationException - 이 ColorModel 로 이 메소드가 지원되어 있지 않은 경우
관련 항목:
WritableRaster.setDataElements(int, int, java.lang.Object) , SampleModel.setDataElements(int, int, java.lang.Object, java.awt.image.DataBuffer)

getDataElement

public int getDataElement(float[] normComponents,
                          int normOffset)
표준화되어 있지 않은 색성분 및 알파 성분의 배열을 지정해, 이 ColorModelint 로서 나타내지는 픽셀치를 돌려줍니다. 이 ColorModel 의 픽셀치가 단일의 int 로서 표현할 수 없는 경우, 이 메소드는 IllegalArgumentException 를 throw 합니다. normComponents 배열이 (normOffset 를 기점으로) 모든 색성분 및 알파 성분을 포함하는데 충분한 크기가 아닌 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 됩니다. 이 abstract 클래스에서의, 이 메소드의 디폴트의 구현은, 표준화 형식을 비표준화 형식으로 변환하고 나서 getDataElement(int[], int) 를 호출합니다. 비표준화 형식을 지원하지 않는 인스턴스를 가지는 서브 클래스는, 이 메소드를 오버라이드(override) 할 필요가 있습니다.

파라미터:
normComponents - 표준화 된 색성분 및 알파 성분의 배열
normOffset - 색성분 및 알파 성분의 취득을 개시하는, normComponents 의 인덱스
반환값:
지정된 성분에 대응하는, 이 ColorModel 내의 int 픽셀치
예외:
IllegalArgumentException - 이 ColorModel 의 픽셀치가 단일의 int 로서 표현할 수 없는 경우
ArrayIndexOutOfBoundsException - normComponents 배열이, normOffset 를 기점으로 모든 색성분 및 알파 성분을 포함하는데 충분한 크기가 아닌 경우
도입된 버젼:
1.4

getDataElements

public Object  getDataElements(float[] normComponents,
                              int normOffset,
                              Object  obj)
표준화색성분 및 알파 성분의 배열을 지정해, 이 ColorModel 의 픽셀의 데이터 요소 배열 표현을 돌려줍니다. 이 배열은,WritableRaster 객체의 setDataElements 메소드에 건네줄 수가 있습니다. normComponents 배열이 (normOffset 를 기점으로) 모든 색성분 및 알파 성분을 포함하는데 충분한 크기가 아닌 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. obj 변수가 null 의 경우는, 새로운 배열을 할당할 수 있습니다. objnull 가 아닌 경우는, transferType 형의 프리미티브(primitive) 배열일 필요가 있습니다. 그렇지 않은 경우는,ClassCastException 가 throw 됩니다. obj 가 이 ColorModel 의 픽셀치를 보관 유지하는데 충분한 크기가 아닌 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 됩니다. 이 abstract 클래스에서의, 이 메소드의 디폴트의 구현은, 표준화 형식을 비표준화 형식으로 변환하고 나서 getDataElement(int[], int, Object) 를 호출합니다. 비표준화 형식을 지원하지 않는 인스턴스를 가지는 서브 클래스는, 이 메소드를 오버라이드(override) 할 필요가 있습니다.

파라미터:
normComponents - 표준화 된 색성분 및 알파 성분의 배열
normOffset - 색성분 및 알파 성분의 취득을 개시하는, normComponents 의 인덱스
obj - 반환된 픽셀을 보관 유지하는 프리미티브(primitive) 데이터 배열
반환값:
픽셀의 프리미티브(primitive) 데이터 배열 표현의 Object
예외:
ClassCastException - objtransferType 형의 프리미티브(primitive) 배열이 아닌 경우
ArrayIndexOutOfBoundsException - obj 가 이 ColorModel 의 픽셀치를 포함하는데 충분한 크기가 아닌 경우, 또는 normComponents 배열이 normOffset 를 기점으로 모든 색성분 및 알파 성분을 포함하는데 충분한 크기가 아닌 경우
도입된 버젼:
1.4
관련 항목:
WritableRaster.setDataElements(int, int, java.lang.Object) , SampleModel.setDataElements(int, int, java.lang.Object, java.awt.image.DataBuffer)

getNormalizedComponents

public float[] getNormalizedComponents(Object  pixel,
                                       float[] normComponents,
                                       int normOffset)
ColorModel 의 지정된 픽셀에 대해, 표준화 형식에서 색성분과 알파 성분의 배열을 돌려줍니다. 픽셀치는, 객체 참조로서 건네받는 transferType 형의 데이터 요소의 배열에 의해 지정됩니다. pixel 가 transferType 형의 프리미티브(primitive) 배열이 아닌 경우는,ClassCastException 가 throw 됩니다. pixel 가 이 ColorModel 의 픽셀치를 포함할 수 있을 만큼 크지 않은 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. 표준화 성분은, 이 ColorModelColorSpace 객체에 의해 지정된 성분마다의 최소와 최대의 사이의 float 치입니다. normComponents 배열이 null 의 경우는, 새로운 배열을 할당할 수 있습니다. 그 normComponents 배열이 돌려주어집니다. 색성분과 알파 성분은,normOffset 로부터 시작되는 normComponents 배열에 포함됩니다. 이것은, 배열이 이 메소드로 할당할 수 있고 있는 경우도 같습니다. normComponents 배열이 null 가 아니고, 색성분과 알파 성분 (normOffset 로부터 시작된다)의 모든 것을 포함할 수 있을 만큼 크지 않은 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 됩니다. 이 abstract 클래스에서의, 이 메소드의 디폴트의 구현은,getComponents(Object, int[], int) 를 사용해 비표준화 형식에서 색성분과 알파 성분을 꺼내고 나서 getNormalizedComponents(int[], int, float[], int) 를 호출합니다. 비표준화 형식을 지원하지 않는 인스턴스를 가지는 서브 클래스는, 이 메소드를 오버라이드(override) 할 필요가 있습니다.

파라미터:
pixel - 지정된 픽셀
normComponents - 표준화 성분을 받는 배열
normOffset - 표준화 성분의 포함을 개시하는, normComponents 배열에의 오프셋(offset)
반환값:
표준화 된 색성분 및 알파 성분이 포함되고 있는 배열
예외:
ClassCastException - pixel 가 transferType 형의 프리미티브(primitive) 배열이 아닌 경우
ArrayIndexOutOfBoundsException - normComponents 가,normOffset 를 기점으로 모든 색성분 및 알파 성분을 포함하는데 충분한 크기가 아닌 경우
ArrayIndexOutOfBoundsException - pixel 가 이 ColorModel 의 픽셀치를 보관 유지하는데 충분한 크기가 아닌 경우
UnsupportedOperationException - 이 ColorModel 의 생성자 이 super(bits) 생성자 을 호출해, 한편 이 메소드를 오버라이드(override) 하지 않았던 경우. 생성자 ColorModel(int) 를 참조
UnsupportedOperationException - 이 메소드가 성분마다의 비트수를 판정할 수 없었던 경우
도입된 버젼:
1.4

equals

public boolean equals(Object  obj)
지정된 ObjectColorModel 의 인스턴스이며, 이 ColorModel 와 동일한지 어떤지를 판정합니다.

오버라이드(override):
클래스 Object 내의 equals
파라미터:
obj - 동일한지 어떤지가 판정되는 Object
반환값:
지정된 ObjectColorModel 의 인스턴스로, 한편 이 ColorModel 와 동일한 경우는 true, 그렇지 않은 경우는 false
관련 항목:
Object.hashCode() , Hashtable

hashCode

public int hashCode()
이 ColorModel 의 해시 코드를 돌려줍니다.

오버라이드(override):
클래스 Object 내의 hashCode
반환값:
이 ColorModel 의 해시 코드
관련 항목:
Object.equals(java.lang.Object) , Hashtable

getColorSpace

public final ColorSpace  getColorSpace()
ColorModel 에 관련한 ColorSpace 를 돌려줍니다.

반환값:
ColorModelColorSpace

coerceData

public ColorModel  coerceData(WritableRaster  raster,
                             boolean isAlphaPremultiplied)
라스터 데이터가 isAlphaPremultiplied 변수로 지정된 상태와 일치하도록(듯이) 합니다. 이 때, 데이터는 이 ColorModel 에 의해 현재 올바르게 기술되고 있다고 보여집니다. 이 메소드는, 칼라 라스터 데이터를 알파에서 곱셈 또는 제산합니다. 데이터가 올바른 상태에 있는 경우에는, 처리는 실시하지 않습니다. 데이터를 강제적으로 형태 변환할 필요가 있는 경우, 이 메소드는 isAlphaPremultiplied 플래그를 올바르게 설정한, 이 ColorModel 의 인스턴스도 돌려줍니다. 이 ColorModel 에 의해 지원되어 있지 않은 경우, 이 메소드는 UnsupportedOperationException 를 throw 합니다. ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 됩니다. 이 abstract 클래스의 구현은 UnsupportedOperationException 를 throw 하므로, 서브 클래스는 이 메소드를 오버라이드(override) 할 필요가 있습니다.

파라미터:
raster - WritableRaster 데이터
isAlphaPremultiplied - 알파가 미리 곱셈되고 있는 경우는 true, 그렇지 않은 경우는 false
반환값:
강제적으로 형태 변환된 데이터를 나타낸다 ColorModel 객체

isCompatibleRaster

public boolean isCompatibleRaster(Raster  raster)
raster 가 이 ColorModel 와 호환성이 있는 경우에는 true 를 돌려주어, 그렇지 않은 경우에는 false 를 돌려줍니다. ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 됩니다. 이 abstract 클래스의 구현은 UnsupportedOperationException 를 throw 하므로, 서브 클래스는 이 메소드를 오버라이드(override) 할 필요가 있습니다.

파라미터:
raster - 호환성을 판정하는 Raster 객체
반환값:
raster 가 이 ColorModel 와 호환성이 있는 경우는 true
예외:
UnsupportedOperationException - 이 ColorModel 로 이 메소드가 구현되어 있지 않은 경우

createCompatibleWritableRaster

public WritableRaster  createCompatibleWritableRaster(int w,
                                                     int h)
ColorModel 와 호환성이 있는 데이터 레이아웃 (SampleModel)을 가지는, 지정된 폭과 높이의 WritableRaster 를 생성합니다. ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 됩니다. 이 abstract 클래스의 구현은 UnsupportedOperationException 를 throw 하므로, 서브 클래스는 이 메소드를 오버라이드(override) 할 필요가 있습니다.

파라미터:
w - 새로운 WritableRaster 에 적용되는 폭
h - 새로운 WritableRaster 에 적용되는 높이
반환값:
지정된 폭과 높이를 가지는 WritableRaster 객체
예외:
UnsupportedOperationException - 이 ColorModel 로 이 메소드가 지원되어 있지 않은 경우
관련 항목:
WritableRaster , SampleModel

createCompatibleSampleModel

public SampleModel  createCompatibleSampleModel(int w,
                                               int h)
ColorModel 와 호환성이 있는 데이터 레이아웃을 가지는, 지정된 폭과 높이의 SampleModel 를 작성합니다. ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 됩니다. 이 abstract 클래스의 구현은 UnsupportedOperationException 를 throw 하므로, 서브 클래스는 이 메소드를 오버라이드(override) 할 필요가 있습니다.

파라미터:
w - 새로운 SampleModel 에 적용되는 폭
h - 새로운 SampleModel 에 적용되는 높이
반환값:
지정된 폭과 높이를 가지는 SampleModel 객체
예외:
UnsupportedOperationException - 이 ColorModel 로 이 메소드가 지원되어 있지 않은 경우
관련 항목:
SampleModel

isCompatibleSampleModel

public boolean isCompatibleSampleModel(SampleModel  sm)
SampleModel 가 이 ColorModel 와 호환성이 있을지 어떨지를 판정합니다. ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 됩니다. 이 abstract 클래스의 구현은 UnsupportedOperationException 를 throw 하므로, 서브 클래스는 이 메소드를 오버라이드(override) 할 필요가 있습니다.

파라미터:
sm - 지정된 SampleModel
반환값:
지정된 SampleModel 가 이 ColorModel 와 호환성이 있는 경우는 true, 그렇지 않은 경우는 false
예외:
UnsupportedOperationException - 이 ColorModel 로 이 메소드가 지원되어 있지 않은 경우
관련 항목:
SampleModel

finalize

public void finalize()
ColorModel 가 참조되지 않게 되었을 때에, 관련한 system resource를 파기합니다.

오버라이드(override):
클래스 Object 내의 finalize

getAlphaRaster

public WritableRaster  getAlphaRaster(WritableRaster  raster)
ColorModel 의 픽셀치가 다른 공간 밴드로서 색정보 및 알파 정보를 나타내는 경우 (ComponentColorModelDirectColorModel 등)에, 입력 Raster 로부터 추출된, 이미지의 알파 채널을 나타내는 Raster 를 돌려줍니다. 그러한 ColorModel 에 관련한 Raster 객체가 알파 밴드를 가지고 있는 경우, 이 메소드는, 이 알파 밴드가 이미지 데이터의 마지막 밴드로서 포함되고 있다고 봅니다. 이 ColorModel 에 관련한 공간 알파 채널이 그 밖에 없는 경우는,null 를 돌려줍니다. 룩업테이블에 알파를 가지는 IndexColorModel 의 경우, 이 메소드는 null 를 돌려줍니다. 이것은, 공간적으로 분리한 알파 채널이 존재하지 않기 때문입니다. 이 메소드는, 새로운 Raster 를 생성합니다 (다만 데이터 배열은 공유된다). ColorModel 는 abstract 클래스이므로, 어느 인스턴스도 서브 클래스의 인스턴스가 됩니다. 이 abstract 클래스의 구현은 null 를 돌려주므로, 서브 클래스는 이 메소드를 오버라이드(override) 해 null 를 돌려주는 이외의 동작을 취득할 필요가 있습니다.

파라미터:
raster - 지정한 Raster
반환값:
지정한 Raster 로부터 취득되는, 이미지의 알파 채널을 나타내는 Raster

toString

public String  toString()
ColorModel 객체의 내용을 나타내는 String 를 돌려줍니다.

오버라이드(override):
클래스 Object 내의 toString
반환값:
ColorModel 객체의 내용을 나타낸다 String

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.