JavaTM Platform
Standard Ed. 6

java.awt.image
클래스 IndexColorModel

java.lang.Object 
  상위를 확장 java.awt.image.ColorModel 
      상위를 확장 java.awt.image.IndexColorModel
모든 구현된 인터페이스:
Transparency


public class IndexColorModel
extends ColorModel

IndexColorModel 클래스는, 디폴트의 sRGB 칼라 스페이스의 고정 칼라 맵에 대한 인덱스인, 단일의 샘플로부터 되는 픽셀치를 취급하는 ColorModel 클래스입니다. 칼라 맵은, 적, 록, 청의 색성분, 및 각 인덱스에 대응하는 임의의 알파 성분을 지정합니다. 성분은 모두, 칼라 맵내의 8 비트의 부호 없음 정수치로서 표현됩니다. 몇개의 생성자 에서는, 호출측이,BigInteger 객체로 설정된 비트에 의해, 어느 칼라 맵 엔트리가 유효한가, 및 어느 칼라 맵 엔트리가 사용 불가능한 색을 나타내고 있는지를 나타내는 것에 의해, 칼라 맵의 「구멍」을 지정할 수 있습니다. 이 칼라 모델은 X11 의 PseudoColor 와 같은 것입니다.  

생성자 에 따라서는, 칼라 맵의 각 픽셀의 알파 성분을 지정하는 수단을 제공하고 있는 것도 있습니다만, 그러한 수단을 제공하지 않는 생성자 이나, 경우에 따라서는 칼라 맵 데이터에 알파치가 포함되고 있는지 어떤지를 나타내는 플래그를 제공하는 생성자 도 있습니다. 생성자 에 알파가 지정되지 않는 경우는, 각 엔트리에 불투명한 알파 성분 (알파 = 1.0)이 지정되고 있다고 보입니다. 옵션으로서 투명 픽셀의 값을 지정해, 그 픽셀치로 지정 또는 상정된 알파 성분이 어떤 것이어도, 완전하게 투명하게 하는 픽셀인 것을 나타낼 수가 있습니다. IndexColorModel 객체의 칼라 맵의 색성분은 알파 성분에 의해 미리 곱셈될 것은 없습니다.  

IndexColorModel 객체의 투명도는, 칼라 맵의 색의 알파 성분을 조사해 지정된 옵션의 알파치 및 투명 인덱스를 고려한 뒤, 가장 특유인 값을 선택하는 것에 의해 판단할 수 있습니다. 칼라 맵의 모든 유효한 색이 불투명해, 유효한 투명 픽셀이 없는 경우만, 투명도의 값은 Transparency.OPAQUE 입니다. 칼라 맵의 유효한 모든 색이 완전하게 불투명 (알파 = 1.0)인가, 또는 완전하게 투명 (alpha = 0.0)인 경우 (일반적으로 유효한 투명 픽셀이 지정되는 경우에 일어난다), 값은 Transparency.BITMASK 가 됩니다. 그 이외의 경우, 값은 Transparency.TRANSLUCENT 이며, 일부의 유효한 색이, 완전하게 투명하지도 완전하게 불투명하지도 않은 알파 성분 (0.0 < 알파 < 1.0)을 가지는 것을 나타냅니다.

IndexColorModel 객체가 Transparency.OPAQUE 의 투명도의 값을 가지는 경우,hasAlpha 메소드 및 getNumComponents 메소드 (함께 ColorModel 로부터 상속된다)는 각각 false 및 3 을 돌려줍니다. 다른 투명도의 값의 경우,hasAlpha 메소드는 true 를 돌려주어,getNumComponents 메소드는 4 를 돌려줍니다.

칼라 맵의 인덱스에 사용되는 값은, 픽셀 표현의 최하정도의 n 비트로부터 채용됩니다. n 는, 생성자 으로 지정하는 픽셀 사이즈에 근거해 정해집니다. 픽셀 사이즈가 8 비트보다 작은 경우,n 는 2 의 누승에 끝맺을 수 있습니다. 즉 3 은 4 가 되어, 5, 6, 7 은 8 이 됩니다. 픽셀 사이즈가 8 ~ 16 비트의 경우,n 는 픽셀 사이즈와 같습니다. 16 비트를 넘는 픽셀 사이즈는, 이 클래스에서는 지원되고 있지 않습니다. n 보다 상위의 비트는, 픽셀 표현으로 무시됩니다. 인덱스치가 맵 사이즈 이상으로 2n 미만인 경우, 이러한 인덱스치는 미정도리이기 (위해)때문에, 모든 색성분 및 알파 성분에 대해서 0 이 돌려주어집니다.  

transferType 형의 프리미티브(primitive) 배열의 픽셀 표현을 사용하는 메소드에서는, 배열장은 항상 1 입니다. 지원되는 전송형은,DataBuffer.TYPE_BYTEDataBuffer.TYPE_USHORT 입니다. 이 클래스에서 사용하는 픽셀치는 항상 단일의 int 로서 표현할 수 있으므로, 단일의 int 픽셀 표현은 이 클래스의 모든 객체로 유효합니다. 이 때문에, 이 표현을 사용하는 메소드는, 무효인 픽셀치가 원인으로 IllegalArgumentException 를 throw 할 것은 없습니다.  

이 클래스의 메소드의 상당수는 final 입니다. 그 이유는, 하위의 네이티브인 그래픽스의 코드가 이 클래스의 설계와 조작에 관한 전제가 되어, 이러한 전제가 이 클래스에서 final 가 되어 있는 메소드의 구현에 반영되고 있기 때문입니다. 이 클래스를 다른 이유로써 서브 클래스화할 수 있습니다만, final 인 메소드의 동작을 오버라이드(override) 하거나 변경할 수 없습니다.

