JavaTM Platform
Standard Ed. 6

java.awt.geom
클래스 Rectangle2D

java.lang.Object 
  상위를 확장 java.awt.geom.RectangularShape 
      상위를 확장 java.awt.geom.Rectangle2D
모든 구현된 인터페이스:
Shape , Cloneable
직계의 기존의 서브 클래스:
Rectangle , Rectangle2D.Double , Rectangle2D.Float


public abstract class Rectangle2D
extends RectangularShape

Rectangle2D 클래스는, 위치 (x, y) 및 사이즈 (w x h) 로 정의되는 구형을 기술합니다.  

이 클래스는, 2D 구형을 포함하는 모든 객체의 추상 슈퍼 클래스에 지나지 않습니다. 좌표의 실제의 기억역표현은 서브 클래스에 맡길 수 있습니다.

도입된 버젼:
1.2

상자의 클래스의 개요
static class Rectangle2D.Double
          Double 클래스는, double 좌표로 지정되는 구형을 정의합니다.
static class Rectangle2D.Float
          Float 클래스는, float 좌표로 지정되는 구형을 정의합니다.
 
필드의 개요
static int OUT_BOTTOM
          점이 이 Rectangle2D 아래에 있는 것을 나타내는 비트 마스크입니다.
static int OUT_LEFT
          점이 이 Rectangle2D 의 왼쪽에 있는 것을 나타내는 비트 마스크입니다.
static int OUT_RIGHT
          점이 이 Rectangle2D 의 오른쪽에 있는 것을 나타내는 비트 마스크입니다.
static int OUT_TOP
          점이 이 Rectangle2D 위에 있는 것을 나타내는 비트 마스크입니다.
 
생성자 의 개요
protected Rectangle2D ()
          이것은, 인스턴스를 직접은 생성할 수 없는 abstract 클래스입니다.
 
메소드의 개요
 void add (double newx, double newy)
          배정밀도의 newx 인수 및 newy 인수로 지정된 점을 이 Rectangle2D 에 추가합니다.
 void add (Point2D  pt)
          이 Rectangle2DPoint2D 객체의 pt 를 추가합니다.
 void add (Rectangle2D  r)
          이 Rectangle2DRectangle2D 객체를 추가합니다.
 boolean contains (double x, double y)
          지정된 좌표가 Shape 의 경계내에 있을지 어떨지를 판정합니다.
 boolean contains (double x, double y, double w, double h)
          Shape 의 내부 영역이, 지정된 구형 영역을 완전하게 포함 할지 어떨지를 판정합니다.
abstract  Rectangle2D createIntersection (Rectangle2D  r)
          이 Rectangle2D 와 지정된 Rectangle2D 의 공통 부분을 나타내는 새로운 Rectangle2D 객체를 돌려줍니다.
abstract  Rectangle2D createUnion (Rectangle2D  r)
          이 Rectangle2D 와 지정된 Rectangle2D 의 화집합을 나타내는 새로운 Rectangle2D 객체를 돌려줍니다.
 boolean equals (Object  obj)
          지정된 Object 가 이 Rectangle2D 와 동일한지 어떤지를 판정합니다.
 Rectangle2D getBounds2D ()
          고정밀도로 getBounds 메소드보다 정밀한,Shape 의 바운딩 박스를 돌려줍니다.
 PathIterator getPathIterator (AffineTransform  at)
          이 Rectangle2D 의 경계를 정의하는 반복 객체를 돌려줍니다.
 PathIterator getPathIterator (AffineTransform  at, double flatness)
          평탄화 된 Rectangle2D 의 경계를 정의하는 반복 객체를 돌려줍니다.
 int hashCode ()
          이 Rectangle2D 의 해시 코드를 돌려줍니다.
