PackedColorModel (Java Platform SE 6) - xrath.com 에서 번역됨

개요 | 패키지 | 클래스 | 사용 | 계층 트리 | 비추천 API | 색인 | 헬프

JavaTM Platform
Standard Ed. 6

앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드

## java.awt.image
클래스 PackedColorModel

    java.lang.Object
      java.awt.image.ColorModel
          java.awt.image.PackedColorModel

모든 구현된 인터페이스:
  Transparency

직계의 기존의 서브 클래스:
  DirectColorModel

    public abstract class PackedColorModel

extends ColorModel

`PackedColorModel` 클래스는, 색과 알파의 정보를 개별의 샘플로서 나타내, 1 개의 픽셀의 모든 샘플을 int, short, 또는 byte 형의 수로 1 개에 팩 하는 픽셀치를 취급하는 abstract `ColorModel` 클래스입니다. 이 클래스는, 임의 `ColorSpace` 와 함께 사용할 수 있습니다. 픽셀치에 포함되는 칼라 샘플수는,`ColorSpace` 의 색성분의 수로 일치할 필요가 있습니다. 알파 샘플을 1 개 포함할 수가 있습니다. `transferType` 의 형태의 프리미티브(primitive) 배열의 픽셀 표현을 사용하는 메소드에서는, 배열장은 항상 1 입니다. 지원되는 전송 타입은, DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, 및 DataBuffer.TYPE_INT 입니다. 칼라 샘플과 알파 샘플은, 비트 마스크로 나타나는 비트 단위로 배열의 단일의 요소에 포함됩니다. 각 비트 마스크는 연속하고 있을 필요가 있어, 복수의 마스크를 오버랩 시킬 수 없습니다. 같은 마스크가, 다른 메소드에 의해 사용되는 단일의 int 픽셀 표현에 적용됩니다. 다음에, 마스크와 칼라 샘플과 알파 샘플의 대응 관계를 나타냅니다.

- 마스크는 0 으로부터 `getNumComponents` - 1 까지의 인덱스로 식별된다
- 최초의 인덱스 `getNumColorComponents` 는, 칼라 샘플을 나타낸다
- 알파 샘플이 있는 경우는, 마지막 인덱스에 대응한다
- 칼라 인덱스의 순서는 `ColorSpace` 가 지정한다. 일반적으로은 칼라 스페이스 타입의 이름을 반영한다. 예를 들어, TYPE_RGB 의 경우, 인덱스 0 은 빨강, 인덱스 1 은 초록, 인덱스 2 는 파랑에 대응한다

표시 또는 처리를 위해서(때문에) 픽셀치로부터 색성분이나 알파 성분으로 변환할 때는, 샘플과 성분은 1 대 1 의 대응이 됩니다. `PackedColorModel` 는 일반적으로, 팩 된 샘플을 정의하는데 마스크를 사용하는 이미지 데이터와 함께 사용합니다. 예를 들어,`PackedColorModel` 는 `SinglePixelPackedSampleModel` 와 조합해 사용해 `BufferedImage` 를 작성할 수 있습니다. 일반적으로,`SampleModel` 와 `ColorModel` 가 사용하는 마스크는 같은 것입니다. 다만, 마스크가 다른 경우의 픽셀 데이터의 색해석은,`ColorModel` 의 마스크에 따라 행해집니다.

이 클래스에서 사용하는 픽셀치는 항상 단일의 `int` 로서 표현할 수 있기 (위해)때문에, 단일의 `int` 에 의한 픽셀 표현이 이 클래스의 모든 객체로 유효합니다. 이 때문에, 이 표현을 사용하는 메소드는, 무효인 픽셀치가 원인으로 `IllegalArgumentException` 를 throw 할 것은 없습니다.

`PackedColorModel` 의 서브 클래스는 X11 TrueColor 에 유사한 `DirectColorModel` 입니다.