관련 항목:
ColorModel , ColorSpace , DataBuffer

필드의 개요
 
클래스 java.awt.image. ColorModel 로부터 상속된 필드
pixel_bits , transferType
 
인터페이스 java.awt. Transparency 로부터 상속된 필드
BITMASK , OPAQUE , TRANSLUCENT
 
생성자 의 개요
IndexColorModel (int bits, int size, byte[] r, byte[] g, byte[] b)
          지정된 적, 초록, 파랑의 색성분의 배열로부터 IndexColorModel 를 구축합니다.
IndexColorModel (int bits, int size, byte[] r, byte[] g, byte[] b, byte[] a)
          지정된 적, 초록, 파랑의 색성분의 배열로부터 IndexColorModel 를 구축합니다.
IndexColorModel (int bits, int size, byte[] r, byte[] g, byte[] b, int trans)
          지정된 적, 초록, 파랑의 색성분의 배열로부터 IndexColorModel 를 구축합니다.
IndexColorModel (int bits, int size, byte[] cmap, int start, boolean hasalpha)
          인타리브화 형식에서 포함되고 있는 적, 초록, 파랑의 색성분, 및 옵션의 알파 성분으로부터 되는 1 개의 배열로부터 IndexColorModel 를 구축합니다.
IndexColorModel (int bits, int size, byte[] cmap, int start, boolean hasalpha, int trans)
          인타리브화 형식에서 포함되고 있는 적, 초록, 파랑의 색성분, 및 옵션의 알파 성분으로부터 되는 1 개의 배열로부터 IndexColorModel 를 구축합니다.
IndexColorModel (int bits, int size, int[] cmap, int start, boolean hasalpha, int trans, int transferType)
          int 의 배열로부터 IndexColorModel 를 구축합니다.
IndexColorModel (int bits, int size, int[] cmap, int start, int transferType, BigInteger  validBits)
          int 의 배열로부터 IndexColorModel 를 구축합니다.
 
메소드의 개요
 BufferedImage convertToIntDiscrete (Raster  raster, boolean forceARGB)
          소스 Raster 의 인덱스를 전개해 계산한 픽셀 데이터 첨부의 Raster 를 가지는, TYPE_INT_ARGB 또는 TYPE_INT_RGB 의 새로운 BufferedImage 를, 이 ColorModel 의 색성분과 알파 성분의 배열을 사용해 돌려줍니다.
 SampleModel createCompatibleSampleModel (int w, int h)
          이 ColorModel 와 호환성이 있는 데이터 레이아웃을 가지는, 지정된 폭과 높이의 SampleModel 를 작성합니다.
 WritableRaster createCompatibleWritableRaster (int w, int h)
          이 ColorModel 와 호환성이 있는 데이터 레이아웃 (SampleModel)을 가지는, 지정된 폭과 높이의 WritableRaster 를 생성합니다.
 void finalize ()
          이 ColorModel 가 참조되지 않게 되었을 때에, 관련한 system resource를 파기합니다.
 int getAlpha (int pixel)
          지정된 픽셀의 알파 성분을, 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다.
 void getAlphas (byte[] a)
          알파의 투명 성분의 배열이 지정된 배열에 카피합니다.
 int getBlue (int pixel)
          지정된 픽셀의 파랑의 색성분을, 디폴트의 RGB ColorSpace, 즉 sRGB 의 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다.
 void getBlues (byte[] b)
          파랑의 색성분의 배열이 지정된 배열에 카피합니다.
 int[] getComponents (int pixel, int[] components, int offset)
          이 ColorModel 의 지정된 픽셀에 대해, 표준화되어 있지 않은 색성분과 알파 성분의 배열을 돌려줍니다.
 int[] getComponents (Object  pixel, int[] components, int offset)
          이 ColorModel 의 지정된 픽셀에 대해, 표준화되어 있지 않은 색성분과 알파 성분의 배열을 돌려줍니다.
 int[] getComponentSize ()
          색성분이나 알파 성분에 대해 1 성분 근처의 비트수의 배열을 돌려줍니다.
 int getDataElement (int[] components, int offset)
          지정된, 표준화되어 있지 않은 색성분과 알파 성분의 배열에 대해, 이 ColorModel 의 int 로서 표현되는 픽셀치를 돌려줍니다.
 Object getDataElements (int[] components, int offset, Object  pixel)
          표준화되어 있지 않은 색성분 및 알파 성분의 배열을 지정해, 이 ColorModel 의 픽셀의 데이터 요소 배열 표현을 돌려줍니다.
 Object getDataElements (int rgb, Object  pixel)
          지정된 디폴트의 RGB 칼라 모델의 정수 픽셀 표현에 대해, 이 ColorModel 의 픽셀의 데이터 요소 배열 표현을 돌려줍니다.
 int getGreen (int pixel)
          지정된 픽셀의 초록의 색성분을, 디폴트의 RGB ColorSpace, 즉 sRGB 의 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다.
 void getGreens (byte[] g)
          초록의 색성분의 배열이 지정된 배열에 카피합니다.
 int getMapSize ()
          이 IndexColorModel 내의 색성분과 알파 성분의 배열의 크기를 돌려줍니다.
 int getRed (int pixel)
          지정된 픽셀의 빨강의 색성분을, 디폴트의 RGB ColorSpace, 즉 sRGB 의 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다.
 void getReds (byte[] r)
          빨강의 색성분의 배열이 지정된 배열에 카피합니다.
 int getRGB (int pixel)
          픽셀의 색성분과 알파 성분을, 디폴트의 RGB 칼라 모델 형식에서 돌려줍니다.
 void getRGBs (int[] rgb)
           각 인덱스의 데이터를 색성분과 알파 성분의 배열로부터 디폴트의 RGB ColorModel 형식의 int 로 변환해, 결과적으로 얻을 수 있는 32 비트 ARGB 치가 지정된 배열에 카피합니다.
 int getTransparency ()
          투명도를 돌려줍니다.
 int getTransparentPixel ()
          이 IndexColorModel 내의 투명 픽셀의 인덱스를 돌려줍니다.
 BigInteger getValidPixels ()
          칼라 맵의 유효/무효 픽셀을 나타내는 BigInteger 를 돌려줍니다.
 boolean isCompatibleRaster (Raster  raster)
          raster 가 이 ColorModel 와 호환성이 있는 경우에는 true 를 돌려주어, 그렇지 않은 경우에는 false 를 돌려줍니다.
 boolean isCompatibleSampleModel (SampleModel  sm)
          SampleModel 가 이 ColorModel 와 호환성이 있을지 어떨지를 조사합니다.
 boolean isValid ()
          모든 픽셀이 유효한가 어떤가를 돌려줍니다.
 boolean isValid (int pixel)
          픽셀이 유효한가 어떤가를 돌려줍니다.
 String toString ()
          이 ColorModel 객체의 내용을 나타내는 String 를 돌려줍니다.
 
