Rectangle2D 클래스
Rectangle2D 클래스
Rectangle2D 클래스는 위치 (x,y)와 크기 (w × h)로 정의된 사각형을 설명해요. 이 클래스는 2D 사각형을 저장하는 모든 객체의 추상 슈퍼클래스일 뿐이에요. 좌표의 실제 저장 표현은 하위 클래스에 맡겨져요.
본문
사각형은 왼쪽 위 모서리 위치와 너비·높이로 정의돼요. Rectangle2D는 RectangularShape를 확장하며, 교차·조합·히트 테스트 등 사각형 전용 기하 연산을 제공해요.
public abstract class Rectangle2D
extends RectangularShape
내부 클래스
Rectangle2D.Float— 좌표를float로 저장하는 구현Rectangle2D.Double— 좌표를double로 저장하는 구현
주요 메서드
getX()/getY()/getWidth()/getHeight()— 위치와 크기를 반환해요.setRect(...)— 사각형을 설정하는 여러 오버로드가 있어요.getMinX()/getMaxX()/getMinY()/getMaxY()— 경계 값을 반환해요.getCenterX()/getCenterY()— 중심을 반환해요.getBounds2D()— 경계 사각형을 반환해요.intersects(...)/intersectsLine(...)— 교차 여부를 판단해요.createIntersection(Rectangle2D)/createUnion(Rectangle2D)— 교집합·합집합 사각형을 만들어요.outcode(...)— 점이 사각형의 어느 바깥 영역에 있는지 판단해요.contains(...)— 포함 여부(히트 테스트)를 확인해요.
사용 예
Rectangle2D r1 = new Rectangle2D.Double(0, 0, 10, 10);
Rectangle2D r2 = new Rectangle2D.Double(5, 5, 10, 10);
Rectangle2D inter = r1.createIntersection(r2); // (5,5,5,5)
영역 교차·포함 검사, 그리기·채우기, 충돌 감지 등에 널리 사용돼요.