관련 항목:
  `DirectColorModel` , `SinglePixelPackedSampleModel` , `BufferedImage`

필드의 개요

클래스 java.awt.image. ColorModel 로부터 상속된 필드
`pixel_bits , transferType`

인터페이스 java.awt. Transparency 로부터 상속된 필드
`BITMASK , OPAQUE , TRANSLUCENT`

생성자 의 개요
`PackedColorModel (ColorSpace space, int bits, int[] colorMaskArray, int alphaMask, boolean isAlphaPremultiplied, int trans, int transferType)` 칼라 마스크 배열로부터 `PackedColorModel` 를 구축합니다.
`PackedColorModel (ColorSpace space, int bits, int rmask, int gmask, int bmask, int amask, boolean isAlphaPremultiplied, int trans, int transferType)` 지정한 마스크로부터 `PackedColorModel` 를 구축합니다.

메소드의 개요
`SampleModel` | `createCompatibleSampleModel (int w, int h)` 이 `ColorModel` 와 호환성이 있는 데이터 레이아웃을 가지는, 지정된 폭과 높이의 `SampleModel` 를 작성합니다.
`boolean` | `equals (Object obj)` 지정된 `Object` 가 `PackedColorModel` 의 인스턴스이며, 이 `PackedColorModel` 와 동일한지 어떤지를 판정합니다.
`WritableRaster` | `getAlphaRaster (WritableRaster raster)` 이미지의 알파 채널을 표현하는 `WritableRaster` 를, 입력된 `WritableRaster` 로부터 추출해 돌려줍니다.
`int` | `getMask (int index)` 지정된 칼라 샘플이나 알파 샘플이, 픽셀 표현내의 어느 비트군에게 포함되고 있는지를 나타내는 마스크를 돌려줍니다.
`int[]` | `getMasks ()` 픽셀 표현의 어느 비트군에게 칼라 샘플과 알파 샘플이 포함되고 있는지를 나타내는 마스크 배열을 돌려줍니다.
`boolean` | `isCompatibleSampleModel (SampleModel sm)` `SampleModel` 가 이 `ColorModel` 와 호환성이 있을지 어떨지를 조사합니다.

클래스 java.awt.image. ColorModel 로부터 상속된 메소드
`coerceData , createCompatibleWritableRaster , finalize , getAlpha , getAlpha , getBlue , getBlue , getColorSpace , getComponents , getComponents , getComponentSize , getComponentSize , getDataElement , getDataElement , getDataElements , getDataElements , getDataElements , getGreen , getGreen , getNormalizedComponents , getNormalizedComponents , getNumColorComponents , getNumComponents , getPixelSize , getRed , getRed , getRGB , getRGB , getRGBdefault , getTransferType , getTransparency , getUnnormalizedComponents , hasAlpha , hashCode , isAlphaPremultiplied , isCompatibleRaster , toString`

클래스 java.lang. Object 로부터 상속된 메소드
`clone , getClass , notify , notifyAll , wait , wait , wait`

생성자 의 상세