클래스 java.awt.image. ColorModel 로부터 상속된 메소드
coerceData , equals , getAlpha , getAlphaRaster , getBlue , getColorSpace , getComponentSize , getDataElement , getDataElements , getGreen , getNormalizedComponents , getNormalizedComponents , getNumColorComponents , getNumComponents , getPixelSize , getRed , getRGB , getRGBdefault , getTransferType , getUnnormalizedComponents , hasAlpha , hashCode , isAlphaPremultiplied
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , getClass , notify , notifyAll , wait , wait , wait
 

생성자 의 상세

IndexColorModel

public IndexColorModel(int bits,
                       int size,
                       byte[] r,
                       byte[] g,
                       byte[] b)
지정된 적, 초록, 파랑의 색성분의 배열로부터 IndexColorModel 를 구축합니다. 이 칼라 모델에 의해 기술되는 픽셀은 모두, 정규화되어 있지 않은 255 (1.0  표준화)의 알파 성분을 가집니다. 즉, 완전하게 불투명합니다. 색성분을 지정하는 모든 배열은, 적어도 지정된 엔트리수를 가질 필요가 있습니다. ColorSpace 는 디폴트의 sRGB 영역이 됩니다. 이 생성자 에의 어느 인수에도 알파 정보가 없기 때문에, 투명도의 값은 항상 Transparency.OPAQUE 가 됩니다. 전송형은, 단일의 픽셀을 포함할 수 있는 DataBuffer.TYPE_BYTE 또는 DataBuffer.TYPE_USHORT 의 최소의 것이 됩니다.

파라미터:
bits - 1 픽셀 근처의 비트수
size - 색성분의 배열의 크기
r - 적색 성분의 배열
g - 녹색 성분의 배열
b - 청색 성분의 배열
예외:
IllegalArgumentException - bits 가 1 보다 작은지, 16 보다 큰 경우
IllegalArgumentException - size 가 1 보다 작은 경우

IndexColorModel

public IndexColorModel(int bits,
                       int size,
                       byte[] r,
                       byte[] g,
                       byte[] b,
                       int trans)
지정된 적, 초록, 파랑의 색성분의 배열로부터 IndexColorModel 를 구축합니다. 이 칼라 모델에 의해 기술되는 픽셀은 모두, 정규화되어 있지 않은 255 (1.0 정규화)의 알파 성분을 가집니다. 즉, 투명하게 지정된 픽셀 이외는 완전하게 불투명합니다. 색성분을 지정하는 모든 배열은, 적어도 지정된 엔트리수를 가질 필요가 있습니다. ColorSpace 는 디폴트의 sRGB 영역이 됩니다. 상기의클래스의 설명에 나타내도록(듯이), 투명도의 값은 인수에 응해 Transparency.OPAQUE 또는 Transparency.BITMASK 가 됩니다. 전송형은, 단일의 픽셀을 포함할 수 있는 DataBuffer.TYPE_BYTE 또는 DataBuffer.TYPE_USHORT 의 최소의 것이 됩니다.

파라미터:
bits - 1 픽셀 근처의 비트수
size - 색성분의 배열의 크기
r - 적색 성분의 배열
g - 녹색 성분의 배열
b - 청색 성분의 배열
trans - 투명 픽셀의 인덱스
예외:
IllegalArgumentException - bits 가 1 보다 작은지, 16 보다 큰 경우
IllegalArgumentException - size 가 1 미만의 경우

IndexColorModel

public IndexColorModel(int bits,
                       int size,
                       byte[] r,
                       byte[] g,
                       byte[] b,
                       byte[] a)
지정된 적, 초록, 파랑의 색성분의 배열로부터 IndexColorModel 를 구축합니다. 색성분을 지정하는 모든 배열은, 적어도 지정된 엔트리수를 가질 필요가 있습니다. ColorSpace 는 디폴트의 sRGB 영역이 됩니다. 상기의클래스의 설명에 나타내도록(듯이), 투명도의 값은 인수에 응해 Transparency.OPAQUE,Transparency.BITMASK, 또는 Transparency.TRANSLUCENT 가 됩니다. 전송형은, 단일의 픽셀을 포함할 수 있는 DataBuffer.TYPE_BYTE 또는 DataBuffer.TYPE_USHORT 의 최소의 것이 됩니다.