static void intersect (Rectangle2D  src1, Rectangle2D  src2, Rectangle2D  dest)
          지정된 원의 Rectangle2D 객체의 페어의 공통 부분을 잡아, 그 결과가 지정된 전송처 Rectangle2D 객체에 포함합니다.
 boolean intersects (double x, double y, double w, double h)
          Shape 의 내부 영역이, 지정된 구형 영역의 내부 영역과 교차할지 어떨지를 판정합니다.
 boolean intersectsLine (double x1, double y1, double x2, double y2)
          지정된 라인 세그먼트(segment)가, 이 Rectangle2D 의 내부와 교차할지 어떨지를 판정합니다.
 boolean intersectsLine (Line2D  l)
          지정된 라인 세그먼트(segment)가, 이 Rectangle2D 의 내부와 교차할지 어떨지를 판정합니다.
abstract  int outcode (double x, double y)
          이 Rectangle2D 를 기준에, 지정된 좌표가 있는 장소를 판정합니다.
 int outcode (Point2D  p)
          이 Rectangle2D 를 기준에, 지정된 Point2D 가 있는 장소를 판정합니다.
 void setFrame (double x, double y, double w, double h)
          이 Rectangle2D 의 외부 경계의 위치 및 사이즈를, 지정된 구형치로 설정합니다.
abstract  void setRect (double x, double y, double w, double h)
          이 Rectangle2D 의 위치 및 사이즈를, 지정된 double 형의 값으로 설정합니다.
 void setRect (Rectangle2D  r)
          이 Rectangle2D 를, 지정된 Rectangle2D 와 같게 되도록(듯이) 설정합니다.
static void union (Rectangle2D  src1, Rectangle2D  src2, Rectangle2D  dest)
          원의 Rectangle2D 객체의 페어를 결합해, 그 결과가 지정된 전송처 Rectangle2D 객체에 포함합니다.
 
클래스 java.awt.geom. RectangularShape 로부터 상속된 메소드
clone , contains , contains , getBounds , getCenterX , getCenterY , getFrame , getHeight , getMaxX , getMaxY , getMinX , getMinY , getWidth , getX , getY , intersects , isEmpty , setFrame , setFrame , setFrameFromCenter , setFrameFromCenter , setFrameFromDiagonal , setFrameFromDiagonal
 
클래스 java.lang. Object 로부터 상속된 메소드
finalize , getClass , notify , notifyAll , toString , wait , wait , wait
 

필드의 상세

OUT_LEFT

public static final int OUT_LEFT
점이 이 Rectangle2D 의 왼쪽에 있는 것을 나타내는 비트 마스크입니다.

도입된 버젼:
1.2
관련 항목:
정수 필드치

OUT_TOP

public static final int OUT_TOP
점이 이 Rectangle2D 위에 있는 것을 나타내는 비트 마스크입니다.

도입된 버젼:
1.2
관련 항목:
정수 필드치

OUT_RIGHT

public static final int OUT_RIGHT
점이 이 Rectangle2D 의 오른쪽에 있는 것을 나타내는 비트 마스크입니다.

도입된 버젼:
1.2
관련 항목:
정수 필드치

OUT_BOTTOM

public static final int OUT_BOTTOM
점이 이 Rectangle2D 아래에 있는 것을 나타내는 비트 마스크입니다.

도입된 버젼:
1.2
관련 항목:
정수 필드치
생성자 의 상세

Rectangle2D

protected Rectangle2D()
이것은, 인스턴스를 직접은 생성할 수 없는 abstract 클래스입니다. 인스턴스 생성을 위해서(때문에)는 형태 고유의 구현 서브 클래스가 준비되어 있어 이러한 서브 클래스에 의해, 아래와 같은 각종 액세스용 메소드에 필요한 정보를 포함하기 위한 형식이 다수 제공됩니다.

도입된 버젼:
1.2
관련 항목:
Rectangle2D.Float , Rectangle2D.Double , Rectangle
메소드의 상세

setRect

public abstract void setRect(double x,
                             double y,
                             double w,
                             double h)
Rectangle2D 의 위치 및 사이즈를, 지정된 double 형의 값으로 설정합니다.

