public class DebugGraphics extends Graphics
Graphics subclass supporting graphics debugging. Overrides most methods from Graphics. DebugGraphics objects are rarely created by hand. They are most frequently created automatically when a JComponent's debugGraphicsOptions are changed using the setDebugGraphicsOptions() method.
NOTE: You must turn off double buffering to use DebugGraphics: RepaintManager repaintManager = RepaintManager.currentManager(component); repaintManager.setDoubleBufferingEnabled(false);
JComponent.setDebugGraphicsOptions(int)
, RepaintManager.currentManager(java.awt.Component)
, RepaintManager.setDoubleBufferingEnabled(boolean)
public static final int LOG_OPTION
Log graphics operations.
public static final int FLASH_OPTION
Flash graphics operations.
public static final int BUFFERED_OPTION
Show buffered operations in a separate Frame
.
public static final int NONE_OPTION
Don't debug graphics operations.
public DebugGraphics()
Constructs a new debug graphics context that supports slowed down drawing.
public DebugGraphics(Graphics graphics, JComponent component)
Constructs a debug graphics context from an existing graphics context that slows down drawing for the specified component.
graphics
- the Graphics context to slow downcomponent
- the JComponent to draw slowlypublic DebugGraphics(Graphics graphics)
Constructs a debug graphics context from an existing graphics context that supports slowed down drawing.
graphics
- the Graphics context to slow downpublic Graphics create()
Overrides Graphics.create
to return a DebugGraphics object.
create
in class Graphics
public Graphics create(int x, int y, int width, int height)
Overrides 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)
Sets the Color used to flash drawing operations.
public static Color flashColor()
Returns the Color used to flash drawing operations.
setFlashColor(java.awt.Color)
public static void setFlashTime(int flashTime)
Sets the time delay of drawing operation flashing.
public static int flashTime()
Returns the time delay of drawing operation flashing.
setFlashTime(int)
public static void setFlashCount(int flashCount)
Sets the number of times that drawing operations will flash.
public static int flashCount()
Returns the number of times that drawing operations will flash.
setFlashCount(int)
public static void setLogStream(PrintStream stream)
Sets the stream to which the DebugGraphics logs drawing operations.
public static PrintStream logStream()
Returns the stream to which the DebugGraphics logs drawing operations.
setLogStream(java.io.PrintStream)
public void setFont(Font aFont)
Sets the Font used for text drawing operations.
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()
Returns the Font used for text drawing operations.
getFont
in class Graphics
setFont(java.awt.Font)
public void setColor(Color aColor)
Sets the color to be used for drawing and filling lines and shapes.
setColor
in class Graphics
aColor
- the new rendering color.Color
, Graphics.getColor()
public Color getColor()
Returns the Color used for text drawing operations.
getColor
in class Graphics
setColor(java.awt.Color)
public FontMetrics getFontMetrics()
Overrides Graphics.getFontMetrics
.
getFontMetrics
in class Graphics
Graphics.getFont()
, FontMetrics
, Graphics.getFontMetrics(Font)
public FontMetrics getFontMetrics(Font f)
Overrides Graphics.getFontMetrics
.
getFontMetrics
in class Graphics
f
- the specified fontGraphics.getFont()
, FontMetrics
, Graphics.getFontMetrics()
public void translate(int x, int y)
Overrides Graphics.translate
.
public void setPaintMode()
Overrides Graphics.setPaintMode
.
setPaintMode
in class Graphics
public void setXORMode(Color aColor)
Overrides Graphics.setXORMode
.
setXORMode
in class Graphics
aColor
- the XOR alternation colorpublic Rectangle getClipBounds()
Overrides 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)
Overrides 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)
Overrides 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()
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides Graphics.drawLine
.
drawLine
in class Graphics
x1
- the first point's x coordinate.y1
- the first point's y coordinate.x2
- the second point's x coordinate.y2
- the second point's y coordinate.public void draw3DRect(int x, int y, int width, int height, boolean raised)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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)
Overrides 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()
Overrides 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()
Returns the drawingBuffer value.
public void setDebugOptions(int options)
Enables/disables diagnostic information about every graphics operation. The value of options indicates how this information should be displayed. LOG_OPTION causes a text message to be printed. FLASH_OPTION causes the drawing to flash several times. BUFFERED_OPTION creates a new Frame that shows each operation on an offscreen buffer. The value of options is bitwise OR'd into the current value. To disable debugging use NONE_OPTION.
public int getDebugOptions()
Returns the current debugging options for this DebugGraphics.
setDebugOptions(int)
© 1993–2017, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.