### PackedColorModel

    public PackedColorModel(ColorSpace  space,
                            int bits,
                            int[] colorMaskArray,
                            int alphaMask,
                            boolean isAlphaPremultiplied,
                            int trans,
                            int transferType)

  칼라 마스크 배열로부터 `PackedColorModel` 를 구축합니다. 이 배열은, 각 칼라 샘플, 및 알파 마스크가,`int` 픽셀 표현의 어느 비트군에게 포함되고 있는지를 지정합니다. 색성분은, 지정된 `ColorSpace` 에 들어갑니다. `colorMaskArray` 의 길이는,`ColorSpace` 내의 성분수가 됩니다. 각 마스크내의 모든 비트는 연속하고 있어,`int` 픽셀 표현의 지정 자리수의 최하정도 비트에 들어갈 필요가 있습니다. `alphaMask` 가 0 의 경우는, 알파는 없습니다. 알파가 있는 경우는,`boolean` 형의 `isAlphaPremultiplied` 가 픽셀치의 칼라 샘플과 알파 샘플의 해석 방법을 지정합니다. `boolean` 형이 `true` 의 경우, 칼라 샘플은 알파 샘플로 곱셈된 것이라고 보여집니다. 투명도 `trans` 는, 이 칼라 모델로 표현할 수 있는 알파치를 나타냅니다. 전송 타입은, 픽셀치를 표현하기 위해서 사용하는 프리미티브(primitive) 배열의 형태입니다.

  파라미터:
    `space` - 지정된 `ColorSpace`
    `bits` - 픽셀치의 비트수
    `colorMaskArray` - 픽셀의 비트치를 나타내는 마스크를 지정하는 배열. 픽셀치는 색성분을 나타내는
    `alphaMask` - 픽셀의 비트치를 나타내는 마스크를 지정한다. 픽셀치는 알파 성분을 나타내는
    `isAlphaPremultiplied` - 칼라 샘플이 알파 샘플에 의해 미리 곱셈되고 있는 경우는 `true`, 그렇지 않은 경우는 `false`
    `trans` - 이 칼라 모델로 나타낼 수가 있는 알파치를 지정하는
    `transferType` - 픽셀치를 나타내는데 사용되는 배열의 형태
  예외:
    `IllegalArgumentException` - `bits` 가 1 보다 작은지, 32 보다 큰 경우

### PackedColorModel

    public PackedColorModel(ColorSpace  space,
                            int bits,
                            int rmask,
                            int gmask,
                            int bmask,
                            int amask,
                            boolean isAlphaPremultiplied,
                            int trans,
                            int transferType)

  지정한 마스크로부터 `PackedColorModel` 를 구축합니다. 마스크는, 알파, 적, 록, 청의 각 칼라 샘플이,`int` 픽셀 표현의 어느 비트군에게 포함되고 있는지를 지정합니다. 색성분은, ColorSpace.TYPE_RGB 타입의 지정된 `ColorSpace` 에 들어갑니다. 각 마스크내의 모든 비트는 연속하고 있어,`int` 픽셀 표현의 지정 자리수의 최하정도 비트에 들어갈 필요가 있습니다. `amask` 가 0 의 경우는, 알파는 없습니다. 알파가 있는 경우는,`boolean` 형의 `isAlphaPremultiplied` 가 픽셀치의 칼라 샘플과 알파 샘플의 해석 방법을 지정합니다. `boolean` 형이 `true` 의 경우, 칼라 샘플은 알파 샘플로 곱셈된 것이라고 보여집니다. 투명도 `trans` 는, 이 칼라 모델로 표현할 수 있는 알파치를 나타냅니다. 전송 타입은, 픽셀치를 표현하기 위해서 사용하는 프리미티브(primitive) 배열의 형태입니다.

  파라미터:
    `space` - 지정된 `ColorSpace`
    `bits` - 픽셀치의 비트수
    `rmask` - 픽셀의 비트치를 나타내는 마스크를 지정한다. 픽셀치는 빨강의 색성분을 나타내는
    `gmask` - 픽셀의 비트치를 나타내는 마스크를 지정한다. 픽셀치는 초록의 색성분을 나타내는
    `bmask` - 픽셀의 비트치를 나타내는 마스크를 지정한다. 픽셀치는 파랑의 색성분을 나타내는
    `amask` - 픽셀의 비트치를 나타내는 마스크를 지정한다. 픽셀치는 알파 성분을 나타내는
    `isAlphaPremultiplied` - 칼라 샘플이 알파 샘플에 의해 미리 곱셈되고 있는 경우는 `true`, 그렇지 않은 경우는 `false`
    `trans` - 이 칼라 모델로 나타낼 수가 있는 알파치를 지정하는
    `transferType` - 픽셀치를 나타내는데 사용되는 배열의 형태
  예외:
    `IllegalArgumentException` - `space` 가 TYPE_RGB 공간이 아닌 경우
  관련 항목:
    `ColorSpace`