파라미터:
x - 이 Rectangle2D 의 좌상구석의 X 좌표
y - 이 Rectangle2D 의 좌상구석의 Y 좌표
w - 이 Rectangle2D 의 폭
h - 이 Rectangle2D 의 높이
도입된 버젼:
1.2

setRect

public void setRect(Rectangle2D  r)
Rectangle2D 를, 지정된 Rectangle2D 와 같게 되도록(듯이) 설정합니다.

파라미터:
r - 지정된 Rectangle2D
도입된 버젼:
1.2

intersectsLine

public boolean intersectsLine(double x1,
                              double y1,
                              double x2,
                              double y2)
지정된 라인 세그먼트(segment)가, 이 Rectangle2D 의 내부와 교차할지 어떨지를 판정합니다.

파라미터:
x1 - 지정된 라인 세그먼트(segment)의 시점의 X 좌표
y1 - 지정된 라인 세그먼트(segment)의 시점의 Y 좌표
x2 - 지정된 라인 세그먼트(segment)의 종점의 X 좌표
y2 - 지정된 라인 세그먼트(segment)의 종점의 Y 좌표
반환값:
지정된 라인 세그먼트(segment)가 이 Rectangle2D 의 내부와 교차하는 경우는 true, 그렇지 않은 경우는 false
도입된 버젼:
1.2

intersectsLine

public boolean intersectsLine(Line2D  l)
지정된 라인 세그먼트(segment)가, 이 Rectangle2D 의 내부와 교차할지 어떨지를 판정합니다.

파라미터:
l - 이 Rectangle2D 의 내부와 교차할지 어떨지를 판정하는 지정된 Line2D
반환값:
지정된 Line2D 가 이 Rectangle2D 의 내부와 교차하는 경우는 true, 그렇지 않은 경우는 false
도입된 버젼:
1.2

outcode

public abstract int outcode(double x,
                            double y)
Rectangle2D 를 기준에, 지정된 좌표가 있는 장소를 판정합니다. 이 메소드는, 이 Rectangle2D 의 각변에 대해, 지정된 좌표가 이 Rectangle2D 외의 옆과 같은 사이드에게 있을지 어떨지를 나타내는 적절한 마스크치의 2 항논리합을 계산합니다.

파라미터:
x - 지정된 X 좌표
y - 지정된 Y 좌표
반환값:
모든 적절한 OUT 코드의 논리합
도입된 버젼:
1.2
관련 항목:
OUT_LEFT , OUT_TOP , OUT_RIGHT , OUT_BOTTOM

outcode

public int outcode(Point2D  p)
Rectangle2D 를 기준에, 지정된 Point2D 가 있는 장소를 판정합니다. 이 메소드는, 이 Rectangle2D 의 각변에 대해, 지정된 Point2D 가 이 Rectangle2D 외의 옆과 같은 사이드에게 있을지 어떨지를 나타내는 적절한 마스크치의 2 항논리합을 계산합니다.

파라미터:
p - 지정된 Point2D
반환값:
모든 적절한 OUT 코드의 논리합
도입된 버젼:
1.2
관련 항목:
OUT_LEFT , OUT_TOP , OUT_RIGHT , OUT_BOTTOM

setFrame

public void setFrame(double x,
                     double y,
                     double w,
                     double h)
Rectangle2D 의 외부 경계의 위치 및 사이즈를, 지정된 구형치로 설정합니다.

정의:
클래스 RectangularShape 내의 setFrame
파라미터:
x - 이 Rectangle2D 의 좌상구석의 X 좌표
y - 이 Rectangle2D 의 좌상구석의 Y 좌표
w - 이 Rectangle2D 의 폭
h - 이 Rectangle2D 의 높이
도입된 버젼:
1.2
관련 항목:
RectangularShape.getFrame()

getBounds2D