파라미터:
bits - 1 픽셀 근처의 비트수
size - 색성분의 배열의 크기
r - 적색 성분의 배열
g - 녹색 성분의 배열
b - 청색 성분의 배열
a - 알파치 성분의 배열
예외:
IllegalArgumentException - bits 가 1 보다 작은지, 16 보다 큰 경우
IllegalArgumentException - size 가 1 보다 작은 경우

IndexColorModel

public IndexColorModel(int bits,
                       int size,
                       byte[] cmap,
                       int start,
                       boolean hasalpha)
인타리브화 형식에서 포함되고 있는 적, 초록, 파랑의 색성분, 및 옵션의 알파 성분으로부터 되는 1 개의 배열로부터 IndexColorModel 를 구축합니다. 이 배열의 값은, 지정된 사이즈의 성분 배열을 모두 충분히 채우는 수일 필요가 있습니다. ColorSpace 는 디폴트의 sRGB 영역이 됩니다. 상기의클래스의 설명에 나타내도록(듯이), 투명도의 값은 인수에 응해 Transparency.OPAQUE,Transparency.BITMASK, 또는 Transparency.TRANSLUCENT 가 됩니다. 전송형은, 단일의 픽셀을 포함할 수 있는 DataBuffer.TYPE_BYTE 또는 DataBuffer.TYPE_USHORT 의 최소의 것이 됩니다.

파라미터:
bits - 1 픽셀 근처의 비트수
size - 색성분의 배열의 크기
cmap - 색성분의 배열
start - 최초의 색성분의 개시 오프셋(offset)
hasalpha - cmap 배열에서의 알파치의 유무를 나타낸다
예외:
IllegalArgumentException - bits 가 1 보다 작은지, 16 보다 큰 경우
IllegalArgumentException - size 가 1 보다 작은 경우

IndexColorModel

public IndexColorModel(int bits,
                       int size,
                       byte[] cmap,
                       int start,
                       boolean hasalpha,
                       int trans)
인타리브화 형식에서 포함되고 있는 적, 초록, 파랑의 색성분, 및 옵션의 알파 성분으로부터 되는 1 개의 배열로부터 IndexColorModel 을 구축합니다. 지정된 투명 인덱스는, 어느 알파치가 지정되고 있어도, 완전하게 투명하다라고 보이는 픽셀을 표현합니다. 이 배열의 값은, 지정된 사이즈의 성분 배열을 모두 충분히 채우는 수일 필요가 있습니다. ColorSpace 는 디폴트의 sRGB 영역이 됩니다. 상기의클래스의 설명에 나타내도록(듯이), 투명도의 값은 인수에 응해 Transparency.OPAQUE,Transparency.BITMASK, 또는 Transparency.TRANSLUCENT 가 됩니다. 전송형은, 단일의 픽셀을 포함할 수 있는 DataBuffer.TYPE_BYTE 또는 DataBuffer.TYPE_USHORT 의 최소의 것이 됩니다.

파라미터:
bits - 1 픽셀 근처의 비트수
size - 색성분의 배열의 크기
cmap - 색성분의 배열
start - 최초의 색성분의 개시 오프셋(offset)
hasalpha - cmap 배열에서의 알파치의 유무를 나타내는
trans - 완전한 투명 픽셀의 인덱스
예외:
IllegalArgumentException - bits 가 1 보다 작은지, 16 보다 큰 경우
IllegalArgumentException - size 가 1 미만의 경우

IndexColorModel

public IndexColorModel(int bits,
                       int size,
                       int[] cmap,
                       int start,
                       boolean hasalpha,
                       int trans,
                       int transferType)
int 의 배열로부터 IndexColorModel 를 구축합니다. 다만, 각 int 는, 디폴트의 RGB 칼라 모델 형식의 적, 초록, 파랑의 색성분, 및 임의의 알파 성분으로부터 됩니다. 지정된 투명 인덱스는, 어느 알파치가 지정되고 있어도, 완전하게 투명하다라고 보이는 픽셀을 표현합니다. 이 배열의 값은, 지정된 사이즈의 성분 배열을 모두 충분히 채우는 수일 필요가 있습니다. ColorSpace 는 디폴트의 sRGB 영역이 됩니다. 상기의클래스의 설명에 나타내도록(듯이), 투명도의 값은 인수에 응해 Transparency.OPAQUE,Transparency.BITMASK, 또는 Transparency.TRANSLUCENT 가 됩니다.

파라미터:
bits - 1 픽셀 근처의 비트수
size - 색성분의 배열의 크기
cmap - 색성분의 배열
start - 최초의 색성분의 개시 오프셋(offset)
hasalpha - cmap 배열에서의 알파치의 유무를 나타내는
trans - 완전한 투명 픽셀의 인덱스
transferType - 픽셀치를 나타낼 때 사용하는 배열의 데이터형. 데이터형은 DataBuffer.TYPE_BYTE 또는 DataBuffer.TYPE_USHORT 의 어느 쪽인지
예외:
IllegalArgumentException - bits 가 1 보다 작은지, 16 보다 큰 경우
IllegalArgumentException - size 가 1 보다 작은 경우
IllegalArgumentException - transferTypeDataBuffer.TYPE_BYTE 또는 DataBuffer.TYPE_USHORT 가 어느 쪽도 아닌 경우

IndexColorModel

public IndexColorModel(int bits,
                       int size,
                       int[] cmap,
                       int start,
                       int transferType,
                       BigInteger  validBits)
