|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
java.lang.Objectjava.awt.Graphics
public abstract class Graphics
Graphics
클래스는, 모든 그래픽 문맥의 추상 base class입니다. 그래픽 문맥에 의해 어플리케이션은, 각종 디바이스에 의해 실현되는 컴퍼넌트상이나 오프 스크린 이미지상에 draw 할 수 있습니다.
Graphics
객체는, Java 가 지원하는 기본적인 draw 조작에 필요한 상태 정보를 캡슐화합니다. 이 상태 정보에는, 다음의 프로퍼티이 있습니다.
Component
객체
setXORMode(java.awt.Color)
참조)
좌표축은 무한하게 가늘고, 출력 디바이스의 픽셀간에 존재합니다. 도형의 윤곽을 그리는 조작은, 픽셀 사이즈의 펜을 픽셀간의 무한하게 가는 윤곽선에 따라 움직여 가는 것에 의해 동작합니다. 펜은, 윤곽선의 엥커 포인트에 매달려, 한편 우측에 위치하고 있습니다. 도형의 내부를 묻는 조작은, 무한하게 가는 윤곽선의 내부를 묻는 것으로 동작합니다. 수평의 문자를 draw 하는 조작은, baseline 좌표보다 위에 문자 Glyph의 아센다 부분을 모두 draw 합니다.
그래픽스 펜은 그 궤도의 윤곽선에 매달려, 한편 우측에 위치하고 있습니다. 이것은, 다음 일을 나타냅니다.
이 Graphics
의 메소드의 인수로서 사용되는 모든 좌표치는, 메소드의 호출전에, 이 Graphics
객체의 변환 바탕으로 상대적인 것이라고 보여지는
모든 draw 조작은,Shape
가 사용자 공간으로 지정해,Graphics
객체를 사용해 프로그램이 제어하는 현재의 클립에 둘러싸인 에리어에 있는 픽셀만을 변경합니다. 이 「사용자 클립」은 디바이스 공간에 변환되어 윈도우의 가시 및 디바이스의 크기에 의해 정의되는 「디바이스 클립」이라고 결합됩니다. 사용자 클립과 디바이스 클립의 결합에 의해, 최종적인 클리핑 영역을 결정하는 「복합 클립」을 정의합니다. draw 시스템은, 사용자 클립을 변경해 복합 클립의 결과를 반영할 수 없습니다. 사용자 클립은 setClip
또는 clipRect
메소드만으로 변경할 수 있습니다. 모든 draw나 기입은, 현재의 색으로, 현재의 페인트 모드와 폰트를 사용해 행해집니다.
Component
,
clipRect(int, int, int, int)
,
setColor(java.awt.Color)
,
setPaintMode()
,
setXORMode(java.awt.Color)
,
setFont(java.awt.Font)
생성자 의 개요 | |
---|---|
protected |
Graphics ()
새로운 Graphics 객체를 작성합니다. |
메소드의 개요 | |
---|---|
abstract void |
clearRect (int x,
int y,
int width,
int height)
지정된 구형을, 현재의 draw 표면의 백그라운드 칼라로 전부 칠하는 것으로 클리어 합니다. |
abstract void |
clipRect (int x,
int y,
int width,
int height)
현재의 클립과 지정된 구형을 교차시킵니다. |
abstract void |
copyArea (int x,
int y,
int width,
int height,
int dx,
int dy)
컴퍼넌트의 영역을, dx 와 dy 로 지정된 거리로 카피합니다. |
abstract Graphics |
create ()
이 Graphics 객체의 카피인, 새로운 Graphics 객체를 작성합니다. |
Graphics |
create (int x,
int y,
int width,
int height)
이 Graphics 객체에 근거한 새로운 Graphics 객체를, 새로운 변환 및 클립 영역에서 작성합니다. |
abstract void |
dispose ()
이 그래픽스 문맥을 파기해, 사용중의 system resource가 있으면 그것을 해제합니다. |
void |
draw3DRect (int x,
int y,
int width,
int height,
boolean raised)
지정된 구형의 윤곽을 3D 로 강조 표시해 draw 합니다. |
abstract void |
drawArc (int x,
int y,
int width,
int height,
int startAngle,
int arcAngle)
지정된 구형을 커버하는 원호 또는 타원호의 윤곽을 그립니다. |
void |
drawBytes (byte[] data,
int offset,
int length,
int x,
int y)
이 그래픽스 문맥의 현재의 폰트와 색을 사용해, 지정된 바이트 배열에 의해 지정된 텍스트를 그립니다. |
void |
drawChars (char[] data,
int offset,
int length,
int x,
int y)
이 그래픽스 문맥의 현재의 폰트와 색을 사용해, 지정된 문자 배열에 의해 지정된 텍스트를 그립니다. |
abstract boolean |
drawImage (Image img,
int x,
int y,
Color bgcolor,
ImageObserver observer)
지정된 이미지의 현재 이용 가능한 부분만큼을 그립니다. |
abstract boolean |
drawImage (Image img,
int x,
int y,
ImageObserver observer)
지정된 이미지의 현재 이용 가능한 부분만큼을 그립니다. |
abstract boolean |
drawImage (Image img,
int x,
int y,
int width,
int height,
Color bgcolor,
ImageObserver observer)
지정된 구형의 내부에 들어가도록(듯이) 슬캘링 해, 지정된 이미지의 이용 가능한 부분을 그립니다. |
abstract boolean |
drawImage (Image img,
int x,
int y,
int width,
int height,
ImageObserver observer)
지정된 구형의 내부에 들어가도록(듯이) 슬캘링 해, 지정된 이미지의 이용 가능한 부분을 그립니다. |
abstract boolean |
drawImage (Image img,
int dx1,
int dy1,
int dx2,
int dy2,
int sx1,
int sy1,
int sx2,
int sy2,
Color bgcolor,
ImageObserver observer)
지정된 이미지의 지정된 영역의 이용 가능한 부분을 그립니다. |
abstract boolean |
drawImage (Image img,
int dx1,
int dy1,
int dx2,
int dy2,
int sx1,
int sy1,
int sx2,
int sy2,
ImageObserver observer)
지정된 이미지의 지정된 영역의 이용 가능한 부분을 그립니다. |
abstract void |
drawLine (int x1,
int y1,
int x2,
int y2)
이 그래픽스 문맥의 좌표계의 점 (x1, y1) 과 점 (x2, y2) 과의 사이에 현재의 색을 사용해 선을 그립니다. |
abstract void |
drawOval (int x,
int y,
int width,
int height)
타원의 윤곽을 그립니다. |
abstract void |
drawPolygon (int[] xPoints,
int[] yPoints,
int nPoints)
x 좌표와 y 좌표의 배열로 정의된 닫은 다각형을 그립니다. |
void |
drawPolygon (Polygon p)
지정된 Polygon 객체에 의해 정의되는 다각형의 윤곽을 그립니다. |
abstract void |
drawPolyline (int[] xPoints,
int[] yPoints,
int nPoints)
x 좌표와 y 좌표의 배열로 정의되고 연속적으로 연결된 직선을 그립니다. |
void |
drawRect (int x,
int y,
int width,
int height)
지정된 구형의 윤곽을 그립니다. |
abstract void |
drawRoundRect (int x,
int y,
int width,
int height,
int arcWidth,
int arcHeight)
둥근 코너 첨부의 윤곽의 구형을, 이 그래픽스 문맥의 현재의 색을 사용해 그립니다. |
abstract void |
drawString (AttributedCharacterIterator iterator,
int x,
int y)
지정된 반복자에 의해 텍스트를 그려, TextAttribute 클래스의 스펙에 근거해 속성을 적용합니다. |
abstract void |
drawString (String str,
int x,
int y)
이 그래픽스 문맥의 현재의 폰트와 색을 사용해, 지정된 캐릭터 라인에 의해 지정된 텍스트를 그립니다. |
void |
fill3DRect (int x,
int y,
int width,
int height,
boolean raised)
현재의 색으로 전부 칠해지고 있는, 3D 로 강조 표시된 구형을 그립니다. |
abstract void |
fillArc (int x,
int y,
int width,
int height,
int startAngle,
int arcAngle)
지정된 구형을 커버하는 원호 또는 타원호를 전부 칠합니다. |
abstract void |
fillOval (int x,
int y,
int width,
int height)
지정된 구형안의 타원형을 현재의 색으로 전부 칠합니다. |
abstract void |
fillPolygon (int[] xPoints,
int[] yPoints,
int nPoints)
x 좌표와 y 좌표의 배열로 정의되는 닫은 다각형을 전부 칠합니다. |
void |
fillPolygon (Polygon p)
지정된 Polygon 객체로 정의된 다각형을 그래픽스 문맥의 현재의 색으로 전부 칠합니다. |
abstract void |
fillRect (int x,
int y,
int width,
int height)
지정된 구형을 전부 칠합니다. |
abstract void |
fillRoundRect (int x,
int y,
int width,
int height,
int arcWidth,
int arcHeight)
지정된 둥근 코너 첨부의 구형을 현재의 색으로 전부 칠합니다. |
void |
finalize ()
참조되지 않게 된, 이 그래픽스 문맥을 파기합니다. |
abstract Shape |
getClip ()
현재의 클리핑 영역을 돌려줍니다. |
abstract Rectangle |
getClipBounds ()
현재의 클리핑 영역의 경계의 구형을 돌려줍니다. |
Rectangle |
getClipBounds (Rectangle r)
현재의 클리핑 영역의 경계의 구형을 돌려줍니다. |
Rectangle |
getClipRect ()
추천 되고 있지 않습니다. JDK version 1.1 이후는, getClipBounds() 로 옮겨졌습니다. |
abstract Color |
getColor ()
이 그래픽스 문맥의 현재의 색을 돌려줍니다. |
abstract Font |
getFont ()
현재의 폰트를 돌려줍니다. |
FontMetrics |
getFontMetrics ()
현재의 폰트의 폰트 시학을 돌려줍니다. |
abstract FontMetrics |
getFontMetrics (Font f)
지정된 폰트의 폰트 시학을 돌려줍니다. |
boolean |
hitClip (int x,
int y,
int width,
int height)
지정된 구형 영역이 현재의 클리핑 영역과 교차하는 경우는 true 를 돌려줍니다. |
abstract void |
setClip (int x,
int y,
int width,
int height)
지정한 좌표가 지정한 구형에 현재의 클립을 설정합니다. |
abstract void |
setClip (Shape clip)
현재의 클리핑 영역을 임의의 클립 형상으로 설정합니다. |
abstract void |
setColor (Color c)
이 그래픽스 문맥의 현재의 색을, 지정된 색으로 설정합니다. |
abstract void |
setFont (Font font)
이 그래픽스 문맥의 폰트를, 지정된 폰트로 설정합니다. |
abstract void |
setPaintMode ()
이 그래픽스 문맥의 현재의 색으로 목적지를 덧쓰기하도록(듯이), 페인트 모드를 설정합니다. |
abstract void |
setXORMode (Color c1)
이 그래픽스 문맥의 현재의 색과 새롭게 지정된 색을 바꾸도록(듯이), 그래픽스 문맥의 페인트 모드를 설정합니다. |
String |
toString ()
이 Graphics 객체의 값을 표현하고 있는,String 객체를 돌려줍니다. |
abstract void |
translate (int x,
int y)
그래픽스 문맥의 원점을 현재의 좌표계의 점 (x, y)으로 변환합니다. |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , getClass , hashCode , notify , notifyAll , wait , wait , wait |
생성자 의 상세 |
---|
protected Graphics()
Graphics
객체를 작성합니다. 이 생성자 은, 그래픽스 문맥의 디폴트 생성자 입니다.
Graphics
는 abstract 클래스이므로, 어플리케이션은 이 생성자 을 직접 호출할 수 없습니다. 그래픽스 문맥은, 다른 그래픽스 문맥으로부터 취득되는지, 컴퍼넌트로 getGraphics
를 호출하는 것에 의해 작성됩니다.
create()
,
Component.getGraphics()
메소드의 상세 |
---|
public abstract Graphics create()
Graphics
객체의 카피인, 새로운 Graphics
객체를 작성합니다.
public Graphics create(int x, int y, int width, int height)
Graphics
객체에 근거한 새로운 Graphics
객체를, 새로운 변환 및 클립 영역에서 작성합니다. 새로운 Graphics
객체는 그 원점을, 지정된 점 (x, y)에 변환시킵니다. 그 클립 영역은, 원의 클립 영역과 지정된 구형과의 공통 부분에서 지정됩니다. 인수는 모두, 원의 Graphics
객체의 좌표계에 변환됩니다. 새로운 그래픽스 문맥은, 다음의 2 점 이외에 붙어 원의 그래픽스 문맥과 같습니다.
0
, 0
)은 원의 그래픽스 문맥의 점 (x, y)과 같게된다
0
, 0
)에 있어, 그 사이즈는 width
인수와 height
인수로 지정된다
x
- x 좌표y
- y 좌표width
- 클리핑 구형의 폭height
- 클리핑 구형의 높이
translate(int, int)
,
clipRect(int, int, int, int)
public abstract void translate(int x, int y)
x
- x 좌표y
- y 좌표public abstract Color getColor()
Color
,
setColor(Color)
public abstract void setColor(Color c)
c
- 새로운 draw색Color
,
getColor()
public abstract void setPaintMode()
public abstract void setXORMode(Color c1)
draw 조작을 실행하면(자), 현재의 색의 픽셀이 지정된 색에 바뀌어, 그 역도 들어맞읍니다.
여기서 다루어진 2 색 이외의 색을 가지는 픽셀은 예상할 수 없는 색에 변화합니다만, 그것들은 바탕으로 되돌릴 수 있게 되어 있습니다. 같은 그림을 2 회 draw 하면, 모든 픽셀은 초기의 설정색에 돌아옵니다.
c1
- XOR 의 교대색public abstract Font getFont()
Font
,
setFont(Font)
public abstract void setFont(Font font)
font
- 폰트getFont()
,
drawString(java.lang.String, int, int)
,
drawBytes(byte[], int, int, int, int)
,
drawChars(char[], int, int, int, int)
public FontMetrics getFontMetrics()
getFont()
,
FontMetrics
,
getFontMetrics(Font)
public abstract FontMetrics getFontMetrics(Font f)
f
- 지정된 폰트
getFont()
,
FontMetrics
,
getFontMetrics()
public abstract Rectangle getClipBounds()
setClip(null)
를 사용해 클리어 되고 있는 경우는, 이 메소드는 null
를 돌려줍니다. 구형내의 좌표는 이 그래픽스 문맥의 좌표계의 원점을 기준으로 하고 있습니다.
null
getClip()
,
clipRect(int, int, int, int)
,
setClip(int, int, int, int)
,
setClip(Shape)
public abstract void clipRect(int x, int y, int width, int height)
setClip(null)
를 사용해 클리어 되었기 때문에 현재의 클리핑 영역이 없는 경우는, 지정한 구형이 새로운 클립이 됩니다. 이 메소드는, 디바이스 경계나 윈도우 가시에 관련한 크리크핑에 의존하지 않는 사용자 클립을 설정합니다. 이 메소드는 현재의 클립을 작게 하는 경우에 한정해 사용할 수 있습니다. 현재의 클립을 크게 하려면 , 임의의 setClip 메소드를 사용합니다. 클리핑 영역외에서 draw 조작을 행해도 효과는 없습니다.
x
- 교차해 클립 하는 구형의 x 좌표y
- 교차해 클립 하는 구형의 y 좌표width
- 교차해 클립 하는 구형의 폭height
- 교차해 클립 하는 구형의 높이setClip(int, int, int, int)
,
setClip(Shape)
public abstract void setClip(int x, int y, int width, int height)
x
- 새로운 클립 구형의 x 좌표y
- 새로운 클립 구형의 y 좌표width
- 새로운 클립 구형의 폭height
- 새로운 클립 구형의 높이clipRect(int, int, int, int)
,
setClip(Shape)
,
getClip()
public abstract Shape getClip()
setClip(null)
를 사용해 클리어 되고 있는 경우는, 이 메소드는 null
를 돌려줍니다.
Shape
객체. 클립이 설정되어 있지 않은 경우는
null
getClipBounds()
,
clipRect(int, int, int, int)
,
setClip(int, int, int, int)
,
setClip(Shape)
public abstract void setClip(Shape clip)
Shape
인터페이스를 구현하는 모든 객체를 사용할 수 있는 것은 아닙니다. 지원가 보증되고 있는 유일한 Shape
객체는,getClip
메소드를 사용할까 Rectangle
객체를 사용해 취득되는 Shape
객체 뿐입니다. 이 메소드는, 디바이스 경계나 윈도우 가시에 관련한 크리크핑에 의존하지 않는 사용자 클립을 설정합니다.
clip
- 클립 설정에 사용하는 Shape
getClip()
,
clipRect(int, int, int, int)
,
setClip(int, int, int, int)
public abstract void copyArea(int x, int y, int width, int height, int dx, int dy)
dx
와 dy
로 지정된 거리로 카피합니다. 이 메소드는 x
와 y
로 지정된 점으로부터, 컴퍼넌트의 아래방향 및 우측향의 영역을 카피합니다. 컴퍼넌트의 좌방향 및 윗방향의 영역을 카피하려면 ,dx
와 dy
에 0 보다 작은 값을 지정합니다. 소스의 구형이 있는 부분이 컴퍼넌트의 경계외에 있는 경우나 다른 컴퍼넌트나 윈도우로 숨겨지고 있는 경우는,copyArea
는 대응하고 있는 픽셀을 카피할 수 없습니다. 숨겨진 영역은, 그 컴퍼넌트의 paint
메소드를 호출하는 것으로 재draw 됩니다.
x
- 소스 구형의 x 좌표y
- 소스 구형의 y 좌표width
- 소스 구형의 폭height
- 소스 구형의 높이dx
- 픽셀을 카피하는 수평거리dy
- 픽셀을 카피하는 수직 거리public abstract void drawLine(int x1, int y1, int x2, int y2)
(x1, y1)
과 점 (x2, y2)
과의 사이에 현재의 색을 사용해 선을 그립니다.
x1
- 최초의 점의 x 좌표y1
- 최초의 점의 y 좌표x2
- 2 번째의 점의 x 좌표y2
- 2 번째의 점의 y 좌표public abstract void fillRect(int x, int y, int width, int height)
x
와 x + width - 1
로, 상단과 하단은 각각 y
와 y + height - 1
입니다. 이것으로 지정되는 구형은, 폭 width
픽셀, 높이 height
픽셀의 영역입니다. 구형은, 그래픽스 문맥의 현재의 색을 사용해 전부 칠해집니다.
x
- 전부 칠해진다
구형의 x 좌표y
- 전부 칠해진다
구형의 y 좌표width
- 전부 칠해지는 구형의 폭height
- 전부 칠해지는 구형의 높이clearRect(int, int, int, int)
,
drawRect(int, int, int, int)
public void drawRect(int x, int y, int width, int height)
x
와 x + width
, 상단과 하단이 각각 y
와 y + height
로 지정됩니다. 구형은, 그래픽스 문맥의 현재의 색을 사용해 draw 됩니다.
x
- draw 된다
구형의 x 좌표y
- draw 된다
구형의 y 좌표width
- draw 되는 구형의 폭height
- draw 되는 구형의 높이fillRect(int, int, int, int)
,
clearRect(int, int, int, int)
public abstract void clearRect(int x, int y, int width, int height)
Java 1. 1 이후는, 오프 스크린의 이미지의 백그라운드 칼라는 시스템에 의해 다릅니다. 어플리케이션은 setColor
에 이어 fillRect
를 사용하는 것에 의해, 오프 스크린 이미지를 클리어 해 특정의 색으로 하는 것을 보증합니다.
x
- 클리어 대상의 구형의 x 좌표y
- 클리어 대상의 구형의 y 좌표width
- 클리어 대상의 구형의 폭height
- 클리어 대상의 구형의 높이fillRect(int, int, int, int)
,
drawRect(int, int, int, int)
,
setColor(java.awt.Color)
,
setPaintMode()
,
setXORMode(java.awt.Color)
public abstract void drawRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)
x
와 x + width
, 상단과 하단이 각각 y
와 y + height
로 지정됩니다.
x
- draw 되는 구형의 x 좌표y
- draw 되는 구형의 y 좌표width
- draw 되는 구형의 폭height
- draw 되는 구형의 높이arcWidth
- 4 구석의 호의 수평 방향의
직경arcHeight
- 4 구석의 호의 수직 방향의
직경fillRoundRect(int, int, int, int, int, int)
public abstract void fillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)
x
와 x + width - 1
, 상단과 하단이 각각 y
와 y + height - 1
로 지정됩니다.
x
- 전부 칠해지는 구형의 x 좌표y
- 전부 칠해지는 구형의 y 좌표width
- 전부 칠해지는 구형의 폭height
- 전부 칠해지는 구형의 높이arcWidth
- 4 구석의 호의 수평 방향의
직경arcHeight
- 4 구석의 호의 수직 방향의
직경drawRoundRect(int, int, int, int, int, int)
public void draw3DRect(int x, int y, int width, int height, boolean raised)
강조 표시 효과에 사용되는 색은, 현재의 색에 근거해 지정됩니다. draw 된 구형은, 폭 width + 1
픽셀, 높이 height + 1
픽셀의 영역을 커버합니다.
x
- draw 되는 구형의 x 좌표y
- draw 되는 구형의 y 좌표width
- draw 되는 구형의 폭height
- draw 되는 구형의 높이raised
- 구형이 표면으로부터 떠오른 것처럼 보이는지,
표면에 조각해 붐비어진 것처럼 보이는지를 지정한다
boolean 치fill3DRect(int, int, int, int, boolean)
public void fill3DRect(int x, int y, int width, int height, boolean raised)
x
- 전부 칠해지는 구형의 x 좌표y
- 전부 칠해지는 구형의 y 좌표width
- 전부 칠해지는 구형의 폭height
- 전부 칠해지는 구형의 높이raised
- 구형이 표면으로부터 떠오른 것처럼 보이는지,
표면에 조각해 붐비어진 것처럼 보이는지를 지정한다
boolean 치draw3DRect(int, int, int, int, boolean)
public abstract void drawOval(int x, int y, int width, int height)
x
,y
,width
,height
로 지정되는 구형내에 들어가는 엔 또는 타원이 그려집니다.
타원은, 폭 width + 1
픽셀, 높이 height + 1
픽셀의 영역을 커버합니다.
x
- draw 되는 타원의 좌상구석의
x 좌표y
- draw 되는 타원의 좌상구석의
y 좌표width
- draw 되는 타원의 폭height
- draw 되는 타원의 높이fillOval(int, int, int, int)
public abstract void fillOval(int x, int y, int width, int height)
x
- 전부 칠해지는 타원의 좌상구석의
x 좌표y
- 전부 칠해지는 타원의 좌상구석의
y 좌표width
- 전부 칠해지는 타원의 폭height
- 전부 칠해지는 타원의 높이drawOval(int, int, int, int)
public abstract void drawArc(int x, int y, int width, int height, int startAngle, int arcAngle)
startAngle
로부터 시작되어 arcAngle
의 각도로 전개된 호가, 현재의 색을 사용해 그려집니다. 각도는 3 시의 위치를 0 번으로서 변환되어 정의 값은 반시계방향, 0 보다 작은 값은 시계 방향의 회전을 나타냅니다.
호의 중심은, 원점이 (x, y)로, 사이즈가 width
인수와 height
인수로 지정되는 구형의 중심이 됩니다.
그려지는 호는, 폭 width + 1
픽셀, 높이 height + 1
픽셀의 영역을 커버합니다.
각도의 확대는, 직각이 아닌, 경계의 구형을 기준으로 지정해, 타원의 중심으로부터 경계의 구형의 우상구석까지를 묶는 선이 항상 45 번이 되도록(듯이) 합니다. 경계의 구형의 축의 길이가 꽤 다른 경우에는, 호세그먼트(segment)의 개시 각도와 종료 각도는 경계의 타원에 있어 가장 긴 직경에 따라 한층 더 경사합니다.
x
- draw 되는 호의 좌상구석의
x 좌표y
- draw 되는 호의 좌상구석의
y 좌표width
- draw 되는 고의 폭height
- draw 되는 고의 높이startAngle
- 개시 각도arcAngle
- 개시 각도에 대한 호의
전개 각도의 크기fillArc(int, int, int, int, int, int)
public abstract void fillArc(int x, int y, int width, int height, int startAngle, int arcAngle)
startAngle
로부터 시작되어 arcAngle
의 각도로 전개된 호가 그려집니다. 각도는 3 시의 위치를 0 번으로서 변환되어 정의 값은 반시계방향, 0 보다 작은 값은 시계 방향의 회전을 나타냅니다.
호의 중심은, 원점이 (x, y)로, 사이즈가 width
인수와 height
인수로 지정되는 구형의 중심이 됩니다.
그려지는 호는, 폭 width + 1
픽셀, 높이 height + 1
픽셀의 영역을 커버합니다.
각도의 확대는, 직각이 아닌, 경계의 구형을 기준으로 지정해, 타원의 중심으로부터 경계의 구형의 우상구석까지를 묶는 선이 항상 45 번이 되도록(듯이) 합니다. 경계의 구형의 축의 길이가 꽤 다른 경우에는, 호세그먼트(segment)의 개시 각도와 종료 각도는 경계의 타원에 있어 가장 긴 직경에 따라 한층 더 경사합니다.
x
- 전부 칠해지는 호의 좌상구석의
x 좌표y
- 전부 칠해지는 호의 좌상구석의
y 좌표width
- 전부 칠해지는 고의 폭height
- 전부 칠해지는 고의 높이startAngle
- 개시 각도arcAngle
- 개시 각도에 대한 호의
전개 각도의 크기drawArc(int, int, int, int, int, int)
public abstract void drawPolyline(int[] xPoints, int[] yPoints, int nPoints)
xPoints
- x 점의 배열yPoints
- y 점의 배열nPoints
- 점의 총수drawPolygon(int[], int[], int)
public abstract void drawPolygon(int[] xPoints, int[] yPoints, int nPoints)
이 메소드는,nPoint
라인 세그먼트(segment)에 의해 정의되는 다각형을 그립니다. 이 경우, 최초의 nPoint - 1
라인 세그먼트(segment)는, 1 ≤ i ≤ nPoints
에 대한,(xPoints[i - 1], yPoints[i - 1])
로부터 (xPoints[i], yPoints[i])
까지의 라인 세그먼트(segment)입니다. 마지막 점과 최초의 점이 일치하지 않는 경우, 그것들을 접속하는 라인을 draw 하면 그림은 자동적으로 덮습니다.
xPoints
- x
좌표의 배열yPoints
- y
좌표의 배열nPoints
- 점의 총수fillPolygon(int[], int[], int)
,
drawPolyline(int[], int[], int)
public void drawPolygon(Polygon p)
Polygon
객체에 의해 정의되는 다각형의 윤곽을 그립니다.
p
- draw 대상의 다각형fillPolygon(int[], int[], int)
,
drawPolyline(int[], int[], int)
public abstract void fillPolygon(int[] xPoints, int[] yPoints, int nPoints)
이 메소드는,nPoint
라인 세그먼트(segment)에 의해 정의되는 다각형을 그립니다. 이 경우, 최초의 nPoint - 1
라인 세그먼트(segment)는, 1 ≤ i ≤ nPoints
에 대한,(xPoints[i - 1], yPoints[i - 1])
로부터 (xPoints[i], yPoints[i])
까지의 라인 세그먼트(segment)입니다. 마지막 점과 최초의 점이 일치하지 않는 경우, 그것들을 접속하는 라인을 draw 하면 그림은 자동적으로 덮습니다.
다각형내의 영역은, 우기 전부 칠해 규칙 (교호 규칙이라고도 한다)을 사용해 정의됩니다.
xPoints
- x
좌표의 배열yPoints
- y
좌표의 배열nPoints
- 점의 총수drawPolygon(int[], int[], int)
public void fillPolygon(Polygon p)
다각형내의 영역은, 우기 전부 칠해 규칙 (교호 규칙이라고도 한다)을 사용해 정의됩니다.
p
- 전부 칠해 대상의 다각형drawPolygon(int[], int[], int)
public abstract void drawString(String str, int x, int y)
str
- draw 되는 캐릭터 라인x
- x 좌표y
- y 좌표
NullPointerException
- str
가 null
의 경우drawBytes(byte[], int, int, int, int)
,
drawChars(char[], int, int, int, int)
public abstract void drawString(AttributedCharacterIterator iterator, int x, int y)
TextAttribute
클래스의 스펙에 근거해 속성을 적용합니다. 좌단의 문자의 baseline는, 이 그래픽스 문맥의 좌표계의 위치 (x, y)에 있습니다.
iterator
- draw 되는 텍스트를 가지는 반복자x
- x 좌표y
- y 좌표
NullPointerException
- iterator
가
null
의 경우drawBytes(byte[], int, int, int, int)
,
drawChars(char[], int, int, int, int)
public void drawChars(char[] data, int offset, int length, int x, int y)
data
- draw 되는 문자의 배열offset
- 데이터의 개시 오프셋(offset)length
- draw 되는 문자수x
- 텍스트의 baseline의 x 좌표y
- 텍스트의 baseline의 y 좌표
NullPointerException
- data
가 null
의 경우
IndexOutOfBoundsException
- offset
또는
length
가 제로보다 작은 경우,
혹은 offset+length
가 data
배열의 길이보다
큰 경우drawBytes(byte[], int, int, int, int)
,
drawString(java.lang.String, int, int)
public void drawBytes(byte[] data, int offset, int length, int x, int y)
각 바이트는 범위 0 ~ 255 의 Unicode 코드 포인트로서 해석되기 (위해)때문에, 이 메소드의 사용은 추천 되지 않습니다. 이 범위에 있는 라틴 문자를 그리는 경우만 사용할 수 있습니다.
data
- draw 되는 데이터offset
- 데이터의 개시 오프셋(offset)length
- draw 되는 바이트수x
- 텍스트의 baseline의 x 좌표y
- 텍스트의 baseline의 y 좌표
NullPointerException
- data
가 null
의 경우
IndexOutOfBoundsException
- offset
또는
length
가 제로보다 작은 경우, 혹은 offset+length
가
data
배열의 길이보다 큰 경우drawChars(char[], int, int, int, int)
,
drawString(java.lang.String, int, int)
public abstract boolean drawImage(Image img, int x, int y, ImageObserver observer)
완전한 이미지가 로드가 끝난 상태가 아니고, 현재의 출력 디바이스에 대해서 디저링이 끝난 상태 및 변환이 끝난 상태가 아니어도, 이 메소드는 모든 경우에 즉시 복귀합니다.
이미지가 완전하게 로드 되어 픽셀이 변경되지 않게 되었을 경우,drawImage
는 true
를 돌려줍니다. 이미지가 완전하게 로드되어 있지 않은 경우,drawImage
는 false
를 돌려주어, 이미지의 한층 더 많은 부분이 이용 가능하게 되는지, 애니메이션의 다른 프레임에 draw 되어 이미지를 로드하는 프로세스에 의해 지정의 이미지 옵저버에 통지됩니다.
img
- draw 되는 지정 이미지img
가
null 의 경우에는 아무것도 실시하지 않는x
- x 좌표y
- y 좌표observer
- 이미지가 한층 더 변환되는 것이
통지되는 객체
false
,
그렇지 않은 경우는 true
Image
,
ImageObserver
,
ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
public abstract boolean drawImage(Image img, int x, int y, int width, int height, ImageObserver observer)
이미지는, 이 그래픽스 문맥의 좌표 공간의 지정된 구형내에 draw 되어 필요에 따라서 슬캘링 됩니다. 투명 픽셀은, 거기에 벌써 존재하는 어떠한 픽셀에도 영향을 주지 않습니다.
이 메소드는, 이미지 전체가 현재의 출력 디바이스에 대해서 슬캘링 끝나, 디저링 끝나, 변환이 끝난 상태가 아니어도, 모든 경우에 즉시 복귀합니다. 현재의 출력 표현이 아직 완전하지 않은 경우,drawImage
는 false
를 돌려줍니다. 보다 많은 이미지가 이용 가능하게 되면(자), 이미지를 로드하는 프로세스가, 그 imageUpdate
메소드를 호출하는 것에 의해 이미지 옵저버에 통지합니다.
슬캘링 하고 있지 않는 이미지를 이 출력 디바이스용으로 구축하고 있다고 하는 이유만으로, scaled 이미지를 즉시 사용할 수 있다고는인가 선. 이미지는 사이즈 마다 개별적으로 캐쉬되어 원의 데이터로부터 다른 이미지 작성 순서에 의해 생성되는 일도 있기 때문입니다.
img
- draw 되는 지정 이미지img
가
null 의 경우에는 아무것도 실시하지 않는x
- x 좌표y
- y 좌표width
- 구형의 폭height
- 구형의 높이observer
- 이미지가 한층 더 변환되는 것이
통지되는 객체
false
,
그렇지 않은 경우는 true
Image
,
ImageObserver
,
ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
public abstract boolean drawImage(Image img, int x, int y, Color bgcolor, ImageObserver observer)
이 조작은, 지정된 이미지의 폭과 높이의 구형이 지정된 색으로 전부 칠하고 나서, 그 위에 이미지를 그리는 것에 상당합니다만, 아마 그것보다 효율적입니다.
완전한 이미지가 로드가 끝난 상태가 아니고, 현재의 출력 디바이스에 대해서 디저링이 끝난 상태 및 변환이 끝난 상태가 아니어도, 이 메소드는 모든 경우에 즉시 복귀합니다.
이미지가 완전하게 로드 되어 픽셀이 변경되지 않게 되었을 경우,drawImage
는 true
를 돌려줍니다. 이미지가 완전하게 로드되어 있지 않은 경우,drawImage
는 false
를 돌려주어, 이미지의 한층 더 많은 부분이 이용 가능하게 되는지, 애니메이션의 다른 프레임에 draw 되어 이미지를 로드하는 프로세스에 의해 지정의 이미지 옵저버에 통지됩니다.
img
- draw 되는 지정 이미지img
가
null 의 경우에는 아무것도 실시하지 않는x
- x 좌표y
- y 좌표bgcolor
- 이미지의 불투명하지 않은 부분아래에
칠해지는 백그라운드 칼라observer
- 이미지가 한층 더 변환되는 것이
통지되는 객체
false
,
그렇지 않은 경우는 true
Image
,
ImageObserver
,
ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
public abstract boolean drawImage(Image img, int x, int y, int width, int height, Color bgcolor, ImageObserver observer)
이미지는, 이 그래픽스 문맥의 좌표 공간의 지정된 구형내에 draw 되어 필요에 따라서 슬캘링 됩니다. 투명 픽셀은 지정된 백그라운드 칼라로 draw 됩니다. 이 조작은, 지정된 이미지의 폭과 높이의 구형이 지정된 색으로 전부 칠하고 나서, 그 위에 이미지를 그리는 것에 상당합니다만, 아마 그것보다 효율적입니다.
이 메소드는, 이미지 전체가 현재의 출력 디바이스에 대해서 슬캘링 끝나, 디저링 끝나, 변환이 끝난 상태가 아니어도, 모든 경우에 즉시 복귀합니다. 현재의 출력 표현이 아직 완전하지 않은 경우,drawImage
는 false
를 돌려줍니다. 보다 많은 이미지가 이용 가능하게 되면(자), 이미지를 로드하는 프로세스에 의해 지정의 이미지 옵저버에 통지됩니다.
슬캘링 하고 있지 않는 이미지를 이 출력 디바이스용으로 구축하고 있다고 하는 이유만으로, scaled 이미지를 즉시 사용할 수 있다고는인가 선. 이미지는 사이즈 마다 개별적으로 캐쉬되어 원의 데이터로부터 다른 이미지 작성 순서에 의해 생성되는 일도 있기 때문입니다.
img
- draw 되는 지정 이미지img
가
null 의 경우에는 아무것도 실시하지 않는x
- x 좌표y
- y 좌표width
- 구형의 폭height
- 구형의 높이bgcolor
- 이미지의 불투명하지 않은 부분아래에
칠해지는 백그라운드 칼라observer
- 이미지가 한층 더 변환되는 것이
통지되는 객체
false
,
그렇지 않은 경우는 true
Image
,
ImageObserver
,
ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
public abstract boolean drawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, ImageObserver observer)
이 메소드는, draw 되는 이미지 영역이 현재의 출력 디바이스에 대해서 슬캘링 끝나, 디저링 끝나, 변환이 끝난 상태가 아니어도, 모든 경우에 즉시 복귀합니다. 현재의 출력 표현이 아직 완전하지 않은 경우,drawImage
는 false
를 돌려줍니다. 보다 많은 이미지가 이용 가능하게 되면(자), 이미지를 로드하는 프로세스에 의해 지정의 이미지 옵저버에 통지됩니다.
이 메소드는 항상 슬캘링되어 있지 않은 이미지를 사용해, 슬캘링 된 구형을 그려, 필요한 슬캘링을 즉시 실행합니다. 이것은 이 조작에 대해서는, 캐쉬된 슬캘링 끝난 이미지를 사용하지 않습니다. 소스 구형의 최초의 좌표를 목적지 구형의 최초의 좌표에, 소스의 2 번째의 좌표를 목적지의 2 번째의 좌표에라고 하는 대응으로 매핑 해, 소스로부터 목적지에의 이미지의 슬캘링을 실행합니다. 서브 이미지는, 그 할당을 유지하는 필요성에 응해 슬캘링 되고 반전됩니다.
img
- draw 되는 지정 이미지img
가
null 의 경우에는 아무것도 실시하지 않는dx1
- 목적지 구형의 최초의 구석의
x 좌표dy1
- 목적지 구형의 최초의 구석의
y 좌표dx2
- 목적지 구형의 2 번째의 구석의
x 좌표dy2
- 목적지 구형의 2 번째의 구석의
y 좌표sx1
- 소스 구형의 최초의 구석의
x 좌표sy1
- 소스 구형의 최초의 구석의
y 좌표sx2
- 소스 구형의 2 번째의 구석의
x 좌표sy2
- 소스 구형의 2 번째의 구석의
y 좌표observer
- 이미지가 한층 더 슬캘링 되어 변환되는 것을
통지하는 객체
false
,
그렇지 않은 경우는 true
Image
,
ImageObserver
,
ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
public abstract boolean drawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, Color bgcolor, ImageObserver observer)
투명 픽셀은 지정된 백그라운드 칼라로 draw 됩니다. 이 조작은, 지정된 이미지의 폭과 높이의 구형이 지정된 색으로 전부 칠하고 나서, 그 위에 이미지를 그리는 것에 상당합니다만, 아마 그것보다 효율적입니다.
이 메소드는, draw 되는 이미지 영역이 현재의 출력 디바이스에 대해서 슬캘링 끝나, 디저링 끝나, 변환이 끝난 상태가 아니어도, 모든 경우에 즉시 복귀합니다. 현재의 출력 표현이 아직 완전하지 않은 경우,drawImage
는 false
를 돌려줍니다. 보다 많은 이미지가 이용 가능하게 되면(자), 이미지를 로드하는 프로세스에 의해 지정의 이미지 옵저버에 통지됩니다.
이 메소드는 항상 슬캘링되어 있지 않은 이미지를 사용해, 슬캘링 된 구형을 그려, 필요한 슬캘링을 즉시 실행합니다. 이것은 이 조작에 대해서는, 캐쉬된 슬캘링 끝난 이미지를 사용하지 않습니다. 소스 구형의 최초의 좌표를 목적지 구형의 최초의 좌표에, 소스의 2 번째의 좌표를 목적지의 2 번째의 좌표에라고 하는 대응으로 매핑 해, 소스로부터 목적지에의 이미지의 슬캘링을 실행합니다. 서브 이미지는, 그 할당을 유지하는 필요성에 응해 슬캘링 되고 반전됩니다.
img
- draw 되는 지정 이미지img
가
null 의 경우에는 아무것도 실시하지 않는dx1
- 목적지 구형의 최초의 구석의
x 좌표dy1
- 목적지 구형의 최초의 구석의
y 좌표dx2
- 목적지 구형의 2 번째의 구석의
x 좌표dy2
- 목적지 구형의 2 번째의 구석의
y 좌표sx1
- 소스 구형의 최초의 구석의
x 좌표sy1
- 소스 구형의 최초의 구석의
y 좌표sx2
- 소스 구형의 2 번째의 구석의
x 좌표sy2
- 소스 구형의 2 번째의 구석의
y 좌표bgcolor
- 이미지의 불투명하지 않은 부분아래에
칠해지는 백그라운드 칼라observer
- 이미지가 한층 더 슬캘링 되어 변환되는 것을
통지하는 객체
false
,
그렇지 않은 경우는 true
Image
,
ImageObserver
,
ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
public abstract void dispose()
Graphics
객체를 dispose
의 호출 후에 사용할 수 없습니다.
Java 프로그램이 실행되고 있으면(자), 단시간 프레임내에서 다수의 Graphics
객체를 작성할 수 있습니다. 가비지 컬렉터의 finalize프로세스도 같은 system resource를 파기합니다만, 관련하는 자원을 수동으로 해제하는 것이 추천 됩니다. 즉, 장기간에 걸쳐 완료까지 실행되지 않을 가능성이 있는 finalize프로세스에 의존하는 것보다도, 이 메소드를 호출해 자원을 수동으로 해제해 주세요.
컴퍼넌트의 paint
메소드와 update
메소드에 인수로서 제공되는 Graphics 객체는, 이러한 메소드가 복귀했을 때에 시스템에 의해 자동적으로 해제됩니다. 효율성을 확보하려면 ,Graphics
객체가 컴퍼넌트 또는 다른 Graphics
객체로부터 직접 작성되었을 경우만, 그 객체를 사용해 종료했을 때에 dispose
를 호출하도록(듯이) 프로그래밍 하지 않으면 안됩니다.
finalize()
,
Component.paint(java.awt.Graphics)
,
Component.update(java.awt.Graphics)
,
Component.getGraphics()
,
create()
public void finalize()
Object
내의 finalize
dispose()
public String toString()
Graphics
객체의 값을 표현하고 있는,String
객체를 돌려줍니다.
Object
내의 toString
@Deprecated public Rectangle getClipRect()
getClipBounds()
로 옮겨졌습니다.
null
public boolean hitClip(int x, int y, int width, int height)
x
- 현재의 클리핑 영역이라고 비교되는 구형의 x 좌표y
- 현재의 클리핑 영역이라고 비교되는 구형의 y 좌표width
- 현재의 클리핑 영역이라고 비교되는 구형의 폭height
- 현재의 클리핑 영역이라고 비교되는 구형의 높이
true
, 그렇지 않은 경우는
false
public Rectangle getClipBounds(Rectangle r)
getClipBounds
과는 달리, 새로운 것을 할당하지 말고 기존의 구형을 사용합니다. 이 메소드는, 디바이스 경계나 윈도우 가시에 관련한 클리핑에는 의존하지 않는 사용자 클립을 참조합니다. 클립이 설정되어 있지 않은 경우, 또는 클립이 setClip(null)
를 사용해 클리어 되고 있는 경우는, 이 메소드는 지정한 Rectangle
를 돌려줍니다.
r
- 현재의 클리핑 영역의 카피처의
구형. 이 구형에 현재의 값이 있으면
덧쓰기된다
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.