메소드의 상세

### getMask

    public final int getMask(int index)

  지정된 칼라 샘플이나 알파 샘플이, 픽셀 표현내의 어느 비트군에게 포함되고 있는지를 나타내는 마스크를 돌려줍니다. 칼라 샘플에서는,`index` 는 칼라 스페이스의 칼라 샘플명의 배치에 대응합니다. 이 때문에, CMYK ColorSpace 의 `index` 0 은 Cyan 에,`index` 1 은 Magenta 에 대응합니다. 알파가 있는 경우, 알파 `index` 는 다음과 같이 됩니다.

            alphaIndex = numComponents() - 1;

  파라미터:
    `index` - 지정된 칼라 샘플 또는 알파 샘플
  반환값:
    `int` 픽셀 표현의 어느 비트가 `index` 가 지정하는 칼라 샘플 또는 알파 샘플을 보관 유지하고 있을까를 가리키는 마스크
  예외:
    `ArrayIndexOutOfBoundsException` - `index` 가 이 `PackedColorModel` 의 성분수마이너스 1 보다 큰지,`index` 가 0 보다 작은 경우

### getMasks

    public final int[] getMasks()

  픽셀 표현의 어느 비트군에게 칼라 샘플과 알파 샘플이 포함되고 있는지를 나타내는 마스크 배열을 돌려줍니다.

  반환값:
    `int` 픽셀 표현의 어느 비트군에게, 칼라 샘플 또는 알파 샘플이 포함되고 있는지를 나타내는 마스크 배열

### createCompatibleSampleModel

    public SampleModel  createCompatibleSampleModel(int w,
                                                   int h)

  이 `ColorModel` 와 호환성이 있는 데이터 레이아웃을 가지는, 지정된 폭과 높이의 `SampleModel` 를 작성합니다.

  오버라이드(override):
    클래스 `ColorModel` 내의 `createCompatibleSampleModel`
  파라미터:
    `w` - 기술된 이미지 데이터의 영역의 폭 (픽셀수)
    `h` - 기술된 이미지 데이터의 영역의 높이 (픽셀수)
  반환값:
    새롭게 작성된 `SampleModel`
  예외:
    `IllegalArgumentException` - `w` 또는 `h` 가 0 이하인 경우
  관련 항목:
    `SampleModel`

### isCompatibleSampleModel

    public boolean isCompatibleSampleModel(SampleModel  sm)

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

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

### getAlphaRaster

    public WritableRaster  getAlphaRaster(WritableRaster  raster)

  이미지의 알파 채널을 표현하는 `WritableRaster` 를, 입력된 `WritableRaster` 로부터 추출해 돌려줍니다. 이 메소드는, 이 `ColorModel` 에 관련한 `WritableRaster` 객체에 알파 밴드가 있으면, 그 알파 밴드를 이미지 데이터의 최종 밴드로서 포함하고 있다고 봅니다. 이 `ColorModel` 에 관련한 공간 알파 채널이 그 밖에 없는 경우는,`null` 를 돌려줍니다. 이 메소드는 새로운 `WritableRaster` 를 작성합니다만, 데이터 배열은 공유하게 됩니다.

  오버라이드(override):
    클래스 `ColorModel` 내의 `getAlphaRaster`
  파라미터:
    `raster` - 이미지가 포함되고 있는 `WritableRaster`
  반환값:
    `raster` 에 포함된 이미지의 알파 채널을 나타내는 `WritableRaster`

### equals

    public boolean equals(Object  obj)

  지정된 `Object` 가 `PackedColorModel` 의 인스턴스이며, 이 `PackedColorModel` 와 동일한지 어떤지를 판정합니다.

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

개요 | 패키지 | 클래스 | 사용 | 계층 트리 | 비추천 API | 색인 | 헬프

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 도 참조해 주세요.