int 의 배열로부터 IndexColorModel 를 구축합니다. 다만, 각 int 는, 디폴트의 RGB 칼라 모델 형식의 적, 초록, 파랑의 색성분, 및 임의의 알파 성분으로부터 됩니다. 이 배열의 값은, 지정된 사이즈의 성분 배열을 모두 충분히 채우는 수일 필요가 있습니다. ColorSpace 는 디폴트의 sRGB 영역이 됩니다. 상기의클래스의 설명에 나타내도록(듯이), 투명도의 값은 인수에 응해 Transparency.OPAQUE,Transparency.BITMASK, 또는 Transparency.TRANSLUCENT 가 됩니다. 전송형은 DataBuffer.TYPE_BYTE 또는 DataBuffer.TYPE_USHORT 의 언젠가가 아니면 안됩니다. BigInteger 객체는,cmap 배열의 유효/무효 픽셀을 지정합니다. 픽셀은 그 인덱스의 BigInteger 치가 설정되어 있으면 유효, 그 인덱스의 BigInteger 비트가 설정되어 있지 않은 경우는 무효입니다.

파라미터:
bits - 1 픽셀 근처의 비트수
size - 색성분의 배열의 크기
cmap - 색성분의 배열
start - 최초의 색성분의 개시 오프셋(offset)
transferType - 지정된 데이터형
validBits - BigInteger 의 객체. 비트가 BigInteger 로 설정되어 있는 경우는, 인덱스의 픽셀은 유효. 비트가 설정되어 있지 않은 경우는, 인덱스의 픽셀은 무효로 간주해진다. null 의 경우는, 모든 픽셀이 유효. 제로로부터 맵 사이즈까지의 비트만이 고려된다
예외:
IllegalArgumentException - bits 가 1 보다 작은지, 16 보다 큰 경우
IllegalArgumentException - size 가 1 보다 작은 경우
IllegalArgumentException - transferTypeDataBuffer.TYPE_BYTE 또는 DataBuffer.TYPE_USHORT 가 어느 쪽도 아닌 경우
도입된 버젼:
1.3
메소드의 상세

getTransparency

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

정의:
인터페이스 Transparency 내의 getTransparency
오버라이드(override):
클래스 ColorModel 내의 getTransparency
반환값:
IndexColorModel 의 투명도
관련 항목:
Transparency.OPAQUE , Transparency.BITMASK , Transparency.TRANSLUCENT

getComponentSize

public int[] getComponentSize()
색성분이나 알파 성분에 대해 1 성분 근처의 비트수의 배열을 돌려줍니다. 배열에는, 적, 록, 청의 색성분, 및 있으면 알파 성분의 순서로, 색성분이 포함됩니다.

오버라이드(override):
클래스 ColorModel 내의 getComponentSize
반환값:
IndexColorModel 의 색성분 및 알파 성분마다의 비트수의 배열

getMapSize

public final int getMapSize()
IndexColorModel 내의 색성분과 알파 성분의 배열의 크기를 돌려줍니다.

반환값:
색성분 및 알파 성분의 배열의 크기

getTransparentPixel

public final int getTransparentPixel()
IndexColorModel 내의 투명 픽셀의 인덱스를 돌려줍니다. 다만, 알파치 0 의 픽셀이 없는 경우는 -1 을 돌려줍니다. 투명 픽셀이 인덱스에 의해 생성자 에 명시적으로 지정되고 있는 경우, 그 인덱스가 우선됩니다. 그 이외의 경우는, 완전하게 투명한 임의의 픽셀의 인덱스가 반환되는 일이 있습니다.

반환값:
IndexColorModel 의 객체의 투명 픽셀의 인덱스, 또는 투명 픽셀이 없는 경우는 -1

getReds

public final void getReds(byte[] r)
빨강의 색성분의 배열이 지정된 배열에 카피합니다. getMapSize 로 지정된 배열의 초기 엔트리만이 기입해집니다.

파라미터:
r - 빨강의 색성분의 배열 요소의 카피처로서 지정되는 배열

getGreens

public final void getGreens(byte[] g)
초록의 색성분의 배열이 지정된 배열에 카피합니다. getMapSize 로 지정된 배열의 초기 엔트리만이 기입해집니다.

파라미터:
g - 초록의 색성분의 배열 요소의 카피처로서 지정되는 배열

getBlues

public final void getBlues(byte[] b)
파랑의 색성분의 배열이 지정된 배열에 카피합니다. getMapSize 로 지정된 배열의 초기 엔트리만이 기입해집니다.

파라미터:
b - 파랑의 색성분의 배열 요소의 카피처로서 지정되는 배열

getAlphas

public final void getAlphas(byte[] a)
알파의 투명 성분의 배열이 지정된 배열에 카피합니다. getMapSize 로 지정된 배열의 초기 엔트리만이 기입해집니다.

파라미터:
a - 알파 성분의 배열 요소의 카피처로서 지정되는 배열

getRGBs

public final void getRGBs(int[] rgb)
각 인덱스의 데이터를 색성분과 알파 성분의 배열로부터 디폴트의 RGB ColorModel 형식의 int 로 변환해, 결과적으로 얻을 수 있는 32 비트 ARGB 치가 지정된 배열에 카피합니다. getMapSize 로 지정된 배열의 초기 엔트리만이 기입해집니다.

파라미터:
rgb - 이 색성분 및 알파 성분 배열로부터 변환한 ARGB 치의 카피처로서 지정되는 배열

getRed

public final int getRed(int pixel)
지정된 픽셀의 빨강의 색성분을, 디폴트의 RGB ColorSpace, 즉 sRGB 의 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다. 픽셀치는 int 로서 지정됩니다. 픽셀치의 하위 n 비트 (전술의클래스의 기술로 지정)만이 반환값의 계산에 사용됩니다. 반환값은, 미리 곱셈되어 있지 않은 값이 됩니다.

정의:
클래스 ColorModel 내의 getRed
파라미터:
pixel - 지정된 픽셀
반환값:
지정된 픽셀의 적색 성분의 값

getGreen