public Rectangle2D  getBounds2D()
고정밀도로 getBounds 메소드보다 정밀한,Shape 의 바운딩 박스를 돌려줍니다. 반환된 Rectangle2DShape 를 둘러싸는 최소의 바운딩 박스이다고는 할 수 없습니다. 나타난 Rectangle2D 내에 Shape 가 완전하게 수습된다고 할 뿐입니다. 반환값을, 배정밀도치를 사용해 치수를 포함하는 Rectangle2D 의 인스턴스로 할 수도 있기 (위해)때문에, 이 메소드에 의해 반환되는 바운딩 박스는, 일반적으로,getBounds 메소드에 의해 반환되는 바운딩 박스보다 딱 한 것이 되어, 오버플로우를 위해서(때문에) 실패할 것은 없습니다.

반환값:
Shape 의 고정밀도 바운딩 박스를 나타낸다 Rectangle2D 의 인스턴스
도입된 버젼:
1.2
관련 항목:
Shape.getBounds()

contains

public boolean contains(double x,
                        double y)
지정된 좌표가 Shape 의 경계내에 있을지 어떨지를 판정합니다.

파라미터:
x - 판정 대상의 지정된 X 좌표
y - 판정 대상의 지정된 Y 좌표
반환값:
지정된 좌표가 Shape 의 경계내에 있는 경우는 true, 그렇지 않은 경우는 false
도입된 버젼:
1.2

intersects

public boolean intersects(double x,
                          double y,
                          double w,
                          double h)
Shape 의 내부 영역이, 지정된 구형 영역의 내부 영역과 교차할지 어떨지를 판정합니다. Shape 의 내부 영역과 지정된 구형 영역의 양쪽 모두에 포함되는 점이 있는 경우, 구형 영역은 Shape 와 교차하고 있다고 보여집니다.  

Shape.intersects() 메소드를 사용하면(자), 다음과 같은 경우에 Shape 구현은 true 를 돌려주는 일이 있습니다.

즉,Shape 에 따라서는, 구형 영역이 Shape 와 교차하지 않는 경우에서도 이 메소드가 true 를 돌려주는 일이 있습니다. Area 클래스는, 대부분의 Shape 객체의 기하학적인 공통 부분의 것보다 정밀한 계산을 실시하기 (위해)때문에, 보다 정확한 결과가 필요한 경우에 사용할 수 있습니다.

파라미터:
x - 지정된 구형 영역의 좌상구석의 X 좌표
y - 지정된 구형 영역의 좌상구석의 Y 좌표
w - 지정된 구형 영역의 폭
h - 지정된 구형 영역의 높이
반환값:
Shape 의 내부 영역과 구형 영역의 내부 영역이 교차하는 경우, 또는 교차할 가능성이 높지만, 부하가 너무 커 공통 부분의 계산을 실시할 수 없는 경우도 true, 그렇지 않은 경우는 false
도입된 버젼:
1.2
관련 항목:
Area

contains

public boolean contains(double x,
                        double y,
                        double w,
                        double h)
Shape 의 내부 영역이, 지정된 구형 영역을 완전하게 포함 할지 어떨지를 판정합니다. 구형 영역 전체가 Shape 에 포함 되고 있다고 보여지기 위해서(때문에)는, 구형 영역내에 있는 모든 좌표가 Shape 내에 위치하고 있을 필요가 있습니다.  

Shape.contains() 메소드를 사용하면(자), 다음과 같은 경우에 Shape 구현은 false 를 돌려주는 일이 있습니다.

즉,Shape 에 따라서는,Shape 가 구형 영역을 포함 하는 경우에서도 이 메소드가 false 를 돌려주는 일이 있습니다. Area 클래스는, 대부분의 Shape 객체의 것보다 정밀한 기하학적 계산을 실시하기 (위해)때문에, 보다 정확한 결과가 필요한 경우에 사용할 수 있습니다.

파라미터:
x - 지정된 구형 영역의 좌상구석의 X 좌표
y - 지정된 구형 영역의 좌상구석의 Y 좌표
w - 지정된 구형 영역의 폭
h - 지정된 구형 영역의 높이
반환값:
Shape 의 내부 영역이, 지정된 구형 영역을 완전하게 포함 하는 경우는 true, 그렇지 않은 경우는 false. 또,Shape 가 구형 영역을 포함 해, intersects 메소드가 true 를 돌려주어, 부하가 너무 커 포함의 계산을 실시할 수 없는 경우도 false
도입된 버젼:
1.2
관련 항목:
Area , Shape.intersects(double, double, double, double)

