Package ca.cgjennings.graphics
Class PrototypingGraphics2D
- java.lang.Object
-
- java.awt.Graphics
-
- java.awt.Graphics2D
-
- ca.cgjennings.graphics.AbstractGraphics2DAdapter
-
- ca.cgjennings.graphics.PrototypingGraphics2D
-
public final class PrototypingGraphics2D extends AbstractGraphics2DAdapter
A graphics context that selectively renders different classes of content for speed or prototyping purposes. For example, it could be set to draw only text to save the ink that would be spent printing background graphics.- Author:
- Chris Jennings
-
-
Field Summary
-
Fields inherited from class ca.cgjennings.graphics.AbstractGraphics2DAdapter
g
-
-
Constructor Summary
Constructors Constructor Description PrototypingGraphics2D(java.awt.Graphics2D unrestrictedGraphics)Creates a new prototyping graphics context with default options: text and shapes are drawn, but images are not.PrototypingGraphics2D(java.awt.Graphics2D unrestrictedGraphics, boolean drawText, boolean drawImages, boolean strokeShapes, boolean fillShapes, boolean clearRects)Creates a new prototyping graphics context that selectively renders the specified elements.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclearRect(int x, int y, int width, int height)protected PrototypingGraphics2DcreateImpl(java.awt.Graphics2D newG)Creates and returns a new instance of this adapter with the same behaviour, but for the specified graphics context.voiddraw(java.awt.Shape s)voiddrawArc(int x, int y, int width, int height, int startAngle, int arcAngle)voiddrawBytes(byte[] data, int offset, int length, int x, int y)voiddrawChars(char[] data, int offset, int length, int x, int y)voiddrawGlyphVector(java.awt.font.GlyphVector gv, float x, float y)voiddrawImage(java.awt.image.BufferedImage img, java.awt.image.BufferedImageOp op, int x, int y)booleandrawImage(java.awt.Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, java.awt.Color bgcolor, java.awt.image.ImageObserver observer)booleandrawImage(java.awt.Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, java.awt.image.ImageObserver observer)booleandrawImage(java.awt.Image img, int x, int y, int width, int height, java.awt.Color bgcolor, java.awt.image.ImageObserver observer)booleandrawImage(java.awt.Image img, int x, int y, int width, int height, java.awt.image.ImageObserver observer)booleandrawImage(java.awt.Image img, int x, int y, java.awt.Color bgcolor, java.awt.image.ImageObserver observer)booleandrawImage(java.awt.Image img, int x, int y, java.awt.image.ImageObserver observer)booleandrawImage(java.awt.Image img, java.awt.geom.AffineTransform xform, java.awt.image.ImageObserver obs)voiddrawLine(int x1, int y1, int x2, int y2)voiddrawOval(int x, int y, int width, int height)voiddrawPolygon(int[] xPoints, int[] yPoints, int nPoints)voiddrawPolygon(java.awt.Polygon p)voiddrawPolyline(int[] xPoints, int[] yPoints, int nPoints)voiddrawRect(int x, int y, int width, int height)voiddrawRenderableImage(java.awt.image.renderable.RenderableImage img, java.awt.geom.AffineTransform xform)voiddrawRenderedImage(java.awt.image.RenderedImage img, java.awt.geom.AffineTransform xform)voiddrawRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)voiddrawString(java.lang.String str, float x, float y)voiddrawString(java.lang.String str, int x, int y)voiddrawString(java.text.AttributedCharacterIterator iterator, float x, float y)voiddrawString(java.text.AttributedCharacterIterator iterator, int x, int y)voidfill(java.awt.Shape s)voidfillArc(int x, int y, int width, int height, int startAngle, int arcAngle)voidfillOval(int x, int y, int width, int height)voidfillPolygon(int[] xPoints, int[] yPoints, int nPoints)voidfillPolygon(java.awt.Polygon p)voidfillRect(int x, int y, int width, int height)voidfillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)java.awt.Graphics2DgetUnrestrictedGraphics()Returns the graphics instance that this wraps.java.lang.StringtoString()-
Methods inherited from class ca.cgjennings.graphics.AbstractGraphics2DAdapter
addRenderingHints, clip, clipRect, copyArea, create, dispose, getBackground, getClip, getClipBounds, getClipBounds, getColor, getComposite, getDeviceConfiguration, getFont, getFontMetrics, getFontMetrics, getFontRenderContext, getPaint, getRenderingHint, getRenderingHints, getStroke, getTransform, hit, hitClip, rotate, rotate, scale, setBackground, setClip, setClip, setColor, setComposite, setFont, setPaint, setPaintMode, setRenderingHint, setRenderingHints, setStroke, setTransform, setXORMode, shear, transform, translate, translate
-
-
-
-
Constructor Detail
-
PrototypingGraphics2D
public PrototypingGraphics2D(java.awt.Graphics2D unrestrictedGraphics)
Creates a new prototyping graphics context with default options: text and shapes are drawn, but images are not.- Parameters:
unrestrictedGraphics- a graphics context to modify
-
PrototypingGraphics2D
public PrototypingGraphics2D(java.awt.Graphics2D unrestrictedGraphics, boolean drawText, boolean drawImages, boolean strokeShapes, boolean fillShapes, boolean clearRects)Creates a new prototyping graphics context that selectively renders the specified elements.- Parameters:
unrestrictedGraphics- a graphics context to modifydrawText- if true, regular text is rendereddrawImages- if true, bitmap images are renderedstrokeShapes- if true, lines, polygons, and shape outlines are drawnfillShapes- if true, polygons and other shapes are filledclearRects- if true, regions are cleared whenclearRect(int, int, int, int)is called
-
-
Method Detail
-
createImpl
protected PrototypingGraphics2D createImpl(java.awt.Graphics2D newG)
Description copied from class:AbstractGraphics2DAdapterCreates and returns a new instance of this adapter with the same behaviour, but for the specified graphics context.- Specified by:
createImplin classAbstractGraphics2DAdapter- Parameters:
newG- the new graphics context to target- Returns:
- an adapter that wraps the new context
-
getUnrestrictedGraphics
public java.awt.Graphics2D getUnrestrictedGraphics()
Returns the graphics instance that this wraps. This can be used to ensure that some content is always rendered.- Returns:
- the non-prototype graphics that backs this instance
-
drawImage
public boolean drawImage(java.awt.Image img, java.awt.geom.AffineTransform xform, java.awt.image.ImageObserver obs)- Overrides:
drawImagein classAbstractGraphics2DAdapter
-
drawImage
public boolean drawImage(java.awt.Image img, int x, int y, java.awt.image.ImageObserver observer)- Overrides:
drawImagein classAbstractGraphics2DAdapter
-
drawImage
public boolean drawImage(java.awt.Image img, int x, int y, int width, int height, java.awt.image.ImageObserver observer)- Overrides:
drawImagein classAbstractGraphics2DAdapter
-
drawImage
public boolean drawImage(java.awt.Image img, int x, int y, java.awt.Color bgcolor, java.awt.image.ImageObserver observer)- Overrides:
drawImagein classAbstractGraphics2DAdapter
-
drawImage
public boolean drawImage(java.awt.Image img, int x, int y, int width, int height, java.awt.Color bgcolor, java.awt.image.ImageObserver observer)- Overrides:
drawImagein classAbstractGraphics2DAdapter
-
drawImage
public boolean drawImage(java.awt.Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, java.awt.image.ImageObserver observer)- Overrides:
drawImagein classAbstractGraphics2DAdapter
-
drawImage
public boolean drawImage(java.awt.Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, java.awt.Color bgcolor, java.awt.image.ImageObserver observer)- Overrides:
drawImagein classAbstractGraphics2DAdapter
-
drawImage
public void drawImage(java.awt.image.BufferedImage img, java.awt.image.BufferedImageOp op, int x, int y)- Overrides:
drawImagein classAbstractGraphics2DAdapter
-
drawRenderedImage
public void drawRenderedImage(java.awt.image.RenderedImage img, java.awt.geom.AffineTransform xform)- Overrides:
drawRenderedImagein classAbstractGraphics2DAdapter
-
drawRenderableImage
public void drawRenderableImage(java.awt.image.renderable.RenderableImage img, java.awt.geom.AffineTransform xform)- Overrides:
drawRenderableImagein classAbstractGraphics2DAdapter
-
drawString
public void drawString(java.lang.String str, int x, int y)- Overrides:
drawStringin classAbstractGraphics2DAdapter
-
drawString
public void drawString(java.lang.String str, float x, float y)- Overrides:
drawStringin classAbstractGraphics2DAdapter
-
drawString
public void drawString(java.text.AttributedCharacterIterator iterator, int x, int y)- Overrides:
drawStringin classAbstractGraphics2DAdapter
-
drawString
public void drawString(java.text.AttributedCharacterIterator iterator, float x, float y)- Overrides:
drawStringin classAbstractGraphics2DAdapter
-
drawBytes
public void drawBytes(byte[] data, int offset, int length, int x, int y)- Overrides:
drawBytesin classAbstractGraphics2DAdapter
-
drawChars
public void drawChars(char[] data, int offset, int length, int x, int y)- Overrides:
drawCharsin classAbstractGraphics2DAdapter
-
drawGlyphVector
public void drawGlyphVector(java.awt.font.GlyphVector gv, float x, float y)- Overrides:
drawGlyphVectorin classAbstractGraphics2DAdapter
-
draw
public void draw(java.awt.Shape s)
- Overrides:
drawin classAbstractGraphics2DAdapter
-
fill
public void fill(java.awt.Shape s)
- Overrides:
fillin classAbstractGraphics2DAdapter
-
drawLine
public void drawLine(int x1, int y1, int x2, int y2)- Overrides:
drawLinein classAbstractGraphics2DAdapter
-
drawRect
public void drawRect(int x, int y, int width, int height)- Overrides:
drawRectin classAbstractGraphics2DAdapter
-
fillRect
public void fillRect(int x, int y, int width, int height)- Overrides:
fillRectin classAbstractGraphics2DAdapter
-
clearRect
public void clearRect(int x, int y, int width, int height)- Overrides:
clearRectin classAbstractGraphics2DAdapter
-
drawRoundRect
public void drawRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)- Overrides:
drawRoundRectin classAbstractGraphics2DAdapter
-
fillRoundRect
public void fillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)- Overrides:
fillRoundRectin classAbstractGraphics2DAdapter
-
drawOval
public void drawOval(int x, int y, int width, int height)- Overrides:
drawOvalin classAbstractGraphics2DAdapter
-
fillOval
public void fillOval(int x, int y, int width, int height)- Overrides:
fillOvalin classAbstractGraphics2DAdapter
-
drawArc
public void drawArc(int x, int y, int width, int height, int startAngle, int arcAngle)- Overrides:
drawArcin classAbstractGraphics2DAdapter
-
fillArc
public void fillArc(int x, int y, int width, int height, int startAngle, int arcAngle)- Overrides:
fillArcin classAbstractGraphics2DAdapter
-
drawPolyline
public void drawPolyline(int[] xPoints, int[] yPoints, int nPoints)- Overrides:
drawPolylinein classAbstractGraphics2DAdapter
-
fillPolygon
public void fillPolygon(java.awt.Polygon p)
- Overrides:
fillPolygonin classAbstractGraphics2DAdapter
-
drawPolygon
public void drawPolygon(java.awt.Polygon p)
- Overrides:
drawPolygonin classAbstractGraphics2DAdapter
-
drawPolygon
public void drawPolygon(int[] xPoints, int[] yPoints, int nPoints)- Overrides:
drawPolygonin classAbstractGraphics2DAdapter
-
fillPolygon
public void fillPolygon(int[] xPoints, int[] yPoints, int nPoints)- Overrides:
fillPolygonin classAbstractGraphics2DAdapter
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.awt.Graphics
-
-