public final int getGreen(int pixel)
지정된 픽셀의 초록의 색성분을, 디폴트의 RGB ColorSpace, 즉 sRGB 의 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다. 픽셀치는 int 로서 지정됩니다. 픽셀치의 하위 n 비트 (전술의클래스의 기술로 지정)만이 반환값의 계산에 사용됩니다. 반환값은, 미리 곱셈되어 있지 않은 값이 됩니다.

정의:
클래스 ColorModel 내의 getGreen
파라미터:
pixel - 지정된 픽셀
반환값:
지정된 픽셀의 녹색 성분의 값

getBlue

public final int getBlue(int pixel)
지정된 픽셀의 파랑의 색성분을, 디폴트의 RGB ColorSpace, 즉 sRGB 의 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다. 픽셀치는 int 로서 지정됩니다. 픽셀치의 하위 n 비트 (전술의클래스의 기술로 지정)만이 반환값의 계산에 사용됩니다. 반환값은, 미리 곱셈되어 있지 않은 값이 됩니다.

정의:
클래스 ColorModel 내의 getBlue
파라미터:
pixel - 지정된 픽셀
반환값:
지정된 픽셀의 청색 성분의 값

getAlpha

public final int getAlpha(int pixel)
지정된 픽셀의 알파 성분을, 0 ~ 255 의 범위에서 슬캘링 해 돌려줍니다. 픽셀치는 int 로서 지정됩니다. 픽셀치의 하위 n 비트 (전술의클래스의 기술로 지정)만이 반환값의 계산에 사용됩니다.

정의:
클래스 ColorModel 내의 getAlpha
파라미터:
pixel - 지정된 픽셀
반환값:
지정된 픽셀의 알파 성분의 값

getRGB

public final int getRGB(int pixel)
픽셀의 색성분과 알파 성분을, 디폴트의 RGB 칼라 모델 형식에서 돌려줍니다. 픽셀치는 int 로서 지정됩니다. 픽셀치의 하위 n 비트 (전술의클래스의 기술로 지정)만이 반환값의 계산에 사용됩니다. 반환값은, 미리 곱셈되어 있지 않은 형식이 됩니다.

오버라이드(override):
클래스 ColorModel 내의 getRGB
파라미터:
pixel - 지정된 픽셀
반환값:
지정된 픽셀의 색성분 및 알파 성분
관련 항목:
ColorModel.getRGBdefault()

getDataElements

public Object  getDataElements(int rgb,
                              Object  pixel)
지정된 디폴트의 RGB 칼라 모델의 정수 픽셀 표현에 대해, 이 ColorModel 의 픽셀의 데이터 요소 배열 표현을 돌려줍니다. 이것에 의해, 이 배열은 WritableRaster 객체의 setDataElements 메소드에게 건네집니다. 픽셀 변수가 null 의 경우는, 새로운 배열을 할당할 수 있습니다. pixelnull 가 아닌 경우는,transferType 형의 프리미티브(primitive) 배열일 필요가 있습니다. 그렇지 않은 경우는,ClassCastException 가 throw 됩니다. pixel 가 이 ColorModel 의 픽셀치를 포함할 수 있을 만큼 크지 않은 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. 픽셀 배열이 돌려주어집니다.  

IndexColorModel 는 서브 클래스화할 수 있기 (위해)때문에, 서브 클래스는 이 메소드의 구현을 상속합니다. 서브 클래스가 오버라이드(override) 하지 않는 경우, 지원되어 있지 않은 transferType 를 사용했을 경우는 예외를 throw 합니다.

오버라이드(override):
클래스 ColorModel 내의 getDataElements
파라미터:
rgb - 디폴트 RGB 칼라 모델의 정수형 픽셀 표현
pixel - 지정된 픽셀
반환값:
IndexColorModel 의 지정된 픽셀의 배열 표현
예외:
ClassCastException - pixeltransferType 형의 프리미티브(primitive) 배열이 아닌 경우
ArrayIndexOutOfBoundsException - pixel 가 이 ColorModel 의 픽셀치를 보관 유지하는데 충분한 크기가 아닌 경우
UnsupportedOperationException - transferType 가 무효인 경우
관련 항목:
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 로서 지정됩니다. components 배열이 null 의 경우는,offset + getNumComponents() 요소를 포함한 새로운 배열을 할당할 수 있습니다. 그 components 배열이 돌려주어집니다만,hasAlpha 가 true 를 돌려주는 경우만, 알파 성분이 포함됩니다. 색성분과 알파 성분은,offset 로부터 시작되는 components 배열에 포함됩니다. 이것은, 배열이 이 메소드로 할당할 수 있어도 바뀌지 않습니다. components 배열이 null 가 아니고,offset 를 기점으로 했을 경우에, 색성분과 알파 성분의 모든 것을 보관 유지하는데 충분한 크기가 아닌 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다.

오버라이드(override):
클래스 ColorModel 내의 getComponents
파라미터:
pixel - 지정된 픽셀
components - 지정된 픽셀의 색성분 및 알파 성분을 받는 배열
offset - 색성분 및 알파 성분의 포함을 개시하는, components 배열에의 오프셋(offset)
반환값:
지정된 오프셋(offset) 이후에, 지정된 픽셀의 색성분 및 알파 성분이 포함되고 있는 배열
관련 항목:
ColorModel.hasAlpha() , ColorModel.getNumComponents()

getComponents

public int[] getComponents(Object  pixel,
                           int[] components,
                           int offset)