createIntersection

public abstract Rectangle2D  createIntersection(Rectangle2D  r)
Rectangle2D 와 지정된 Rectangle2D 의 공통 부분을 나타내는 새로운 Rectangle2D 객체를 돌려줍니다.

파라미터:
r - 이 Rectangle 와 서로 겹친다 Rectangle2D
반환값:
지정된 Rectangle2D 와 이 Rectangle2D 의 양쪽 모두에 포함된다 최대의 Rectangle2D
도입된 버젼:
1.2

intersect

public static void intersect(Rectangle2D  src1,
                             Rectangle2D  src2,
                             Rectangle2D  dest)
지정된 원의 Rectangle2D 객체의 페어의 공통 부분을 잡아, 그 결과가 지정된 전송처 Rectangle2D 객체에 포함합니다. 원의 구형의 1 개를 전송 먼저 해, 3 번째의 Rectangle2D 객체를 작성하지 않게 할 수도 있습니다만, 그 경우, 원의 구형의 원의 점은 이 메소드로 덧쓰기됩니다.

파라미터:
src1 - 교차시키는 최초의 Rectangle2D 객체의 페어
src2 - 교차시키는 2 번째의 Rectangle2D 객체의 페어
dest - src1src2 의 공통 부분을 보관 유지한다 Rectangle2D
도입된 버젼:
1.2

createUnion

public abstract Rectangle2D  createUnion(Rectangle2D  r)
Rectangle2D 와 지정된 Rectangle2D 의 화집합을 나타내는 새로운 Rectangle2D 객체를 돌려줍니다.

파라미터:
r - 이 Rectangle 와 결합된다 Rectangle2D
반환값:
지정된 Rectangle2D 와 이 Rectangle2D 의 양쪽 모두를 포함한다 최소의 Rectangle2D
도입된 버젼:
1.2

union

public static void union(Rectangle2D  src1,
                         Rectangle2D  src2,
                         Rectangle2D  dest)
원의 Rectangle2D 객체의 페어를 결합해, 그 결과가 지정된 전송처 Rectangle2D 객체에 포함합니다. 원의 구형의 1 개를 전송 먼저 해, 3 번째의 Rectangle2D 객체를 작성하지 않게 할 수도 있습니다만, 그 경우, 원의 구형의 원의 점은 이 메소드로 덧쓰기됩니다.

파라미터:
src1 - 결합시키는 최초의 Rectangle2D 객체의 페어
src2 - 결합시키는 2 번째의 Rectangle2D 객체의 페어
dest - src1src2 의 화집합의 결과를 보관 유지한다 Rectangle2D
도입된 버젼:
1.2

add

public void add(double newx,
                double newy)
배정밀도의 newx 인수 및 newy 인수로 지정된 점을 이 Rectangle2D 에 추가합니다. 그 Rectangle2D 는, 원의 Rectangle2D 와 지정된 점의 양쪽 모두를 포함한 최소의 Rectangle2D 가 됩니다.  

점을 추가한 뒤, 추가된 점을 인수로 하는 contains 의 호출은, 반드시 true 를 돌려주지 않습니다. contains 메소드는, 구형의 우단 또는 하단에 있는 점에 대해서는 true 를 돌려주지 않습니다. 그 때문에, 추가된 점이 확대된 구형의 좌단 또는 하단에 있는 경우,contains 는 그 점에 도착해 false 를 돌려줍니다.

파라미터:
newx - 새로운 점의 X 좌표
newy - 새로운 점의 Y 좌표
도입된 버젼:
1.2

add

public void add(Point2D  pt)
Rectangle2DPoint2D 객체의 pt 를 추가합니다. 그 Rectangle2D 는, 원의 Rectangle2D 와 지정된 Point2D 의 양쪽 모두를 포함한 최소의 Rectangle2D 가 됩니다.  

