TexturePaint — 텍스처 채우기
TexturePaint — 텍스처 채우기
TexturePaint는 BufferedImage로 지정된 텍스처로 Shape를 채우는 방법을 제공해요.
본문
public class TexturePaint extends Object implements Paint
BufferedImage 객체의 크기는 작아야 해요. TexturePaint 객체가 BufferedImage 데이터를 복사하기 때문이에요. 생성 시 텍스처는 사용자 공간에 지정된 Rectangle2D의 왼쪽 위 모서리에 고정(anchor)돼요.
장치 공간의 텍스처는 사용자 공간에서 지정된 Rectangle2D를 무한히 반복하고 각 반복된 Rectangle2D에 BufferedImage를 매핑하는 방식으로 계산돼요.
생성자
TexturePaint(BufferedImage txtr, Rectangle2D anchor)—TexturePaint객체를 만들어요.
주요 메서드
getImage()— 도형을 채우는 데 사용되는BufferedImage텍스처를 반환해요.getAnchorRect()— 텍스처를 위치시키고 크기를 조절하는 앵커 사각형의 복사본을 반환해요.createContext(...)— 색 패턴을 생성하는PaintContext를 반환해요.
BufferedImage img = new BufferedImage(8, 8, BufferedImage.TYPE_INT_ARGB);
// draw pattern into img ...
TexturePaint tp = new TexturePaint(img, new Rectangle2D.Double(0, 0, 8, 8));
g2.setPaint(tp);
g2.fill(rect);
타일처럼 반복되는 패턴을 도형에 채울 때 TexturePaint를 사용해요.