ColorModel 의 지정된 픽셀에 대해, 표준화되어 있지 않은 색성분과 알파 성분의 배열을 돌려줍니다. 픽셀치는, 객체 참조로서 건네받는 transferType 형의 데이터 요소의 배열에 의해 지정됩니다. pixeltransferType 형의 프리미티브(primitive) 배열이 아닌 경우는,ClassCastException 가 throw 됩니다. pixel 가 이 ColorModel 의 픽셀치를 포함할 수 있을 만큼 크지 않은 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. components 배열이 null 의 경우는,offset + getNumComponents() 요소를 포함한 새로운 배열을 할당할 수 있습니다. 그 components 배열이 돌려주어집니다만,hasAlpha 가 true 를 돌려주는 경우만, 알파 성분이 포함됩니다. 색성분과 알파 성분은,offset 로부터 시작되는 components 배열에 포함됩니다. 이것은, 배열이 이 메소드로 할당할 수 있어도 바뀌지 않습니다. components 배열이 null 가 아니고,offset 를 개시점으로 했을 경우에, 색성분과 알파 성분의 모든 것을 포함할 수 있을 만큼 크지 않은 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다.  

IndexColorModel 는 서브 클래스화할 수 있기 (위해)때문에, 서브 클래스는 이 메소드의 구현을 상속합니다. 서브 클래스가 오버라이드(override) 하지 않는 경우, 지원되어 있지 않은 transferType 를 사용했을 경우는 예외를 throw 합니다.

오버라이드(override):
클래스 ColorModel 내의 getComponents
파라미터:
pixel - 지정된 픽셀
components - 지정된 픽셀의 색성분 및 알파 성분을 받는 배열
offset - 지정된 픽셀의 색성분 및 알파 성분의 포함을 개시하는, components 배열에의 인덱스
반환값:
지정된 오프셋(offset) 이후에, 지정된 픽셀의 색성분 및 알파 성분이 포함되고 있는 배열
예외:
ArrayIndexOutOfBoundsException - pixel 가 이 ColorModel 의 픽셀치를 보관 유지하는데 충분한 크기가 아닌 경우, 혹은 components 배열이 null 는 아니고,offset 를 개시점으로 했을 경우에, 모든 색성분 및 알파 성분을 보관 유지하기에 충분한 크기가 아닌 경우
ClassCastException - pixeltransferType 형의 프리미티브(primitive) 배열이 아닌 경우
UnsupportedOperationException - transferType 가 지원되고 있는 전송형이 아닌 경우
관련 항목:
ColorModel.hasAlpha() , ColorModel.getNumComponents()

getDataElement

public int getDataElement(int[] components,
                          int offset)
지정된, 표준화되어 있지 않은 색성분과 알파 성분의 배열에 대해, 이 ColorModel 의 int 로서 표현되는 픽셀치를 돌려줍니다. components 배열이,offset 를 개시점으로 했을 경우에, 모든 색성분 및 알파 성분을 포함하는데 충분한 크기가 아닌 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. ColorModel 는 서브 클래스화할 수 있기 (위해)때문에, 서브 클래스는 이 메소드의 구현을 상속합니다. 서브 클래스가 오버라이드(override) 하지 않는 경우, 지원되어 있지 않은 transferType 를 사용했을 경우는 예외를 throw 합니다.

오버라이드(override):
클래스 ColorModel 내의 getDataElement
파라미터:
components - 표준화되어 있지 않은 색성분 및 알파 성분의 배열
offset - 색성분 및 알파 성분의 취득을 개시하는, components 의 인덱스
반환값:
지정된 성분에 대응하는, 이 ColorModel 내의 int 픽셀치
예외:
ArrayIndexOutOfBoundsException - components 배열의 크기가 offset 를 기점으로 모든 색성분 및 알파 성분을 보관 유지하는데 충분하지 않은 경우
UnsupportedOperationException - transferType 가 무효인 경우

getDataElements

public Object  getDataElements(int[] components,
                              int offset,
                              Object  pixel)
표준화되어 있지 않은 색성분 및 알파 성분의 배열을 지정해, 이 ColorModel 의 픽셀의 데이터 요소 배열 표현을 돌려줍니다. 이 배열은,WritableRaster 객체의 setDataElements 메소드에 건네줄 수가 있습니다. components 배열이,offset 를 개시점으로 했을 경우에, 모든 색성분 및 알파 성분을 포함하는데 충분한 크기가 아닌 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다. 픽셀 변수가 null 의 경우는, 새로운 배열을 할당할 수 있습니다. pixelnull 가 아닌 경우는,transferType 형의 프리미티브(primitive) 배열일 필요가 있습니다. 그렇지 않은 경우는,ClassCastException 가 throw 됩니다. 픽셀이 이 ColorModel 의 픽셀치를 포함하는데 충분한 크기가 아닌 경우는,ArrayIndexOutOfBoundsException 가 throw 됩니다.  

IndexColorModel 는 서브 클래스화할 수 있기 (위해)때문에, 서브 클래스는 이 메소드의 구현을 상속합니다. 서브 클래스가 오버라이드(override) 하지 않는 경우, 지원되어 있지 않은 transferType 를 사용했을 경우는 예외를 throw 합니다.

오버라이드(override):
클래스 ColorModel 내의 getDataElements
파라미터:
components - 표준화되어 있지 않은 색성분 및 알파 성분의 배열
offset - 색성분 및 알파 성분의 취득을 개시하는, components 의 인덱스
pixel - 색성분 및 알파 성분의 배열을 나타낸다 Object
반환값:
색성분 및 알파 성분의 배열을 나타낸다 Object
예외:
ClassCastException - pixeltransferType 형의 프리미티브(primitive) 배열이 아닌 경우
ArrayIndexOutOfBoundsException - pixel 가 이 ColorModel 의 픽셀치를 보관 유지하는데 충분한 크기가 아닌 경우, 혹은 components 배열이,offset 를 개시점으로 했을 경우, 모든 색성분 및 알파 성분을 보관 유지하는데 충분한 크기가 아닌 경우
UnsupportedOperationException - transferType 가 지원되고 있는 전송형이 아닌 경우
관련 항목:
WritableRaster.setDataElements(int, int, java.lang.Object) , SampleModel.setDataElements(int, int, java.lang.Object, java.awt.image.DataBuffer)

