public class DebugGraphics extends Graphics
NOTE: You must turn off double buffering to use DebugGraphics: RepaintManager repaintManager = RepaintManager.currentManager(component); repaintManager.setDoubleBufferingEnabled(false);
Modifier and Type | Field and Description |
---|---|
static int |
BUFFERED_OPTION
Show buffered operations in a separate
Frame . |
static int |
FLASH_OPTION
Flash graphics operations.
|
static int |
LOG_OPTION
Log graphics operations.
|
static int |
NONE_OPTION
Don't debug graphics operations.
|
Constructor and Description |
---|
DebugGraphics()
Constructs a new debug graphics context that supports slowed
down drawing.
|
DebugGraphics(Graphics graphics)
Constructs a debug graphics context from an existing graphics
context that supports slowed down drawing.
|
DebugGraphics(Graphics graphics,
JComponent component)
Constructs a debug graphics context from an existing graphics
context that slows down drawing for the specified component.
|
Modifier and Type | Method and Description |
---|---|
void |
clearRect(int x,
int y,
int width,
int height)
Overrides
Graphics.clearRect . |
void |
clipRect(int x,
int y,
int width,
int height)
Overrides
Graphics.clipRect . |
void |
copyArea(int x,
int y,
int width,
int height,
int destX,
int destY)
Overrides
Graphics.copyArea . |
Graphics |
create()
Overrides
Graphics.create to return a DebugGraphics object. |
Graphics |
create(int x,
int y,
int width,
int height)
Overrides
Graphics.create to return a DebugGraphics object. |
void |
dispose()
Overrides
Graphics.dispose . |
void |
draw3DRect(int x,
int y,
int width,
int height,
boolean raised)
Overrides
Graphics.draw3DRect . |
void |
drawArc(int x,
int y,
int width,
int height,
int startAngle,
int arcAngle)
Overrides
Graphics.drawArc . |
void |
drawBytes(byte[] data,
int offset,
int length,
int x,
int y)
Overrides
Graphics.drawBytes . |
void |
drawChars(char[] data,
int offset,
int length,
int x,
int y)
Overrides
Graphics.drawChars . |
boolean |
drawImage(Image img,
int x,
int y,
Color bgcolor,
ImageObserver observer)
Overrides
Graphics.drawImage . |
boolean |
drawImage(Image img,
int x,
int y,
ImageObserver observer)
Overrides
Graphics.drawImage . |
boolean |
drawImage(Image img,
int x,
int y,
int width,
int height,
Color bgcolor,
ImageObserver observer)
Overrides
Graphics.drawImage . |
boolean |
drawImage(Image img,
int x,
int y,
int width,
int height,
ImageObserver observer)
Overrides
Graphics.drawImage . |
boolean |
drawImage(Image img,
int dx1,
int dy1,
int dx2,
int dy2,
int sx1,
int sy1,
int sx2,
int sy2,
Color bgcolor,
ImageObserver observer)
Overrides
Graphics.drawImage . |
boolean |
drawImage(Image img,
int dx1,
int dy1,
int dx2,
int dy2,
int sx1,
int sy1,
int sx2,
int sy2,
ImageObserver observer)
Overrides
Graphics.drawImage . |
void |
drawLine(int x1,
int y1,
int x2,
int y2)
Overrides
Graphics.drawLine . |
void |
drawOval(int x,
int y,
int width,
int height)
Overrides
Graphics.drawOval . |
void |
drawPolygon(int[] xPoints,
int[] yPoints,
int nPoints)
Overrides
Graphics.drawPolygon . |
void |
drawPolyline(int[] xPoints,
int[] yPoints,
int nPoints)
Overrides
Graphics.drawPolyline . |
void |
drawRect(int x,
int y,
int width,
int height)
Overrides
Graphics.drawRect . |
void |
drawRoundRect(int x,
int y,
int width,
int height,
int arcWidth,
int arcHeight)
Overrides
Graphics.drawRoundRect . |
void |
drawString(AttributedCharacterIterator iterator,
int x,
int y)
Overrides
Graphics.drawString . |
void |
drawString(String aString,
int x,
int y)
Overrides
Graphics.drawString . |
void |
fill3DRect(int x,
int y,
int width,
int height,
boolean raised)
Overrides
Graphics.fill3DRect . |
void |
fillArc(int x,
int y,
int width,
int height,
int startAngle,
int arcAngle)
Overrides
Graphics.fillArc . |
void |
fillOval(int x,
int y,
int width,
int height)
Overrides
Graphics.fillOval . |
void |
fillPolygon(int[] xPoints,
int[] yPoints,
int nPoints)
Overrides
Graphics.fillPolygon . |
void |
fillRect(int x,
int y,
int width,
int height)
Overrides
Graphics.fillRect . |
void |
fillRoundRect(int x,
int y,
int width,
int height,
int arcWidth,
int arcHeight)
Overrides
Graphics.fillRoundRect . |
static Color |
flashColor()
Returns the Color used to flash drawing operations.
|
static int |
flashCount()
Returns the number of times that drawing operations will flash.
|
static int |
flashTime()
Returns the time delay of drawing operation flashing.
|
Shape |
getClip()
Overrides
Graphics.getClip . |
Rectangle |
getClipBounds()
Overrides
Graphics.getClipBounds . |
Color |
getColor()
Returns the Color used for text drawing operations.
|
int |
getDebugOptions()
Returns the current debugging options for this DebugGraphics.
|
Font |
getFont()
Returns the Font used for text drawing operations.
|
FontMetrics |
getFontMetrics()
Overrides
Graphics.getFontMetrics . |
FontMetrics |
getFontMetrics(Font f)
Overrides
Graphics.getFontMetrics . |
boolean |
isDrawingBuffer()
Returns the drawingBuffer value.
|
static PrintStream |
logStream()
Returns the stream to which the DebugGraphics logs drawing operations.
|
void |
setClip(int x,
int y,
int width,
int height)
Overrides
Graphics.setClip . |
void |
setClip(Shape clip)
Overrides
Graphics.setClip . |
void |
setColor(Color aColor)
Sets the color to be used for drawing and filling lines and shapes.
|
void |
setDebugOptions(int options)
Enables/disables diagnostic information about every graphics
operation.
|
static void |
setFlashColor(Color flashColor)
Sets the Color used to flash drawing operations.
|
static void |
setFlashCount(int flashCount)
Sets the number of times that drawing operations will flash.
|
static void |
setFlashTime(int flashTime)
Sets the time delay of drawing operation flashing.
|
void |
setFont(Font aFont)
Sets the Font used for text drawing operations.
|
static void |
setLogStream(PrintStream stream)
Sets the stream to which the DebugGraphics logs drawing operations.
|
void |
setPaintMode()
Overrides
Graphics.setPaintMode . |
void |
setXORMode(Color aColor)
Overrides
Graphics.setXORMode . |
void |
translate(int x,
int y)
Overrides
Graphics.translate . |
drawPolygon, fillPolygon, finalize, getClipBounds, getClipRect, hitClip, toString
public static final int LOG_OPTION
public static final int FLASH_OPTION
public static final int BUFFERED_OPTION
Frame
.public static final int NONE_OPTION
public DebugGraphics()
public DebugGraphics(Graphics graphics, JComponent component)
graphics
- the Graphics context to slow downcomponent
- the JComponent to draw slowlypublic DebugGraphics(Graphics graphics)
graphics
- the Graphics context to slow downpublic Graphics create()
Graphics.create
to return a DebugGraphics object.public Graphics create(int x, int y, int width, int height)
Graphics.create
to return a DebugGraphics object.create
in class Graphics
x
- the x coordinate.y
- the y coordinate.width
- the width of the clipping rectangle.height
- the height of the clipping rectangle.Graphics.translate(int, int)
,
Graphics.clipRect(int, int, int, int)
public static void setFlashColor(Color flashColor)
public static Color flashColor()
setFlashColor(java.awt.Color)
public static void setFlashTime(int flashTime)
public static int flashTime()
setFlashTime(int)
public static void setFlashCount(int flashCount)
public static int flashCount()
setFlashCount(int)
public static void setLogStream(PrintStream stream)
public static PrintStream logStream()
setLogStream(java.io.PrintStream)
public void setFont(Font aFont)
setFont
in class Graphics
aFont
- the font.Graphics.getFont()
,
Graphics.drawString(java.lang.String, int, int)
,
Graphics.drawBytes(byte[], int, int, int, int)
,
Graphics.drawChars(char[], int, int, int, int)
public Font getFont()
getFont
in class Graphics
setFont(java.awt.Font)
public void setColor(Color aColor)
setColor
in class Graphics
aColor
- the new rendering color.Color
,
Graphics.getColor()
public Color getColor()
getColor
in class Graphics
setColor(java.awt.Color)
public FontMetrics getFontMetrics()
Graphics.getFontMetrics
.getFontMetrics
in class Graphics
Graphics.getFont()
,
FontMetrics
,
Graphics.getFontMetrics(Font)
public FontMetrics getFontMetrics(Font f)
Graphics.getFontMetrics
.getFontMetrics
in class Graphics
f
- the specified fontGraphics.getFont()
,
FontMetrics
,
Graphics.getFontMetrics()
public void translate(int x, int y)
Graphics.translate
.public void setPaintMode()
Graphics.setPaintMode
.setPaintMode
in class Graphics
public void setXORMode(Color aColor)
Graphics.setXORMode
.setXORMode
in class Graphics
aColor
- the XOR alternation colorpublic Rectangle getClipBounds()
Graphics.getClipBounds
.getClipBounds
in class Graphics
null
if no clip is set.Graphics.getClip()
,
Graphics.clipRect(int, int, int, int)
,
Graphics.setClip(int, int, int, int)
,
Graphics.setClip(Shape)
public void clipRect(int x, int y, int width, int height)
Graphics.clipRect
.clipRect
in class Graphics
x
- the x coordinate of the rectangle to intersect the clip withy
- the y coordinate of the rectangle to intersect the clip withwidth
- the width of the rectangle to intersect the clip withheight
- the height of the rectangle to intersect the clip withGraphics.setClip(int, int, int, int)
,
Graphics.setClip(Shape)
public void setClip(int x, int y, int width, int height)
Graphics.setClip
.setClip
in class Graphics
x
- the x coordinate of the new clip rectangle.y
- the y coordinate of the new clip rectangle.width
- the width of the new clip rectangle.height
- the height of the new clip rectangle.Graphics.clipRect(int, int, int, int)
,
Graphics.setClip(Shape)
,
Graphics.getClip()
public Shape getClip()
Graphics.getClip
.getClip
in class Graphics
Shape
object representing the
current clipping area, or null
if
no clip is set.Graphics.getClipBounds()
,
Graphics.clipRect(int, int, int, int)
,
Graphics.setClip(int, int, int, int)
,
Graphics.setClip(Shape)
public void setClip(Shape clip)
Graphics.setClip
.setClip
in class Graphics
clip
- the Shape
to use to set the clipGraphics.getClip()
,
Graphics.clipRect(int, int, int, int)
,
Graphics.setClip(int, int, int, int)
public void drawRect(int x, int y, int width, int height)
Graphics.drawRect
.drawRect
in class Graphics
x
- the x coordinate
of the rectangle to be drawn.y
- the y coordinate
of the rectangle to be drawn.width
- the width of the rectangle to be drawn.height
- the height of the rectangle to be drawn.Graphics.fillRect(int, int, int, int)
,
Graphics.clearRect(int, int, int, int)
public void fillRect(int x, int y, int width, int height)
Graphics.fillRect
.fillRect
in class Graphics
x
- the x coordinate
of the rectangle to be filled.y
- the y coordinate
of the rectangle to be filled.width
- the width of the rectangle to be filled.height
- the height of the rectangle to be filled.Graphics.clearRect(int, int, int, int)
,
Graphics.drawRect(int, int, int, int)
public void clearRect(int x, int y, int width, int height)
Graphics.clearRect
.clearRect
in class Graphics
x
- the x coordinate of the rectangle to clear.y
- the y coordinate of the rectangle to clear.width
- the width of the rectangle to clear.height
- the height of the rectangle to clear.Graphics.fillRect(int, int, int, int)
,
Graphics.drawRect(int, int, int, int)
,
Graphics.setColor(java.awt.Color)
,
Graphics.setPaintMode()
,
Graphics.setXORMode(java.awt.Color)
public void drawRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)
Graphics.drawRoundRect
.drawRoundRect
in class Graphics
x
- the x coordinate of the rectangle to be drawn.y
- the y coordinate of the rectangle to be drawn.width
- the width of the rectangle to be drawn.height
- the height of the rectangle to be drawn.arcWidth
- the horizontal diameter of the arc
at the four corners.arcHeight
- the vertical diameter of the arc
at the four corners.Graphics.fillRoundRect(int, int, int, int, int, int)
public void fillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)
Graphics.fillRoundRect
.fillRoundRect
in class Graphics
x
- the x coordinate of the rectangle to be filled.y
- the y coordinate of the rectangle to be filled.width
- the width of the rectangle to be filled.height
- the height of the rectangle to be filled.arcWidth
- the horizontal diameter
of the arc at the four corners.arcHeight
- the vertical diameter
of the arc at the four corners.Graphics.drawRoundRect(int, int, int, int, int, int)
public void drawLine(int x1, int y1, int x2, int y2)
Graphics.drawLine
.public void draw3DRect(int x, int y, int width, int height, boolean raised)
Graphics.draw3DRect
.draw3DRect
in class Graphics
x
- the x coordinate of the rectangle to be drawn.y
- the y coordinate of the rectangle to be drawn.width
- the width of the rectangle to be drawn.height
- the height of the rectangle to be drawn.raised
- a boolean that determines whether the rectangle
appears to be raised above the surface
or sunk into the surface.Graphics.fill3DRect(int, int, int, int, boolean)
public void fill3DRect(int x, int y, int width, int height, boolean raised)
Graphics.fill3DRect
.fill3DRect
in class Graphics
x
- the x coordinate of the rectangle to be filled.y
- the y coordinate of the rectangle to be filled.width
- the width of the rectangle to be filled.height
- the height of the rectangle to be filled.raised
- a boolean value that determines whether the
rectangle appears to be raised above the surface
or etched into the surface.Graphics.draw3DRect(int, int, int, int, boolean)
public void drawOval(int x, int y, int width, int height)
Graphics.drawOval
.drawOval
in class Graphics
x
- the x coordinate of the upper left
corner of the oval to be drawn.y
- the y coordinate of the upper left
corner of the oval to be drawn.width
- the width of the oval to be drawn.height
- the height of the oval to be drawn.Graphics.fillOval(int, int, int, int)
public void fillOval(int x, int y, int width, int height)
Graphics.fillOval
.fillOval
in class Graphics
x
- the x coordinate of the upper left corner
of the oval to be filled.y
- the y coordinate of the upper left corner
of the oval to be filled.width
- the width of the oval to be filled.height
- the height of the oval to be filled.Graphics.drawOval(int, int, int, int)
public void drawArc(int x, int y, int width, int height, int startAngle, int arcAngle)
Graphics.drawArc
.drawArc
in class Graphics
x
- the x coordinate of the
upper-left corner of the arc to be drawn.y
- the y coordinate of the
upper-left corner of the arc to be drawn.width
- the width of the arc to be drawn.height
- the height of the arc to be drawn.startAngle
- the beginning angle.arcAngle
- the angular extent of the arc,
relative to the start angle.Graphics.fillArc(int, int, int, int, int, int)
public void fillArc(int x, int y, int width, int height, int startAngle, int arcAngle)
Graphics.fillArc
.fillArc
in class Graphics
x
- the x coordinate of the
upper-left corner of the arc to be filled.y
- the y coordinate of the
upper-left corner of the arc to be filled.width
- the width of the arc to be filled.height
- the height of the arc to be filled.startAngle
- the beginning angle.arcAngle
- the angular extent of the arc,
relative to the start angle.Graphics.drawArc(int, int, int, int, int, int)
public void drawPolyline(int[] xPoints, int[] yPoints, int nPoints)
Graphics.drawPolyline
.drawPolyline
in class Graphics
xPoints
- an array of x pointsyPoints
- an array of y pointsnPoints
- the total number of pointsGraphics.drawPolygon(int[], int[], int)
public void drawPolygon(int[] xPoints, int[] yPoints, int nPoints)
Graphics.drawPolygon
.drawPolygon
in class Graphics
xPoints
- a an array of x
coordinates.yPoints
- a an array of y
coordinates.nPoints
- a the total number of points.Graphics.fillPolygon(int[], int[], int)
,
Graphics.drawPolyline(int[], int[], int)
public void fillPolygon(int[] xPoints, int[] yPoints, int nPoints)
Graphics.fillPolygon
.fillPolygon
in class Graphics
xPoints
- a an array of x
coordinates.yPoints
- a an array of y
coordinates.nPoints
- a the total number of points.Graphics.drawPolygon(int[], int[], int)
public void drawString(String aString, int x, int y)
Graphics.drawString
.drawString
in class Graphics
aString
- the string to be drawn.x
- the x coordinate.y
- the y coordinate.Graphics.drawBytes(byte[], int, int, int, int)
,
Graphics.drawChars(char[], int, int, int, int)
public void drawString(AttributedCharacterIterator iterator, int x, int y)
Graphics.drawString
.drawString
in class Graphics
iterator
- the iterator whose text is to be drawnx
- the x coordinate.y
- the y coordinate.Graphics.drawBytes(byte[], int, int, int, int)
,
Graphics.drawChars(char[], int, int, int, int)
public void drawBytes(byte[] data, int offset, int length, int x, int y)
Graphics.drawBytes
.drawBytes
in class Graphics
data
- the data to be drawnoffset
- the start offset in the datalength
- the number of bytes that are drawnx
- the x coordinate of the baseline of the texty
- the y coordinate of the baseline of the textGraphics.drawChars(char[], int, int, int, int)
,
Graphics.drawString(java.lang.String, int, int)
public void drawChars(char[] data, int offset, int length, int x, int y)
Graphics.drawChars
.drawChars
in class Graphics
data
- the array of characters to be drawnoffset
- the start offset in the datalength
- the number of characters to be drawnx
- the x coordinate of the baseline of the texty
- the y coordinate of the baseline of the textGraphics.drawBytes(byte[], int, int, int, int)
,
Graphics.drawString(java.lang.String, int, int)
public boolean drawImage(Image img, int x, int y, ImageObserver observer)
Graphics.drawImage
.drawImage
in class Graphics
img
- the specified image to be drawn. This method does
nothing if img
is null.x
- the x coordinate.y
- the y coordinate.observer
- object to be notified as more of
the image is converted.false
if the image pixels are still changing;
true
otherwise.Image
,
ImageObserver
,
ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
public boolean drawImage(Image img, int x, int y, int width, int height, ImageObserver observer)
Graphics.drawImage
.drawImage
in class Graphics
img
- the specified image to be drawn. This method does
nothing if img
is null.x
- the x coordinate.y
- the y coordinate.width
- the width of the rectangle.height
- the height of the rectangle.observer
- object to be notified as more of
the image is converted.false
if the image pixels are still changing;
true
otherwise.Image
,
ImageObserver
,
ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
public boolean drawImage(Image img, int x, int y, Color bgcolor, ImageObserver observer)
Graphics.drawImage
.drawImage
in class Graphics
img
- the specified image to be drawn. This method does
nothing if img
is null.x
- the x coordinate.y
- the y coordinate.bgcolor
- the background color to paint under the
non-opaque portions of the image.observer
- object to be notified as more of
the image is converted.false
if the image pixels are still changing;
true
otherwise.Image
,
ImageObserver
,
ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
public boolean drawImage(Image img, int x, int y, int width, int height, Color bgcolor, ImageObserver observer)
Graphics.drawImage
.drawImage
in class Graphics
img
- the specified image to be drawn. This method does
nothing if img
is null.x
- the x coordinate.y
- the y coordinate.width
- the width of the rectangle.height
- the height of the rectangle.bgcolor
- the background color to paint under the
non-opaque portions of the image.observer
- object to be notified as more of
the image is converted.false
if the image pixels are still changing;
true
otherwise.Image
,
ImageObserver
,
ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
public boolean drawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, ImageObserver observer)
Graphics.drawImage
.drawImage
in class Graphics
img
- the specified image to be drawn. This method does
nothing if img
is null.dx1
- the x coordinate of the first corner of the
destination rectangle.dy1
- the y coordinate of the first corner of the
destination rectangle.dx2
- the x coordinate of the second corner of the
destination rectangle.dy2
- the y coordinate of the second corner of the
destination rectangle.sx1
- the x coordinate of the first corner of the
source rectangle.sy1
- the y coordinate of the first corner of the
source rectangle.sx2
- the x coordinate of the second corner of the
source rectangle.sy2
- the y coordinate of the second corner of the
source rectangle.observer
- object to be notified as more of the image is
scaled and converted.false
if the image pixels are still changing;
true
otherwise.Image
,
ImageObserver
,
ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
public boolean drawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, Color bgcolor, ImageObserver observer)
Graphics.drawImage
.drawImage
in class Graphics
img
- the specified image to be drawn. This method does
nothing if img
is null.dx1
- the x coordinate of the first corner of the
destination rectangle.dy1
- the y coordinate of the first corner of the
destination rectangle.dx2
- the x coordinate of the second corner of the
destination rectangle.dy2
- the y coordinate of the second corner of the
destination rectangle.sx1
- the x coordinate of the first corner of the
source rectangle.sy1
- the y coordinate of the first corner of the
source rectangle.sx2
- the x coordinate of the second corner of the
source rectangle.sy2
- the y coordinate of the second corner of the
source rectangle.bgcolor
- the background color to paint under the
non-opaque portions of the image.observer
- object to be notified as more of the image is
scaled and converted.false
if the image pixels are still changing;
true
otherwise.Image
,
ImageObserver
,
ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
public void copyArea(int x, int y, int width, int height, int destX, int destY)
Graphics.copyArea
.copyArea
in class Graphics
x
- the x coordinate of the source rectangle.y
- the y coordinate of the source rectangle.width
- the width of the source rectangle.height
- the height of the source rectangle.destX
- the horizontal distance to copy the pixels.destY
- the vertical distance to copy the pixels.public void dispose()
Graphics.dispose
.dispose
in class Graphics
Graphics.finalize()
,
Component.paint(java.awt.Graphics)
,
Component.update(java.awt.Graphics)
,
Component.getGraphics()
,
Graphics.create()
public boolean isDrawingBuffer()
public void setDebugOptions(int options)
public int getDebugOptions()
setDebugOptions(int)
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2023, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.