점을 추가한 뒤, 추가된 점을 인수로 하는 contains 의 호출은, 반드시 true 를 돌려주지 않습니다. contains 메소드는, 구형의 우단 또는 하단에 있는 점에 대해서는 true 를 돌려주지 않습니다. 그 때문에, 추가된 점이 확대된 구형의 좌단 또는 하단에 있는 경우,contains 는 그 점에 도착해 false 를 돌려줍니다.

파라미터:
pt - 이 Rectangle2D 에 추가되는 새롭다 Point2D
도입된 버젼:
1.2

add

public void add(Rectangle2D  r)
Rectangle2DRectangle2D 객체를 추가합니다. 그 결과의 Rectangle2D 는, 2 개의 Rectangle2D 객체의 화집합이 됩니다.

파라미터:
r - 이 Rectangle2D 에 추가한다 Rectangle2D
도입된 버젼:
1.2

getPathIterator

public PathIterator  getPathIterator(AffineTransform  at)
Rectangle2D 의 경계를 정의하는 반복 객체를 돌려줍니다. 이 클래스의 반복자는, multi-thread에 대해서 안전합니다. 즉 이 Rectangle2D 클래스는, 이 Rectangle2D 객체의 기하학적 도형에 대한 변경이, 이 기하학적 도형에 대해 벌써 진행중의 반복 처리에 영향을 주지 않는 것을 보증합니다.

파라미터:
at - 반복 처리로 돌려주어질 때 좌표에 적용된다 옵션의 AffineTransform, 변환되어 있지 않은 좌표가 필요한 경우는 null
반환값:
Rectangle2D 의 윤곽의 기하학적 도형을 한 번에 1 세그먼트(segment)씩 돌려준다 PathIterator
도입된 버젼:
1.2

getPathIterator

public PathIterator  getPathIterator(AffineTransform  at,
                                    double flatness)
평탄화 된 Rectangle2D 의 경계를 정의하는 반복 객체를 돌려줍니다. 구형은 벌써 평탄하기 때문에,flatness 파라미터는 무시되는 이 클래스의 반복자는, multi-thread에 대해서 안전합니다. 즉 이 Rectangle2D 클래스는, 이 Rectangle2D 객체의 기하학적 도형에 대한 변경이, 이 기하학적 도형에 대해 벌써 진행중의 반복 처리에 영향을 주지 않는 것을 보증합니다.

정의:
인터페이스 Shape 내의 getPathIterator
오버라이드(override):
클래스 RectangularShape 내의 getPathIterator
파라미터:
at - 반복 처리로 돌려주어질 때 좌표에 적용된다 옵션의 AffineTransform, 변환되어 있지 않은 좌표가 필요한 경우는 null
flatness - 곡선 세그먼트(segment)를 근사 하기 위해서 사용된다 라인 세그먼트(segment)가, 원의 곡선상의 임의의 점으로부터 떨어질 수가 있는 최대의 거리. 구형은 벌써 평탄하기 때문에, flatness 파라미터는 무시된다
반환값:
Rectangle2D 의 윤곽의 기하학적 도형을 한 번에 1 세그먼트(segment)씩 돌려준다 PathIterator
도입된 버젼:
1.2

hashCode

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

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

equals

public boolean equals(Object  obj)
지정된 Object 가 이 Rectangle2D 와 동일한지 어떤지를 판정합니다. 지정된 Object 는,Rectangle2D 의 인스턴스이며, 위치 및 사이즈가 이 Rectangle2D 와 같은 경우에, 이 Rectangle2D 와 동일하다고 보여집니다.

오버라이드(override):
클래스 Object 내의 equals
파라미터:
obj - 이 Rectangle2D 라고 비교된다 Object
반환값:
objRectangle2D 의 인스턴스이며, 같은 값을 가지는 경우는 true, 그렇지 않은 경우는 false
도입된 버젼:
1.2
관련 항목:
Object.hashCode() , Hashtable

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