createCompatibleWritableRaster

public WritableRaster  createCompatibleWritableRaster(int w,
                                                     int h)
ColorModel 와 호환성이 있는 데이터 레이아웃 (SampleModel)을 가지는, 지정된 폭과 높이의 WritableRaster 를 생성합니다. 이 메소드는 픽셀마다의 비트가 16 이하의 칼라 모델의 경우에 한정해 기능합니다.  

IndexColorModel 는 서브 클래스화할 수 있기 (위해)때문에, 픽셀마다의 비트수가 16 보다 큰 경우를 지원하는 모든 서브 클래스에서는, 이 메소드를 오버라이드(override) 할 필요가 있습니다.

오버라이드(override):
클래스 ColorModel 내의 createCompatibleWritableRaster
파라미터:
w - 새로운 WritableRaster 에 적용되는 폭
h - 새로운 WritableRaster 에 적용되는 높이
반환값:
지정된 폭과 높이를 가지는 WritableRaster 객체
예외:
UnsupportedOperationException - 픽셀의 비트수가 16 보다 큰 경우
관련 항목:
WritableRaster , SampleModel

isCompatibleRaster

public boolean isCompatibleRaster(Raster  raster)
raster 가 이 ColorModel 와 호환성이 있는 경우에는 true 를 돌려주어, 그렇지 않은 경우에는 false 를 돌려줍니다.

오버라이드(override):
클래스 ColorModel 내의 isCompatibleRaster
파라미터:
raster - 호환성을 판정하는 Raster 객체
반환값:
raster 가 이 ColorModel 와 호환성이 있는 경우는 true, 그렇지 않은 경우는 false

createCompatibleSampleModel

public SampleModel  createCompatibleSampleModel(int w,
                                               int h)
ColorModel 와 호환성이 있는 데이터 레이아웃을 가지는, 지정된 폭과 높이의 SampleModel 를 작성합니다.

오버라이드(override):
클래스 ColorModel 내의 createCompatibleSampleModel
파라미터:
w - 새로운 SampleModel 에 적용되는 폭
h - 새로운 SampleModel 에 적용되는 높이
반환값:
지정된 폭과 높이를 가지는 SampleModel 객체
예외:
IllegalArgumentException - w 또는 h 가 제로 이하의 경우
관련 항목:
SampleModel

isCompatibleSampleModel

public boolean isCompatibleSampleModel(SampleModel  sm)
SampleModel 가 이 ColorModel 와 호환성이 있을지 어떨지를 조사합니다. smnull 의 경우, 이 메소드는 false 를 돌려줍니다.

오버라이드(override):
클래스 ColorModel 내의 isCompatibleSampleModel
파라미터:
sm - 지정된 SampleModel, 또는 null
반환값:
지정된 SampleModel 가 이 ColorModel 와 호환성이 있는 경우는 true, 그렇지 않은 경우는 false
관련 항목:
SampleModel

convertToIntDiscrete

public BufferedImage  convertToIntDiscrete(Raster  raster,
                                          boolean forceARGB)
소스 Raster 의 인덱스를 전개해 계산한 픽셀 데이터 첨부의 Raster 를 가지는, TYPE_INT_ARGB 또는 TYPE_INT_RGB 의 새로운 BufferedImage 를, 이 ColorModel 의 색성분과 알파 성분의 배열을 사용해 돌려줍니다. 소스 Raster 의 각 인덱스치의 하위 n 비트 (전술의클래스의 기술로 지정)만이, 반환되는 이미지의 색이나 알파의 값의 계산에 사용됩니다. forceARGBtrue 의 경우, 이 ColorModel 가 알파 성분 배열 또는 투명 픽셀의 어느 쪽을 가질까에 관계없이, TYPE_INT_ARGB 이미지가 돌려주어집니다.

파라미터:
raster - 지정한Raster
forceARGB - true 의 경우, 반환된다 BufferedImage 는 TYPE_INT_ARGB, 그렇지 않은 경우는 TYPE_INT_RGB
반환값:
지정된 Raster 로 작성한 BufferedImage
예외:
IllegalArgumentException - raster 인수가 이 IndexColorModel 와 호환성이 없는 경우

isValid

public boolean isValid(int pixel)
픽셀이 유효한가 어떤가를 돌려줍니다.

파라미터:
pixel - 지정된 픽셀치
반환값:
pixel 가 유효한 경우는 true, 그렇지 않은 경우는 false
도입된 버젼:
1.3

isValid

public boolean isValid()
모든 픽셀이 유효한가 어떤가를 돌려줍니다.

반환값:
모든 pixel 가 유효한 경우는 true, 그렇지 않은 경우는 false
도입된 버젼:
1.3

getValidPixels

public BigInteger  getValidPixels()
칼라 맵의 유효/무효 픽셀을 나타내는 BigInteger 를 돌려줍니다. BigInteger 치가 그 인덱스로 설정되어 있는 경우, 비트는 유효,BigInteger 가 그 인덱스로 설정되어 있지 않은 경우는 무효입니다. BigInteger 속에서 조회할 수 있는 유효치는 제로로부터 맵 사이즈의 범위 뿐입니다.

반환값:
유효/무효 픽셀을 나타내는 BigInteger
도입된 버젼:
1.3

finalize

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

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

toString

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

오버라이드(override):
클래스 ColorModel 내의 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 도 참조해 주세요.