public abstract class AbstractDeployableGraphics2D
extends java.awt.Graphics2D
AbstractDeployableGraphics2D is extended e.g. by PDEGraphics2D which provides a concrete implementation for generating Processing script output.
Other subclasses may be added in the future to support other scripting languages.
Revisions:
14.05.2013 Change class name to avoid conflicts with third-party packages.
27.05.2013 Do not clone parentGraphics in constructor
08.12.2013 Remove some left-over pde specific code
| Modifier and Type | Class and Description |
|---|---|
protected static class |
AbstractDeployableGraphics2D.GJPathSegmentInfo |
| Modifier and Type | Field and Description |
|---|---|
protected java.util.ArrayList<java.lang.Integer> |
latency
ArrayList of Integers representing the delay from the start of painting
to painting each picture in milliseconds.
|
protected java.awt.Graphics2D |
parentGraphics
Graphics2D instance supplied to an AbstractDeployableGraphics2D subclass
constructor.
|
protected java.util.ArrayList<java.util.Formatter> |
pictures
ArrayList of Formatters representing the code for each picture.
|
protected long |
startTime |
| Modifier | Constructor and Description |
|---|---|
protected |
AbstractDeployableGraphics2D(java.awt.Graphics2D g)
Super-constructor that should be called from sub-class constructors.
|
| Modifier and Type | Method and Description |
|---|---|
abstract void |
addCode(java.lang.String code)
Inserts user-specified code into the coded output at the current
location.
|
abstract void |
addComment(java.lang.String comment)
Sets a string that will be added to the code output as a comment.
|
void |
addRenderingHints(java.util.Map<?,?> hints) |
abstract void |
append(java.awt.Component c) |
abstract void |
append(java.awt.Component c,
int elapsedTime) |
abstract void |
appendCode(java.lang.String code)
Adds user-specified code to the end of the generated code.
|
void |
clearRect(int x,
int y,
int width,
int height) |
void |
clip(java.awt.Shape s) |
void |
clipRect(int x,
int y,
int width,
int height) |
void |
copyArea(int x,
int y,
int width,
int height,
int dx,
int dy) |
abstract boolean |
copyImage(java.awt.Image img,
int dx,
int dy,
int sx,
int sy,
int width,
int height,
java.awt.Color bgcolor,
java.awt.image.ImageObserver observer)
Implemented in some Graphics2D subclasses e.g.
|
void |
dispose() |
void |
draw(java.awt.Shape s) |
void |
draw3DRect(int x,
int y,
int width,
int height,
boolean raised)
AWT Graphics and Graphics2D classes generally implement draw3DRect
through calls to other methods.
|
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 |
drawGlyphVector(java.awt.font.GlyphVector g,
float x,
float y) |
void |
drawImage(java.awt.image.BufferedImage img,
java.awt.image.BufferedImageOp op,
int x,
int y) |
boolean |
drawImage(java.awt.Image img,
java.awt.geom.AffineTransform xform,
java.awt.image.ImageObserver obs) |
boolean |
drawImage(java.awt.Image img,
int x,
int y,
java.awt.Color bgcolor,
java.awt.image.ImageObserver observer) |
boolean |
drawImage(java.awt.Image img,
int x,
int y,
java.awt.image.ImageObserver observer) |
boolean |
drawImage(java.awt.Image img,
int x,
int y,
int width,
int height,
java.awt.Color bgcolor,
java.awt.image.ImageObserver observer) |
boolean |
drawImage(java.awt.Image img,
int x,
int y,
int width,
int height,
java.awt.image.ImageObserver observer) |
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) |
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) |
void |
drawLine(int x1,
int y1,
int x2,
int y2) |
void |
drawOval(int x,
int y,
int width,
int height) |
void |
drawPolygon(int[] xPoints,
int[] yPoints,
int nPoints) |
void |
drawPolyline(int[] xPoints,
int[] yPoints,
int nPoints) |
void |
drawRect(int x,
int y,
int width,
int height) |
void |
drawRenderableImage(java.awt.image.renderable.RenderableImage img,
java.awt.geom.AffineTransform xform) |
void |
drawRenderedImage(java.awt.image.RenderedImage img,
java.awt.geom.AffineTransform xform) |
void |
drawRoundRect(int x,
int y,
int width,
int height,
int arcWidth,
int arcHeight) |
void |
drawString(java.text.AttributedCharacterIterator iterator,
float x,
float y) |
void |
drawString(java.text.AttributedCharacterIterator iterator,
int x,
int y) |
void |
drawString(java.lang.String str,
float x,
float y) |
void |
drawString(java.lang.String str,
int x,
int y) |
void |
fill(java.awt.Shape s) |
void |
fill3DRect(int x,
int y,
int width,
int height,
boolean raised)
AWT Graphics and Graphics2D classes generally implement fill3DRect
through calls to other methods.
|
void |
fillArc(int x,
int y,
int width,
int height,
int startAngle,
int arcAngle) |
void |
fillOval(int x,
int y,
int width,
int height) |
void |
fillPolygon(int[] xPoints,
int[] yPoints,
int nPoints) |
void |
fillRect(int x,
int y,
int width,
int height) |
void |
fillRoundRect(int x,
int y,
int width,
int height,
int arcWidth,
int arcHeight) |
int |
getActionDelay() |
java.awt.Color |
getBackground() |
java.awt.Shape |
getClip() |
java.awt.Rectangle |
getClipBounds() |
java.lang.String |
getCode() |
java.awt.Color |
getColor() |
java.awt.Composite |
getComposite() |
java.awt.GraphicsConfiguration |
getDeviceConfiguration() |
java.awt.Font |
getFont() |
java.awt.FontMetrics |
getFontMetrics(java.awt.Font f) |
java.awt.font.FontRenderContext |
getFontRenderContext() |
java.awt.Paint |
getPaint() |
java.lang.Object |
getRenderingHint(java.awt.RenderingHints.Key hintKey) |
java.awt.RenderingHints |
getRenderingHints() |
java.awt.Stroke |
getStroke() |
java.awt.geom.AffineTransform |
getTransform() |
boolean |
hit(java.awt.Rectangle rect,
java.awt.Shape s,
boolean onStroke) |
boolean |
isAlsoPaintToSource() |
abstract void |
prependCode(java.lang.String code)
Inserts user-specified code at the start of the generated code, but after
any automatically generated declarations (which are therefore potentially
available for use in that code).
|
void |
rotate(double theta) |
void |
rotate(double theta,
double x,
double y) |
void |
scale(double sx,
double sy) |
void |
setActionDelay(int actionDelay) |
void |
setAlsoPaintToSource(boolean alsoPaintToSource) |
void |
setBackground(java.awt.Color color) |
void |
setClip(int x,
int y,
int width,
int height) |
void |
setClip(java.awt.Shape clip) |
void |
setColor(java.awt.Color c) |
void |
setComposite(java.awt.Composite comp) |
void |
setFont(java.awt.Font font) |
void |
setPaint(java.awt.Paint paint) |
void |
setPaintMode() |
abstract void |
setPaintObject(java.lang.Object paintObject)
Call this routine in the painting mechanism of an AWT/Swing hierarchy.
|
void |
setRenderingHint(java.awt.RenderingHints.Key hintKey,
java.lang.Object hintValue) |
void |
setRenderingHints(java.util.Map<?,?> hints) |
void |
setStroke(java.awt.Stroke s) |
void |
setTransform(java.awt.geom.AffineTransform Tx) |
void |
setXORMode(java.awt.Color c1) |
void |
shear(double shx,
double shy) |
void |
transform(java.awt.geom.AffineTransform Tx) |
void |
translate(double tx,
double ty) |
void |
translate(int x,
int y) |
void |
write(java.io.File f) |
void |
write(java.lang.String f)
Writes the generated code to
|
protected java.awt.Graphics2D parentGraphics
protected java.util.ArrayList<java.util.Formatter> pictures
protected java.util.ArrayList<java.lang.Integer> latency
protected long startTime
protected AbstractDeployableGraphics2D(java.awt.Graphics2D g)
g - the parent Graphics2D object for the component to be painted.public boolean isAlsoPaintToSource()
public void setAlsoPaintToSource(boolean alsoPaintToSource)
public int getActionDelay()
public void setActionDelay(int actionDelay)
actionDelay - the actionDelay to setpublic abstract void append(java.awt.Component c,
int elapsedTime)
public abstract void append(java.awt.Component c)
public java.lang.String getCode()
public void write(java.io.File f)
throws java.io.IOException
java.io.IOExceptionpublic void write(java.lang.String f)
throws java.io.IOException
f - the file namejava.io.IOExceptionpublic abstract void setPaintObject(java.lang.Object paintObject)
public void paintComponent(Graphics g){
if (g instanceof AbstractDeployableGraphics2D) {
((AbstractDeployableGraphics2D)g).setPaintObject(this);
}
}
paintObject - the paintObject to setpublic abstract void addComment(java.lang.String comment)
comment - the comment to set as a Stringpublic abstract void prependCode(java.lang.String code)
code - fully formatted code stringpublic abstract void addCode(java.lang.String code)
code - fully formatted code stringpublic abstract void appendCode(java.lang.String code)
code - the code to appendpublic abstract boolean copyImage(java.awt.Image img,
int dx,
int dy,
int sx,
int sy,
int width,
int height,
java.awt.Color bgcolor,
java.awt.image.ImageObserver observer)
img - dx - dy - sx - sy - width - height - bgcolor - observer - public final void draw3DRect(int x,
int y,
int width,
int height,
boolean raised)
draw3DRect in class java.awt.Graphics2Dpublic final void fill3DRect(int x,
int y,
int width,
int height,
boolean raised)
fill3DRect in class java.awt.Graphics2Dpublic final void setTransform(java.awt.geom.AffineTransform Tx)
setTransform in class java.awt.Graphics2Dpublic java.awt.geom.AffineTransform getTransform()
getTransform in class java.awt.Graphics2Dpublic java.awt.Stroke getStroke()
getStroke in class java.awt.Graphics2Dpublic void clip(java.awt.Shape s)
clip in class java.awt.Graphics2Dpublic java.awt.font.FontRenderContext getFontRenderContext()
getFontRenderContext in class java.awt.Graphics2Dpublic java.awt.Color getColor()
getColor in class java.awt.Graphicspublic void setColor(java.awt.Color c)
setColor in class java.awt.Graphicspublic void setPaintMode()
setPaintMode in class java.awt.Graphicspublic final java.awt.Font getFont()
getFont in class java.awt.Graphicspublic void setFont(java.awt.Font font)
setFont in class java.awt.Graphicspublic java.awt.Rectangle getClipBounds()
getClipBounds in class java.awt.Graphicspublic void clipRect(int x,
int y,
int width,
int height)
clipRect in class java.awt.Graphicspublic void setClip(int x,
int y,
int width,
int height)
setClip in class java.awt.Graphicspublic java.awt.Shape getClip()
getClip in class java.awt.Graphicspublic void setClip(java.awt.Shape clip)
setClip in class java.awt.Graphicspublic boolean hit(java.awt.Rectangle rect,
java.awt.Shape s,
boolean onStroke)
hit in class java.awt.Graphics2Dpublic void setComposite(java.awt.Composite comp)
setComposite in class java.awt.Graphics2Dpublic void setPaint(java.awt.Paint paint)
setPaint in class java.awt.Graphics2Dpublic void setStroke(java.awt.Stroke s)
setStroke in class java.awt.Graphics2Dpublic void setRenderingHint(java.awt.RenderingHints.Key hintKey,
java.lang.Object hintValue)
setRenderingHint in class java.awt.Graphics2Dpublic java.lang.Object getRenderingHint(java.awt.RenderingHints.Key hintKey)
getRenderingHint in class java.awt.Graphics2Dpublic void setRenderingHints(java.util.Map<?,?> hints)
setRenderingHints in class java.awt.Graphics2Dpublic void addRenderingHints(java.util.Map<?,?> hints)
addRenderingHints in class java.awt.Graphics2Dpublic java.awt.RenderingHints getRenderingHints()
getRenderingHints in class java.awt.Graphics2Dpublic void setXORMode(java.awt.Color c1)
setXORMode in class java.awt.Graphicspublic java.awt.FontMetrics getFontMetrics(java.awt.Font f)
getFontMetrics in class java.awt.Graphicspublic void copyArea(int x,
int y,
int width,
int height,
int dx,
int dy)
copyArea in class java.awt.Graphicspublic java.awt.GraphicsConfiguration getDeviceConfiguration()
getDeviceConfiguration in class java.awt.Graphics2Dpublic void translate(int x,
int y)
translate in class java.awt.Graphics2Dpublic void translate(double tx,
double ty)
translate in class java.awt.Graphics2Dpublic void rotate(double theta)
rotate in class java.awt.Graphics2Dpublic void rotate(double theta,
double x,
double y)
rotate in class java.awt.Graphics2Dpublic void scale(double sx,
double sy)
scale in class java.awt.Graphics2Dpublic void shear(double shx,
double shy)
shear in class java.awt.Graphics2Dpublic void transform(java.awt.geom.AffineTransform Tx)
transform in class java.awt.Graphics2Dpublic java.awt.Paint getPaint()
getPaint in class java.awt.Graphics2Dpublic java.awt.Composite getComposite()
getComposite in class java.awt.Graphics2Dpublic void setBackground(java.awt.Color color)
setBackground in class java.awt.Graphics2Dpublic java.awt.Color getBackground()
getBackground in class java.awt.Graphics2Dpublic void draw(java.awt.Shape s)
draw in class java.awt.Graphics2Ds - public void drawString(java.lang.String str,
int x,
int y)
drawString in class java.awt.Graphics2Dpublic void drawString(java.lang.String str,
float x,
float y)
drawString in class java.awt.Graphics2Dpublic void drawString(java.text.AttributedCharacterIterator iterator,
int x,
int y)
drawString in class java.awt.Graphics2Dpublic void drawString(java.text.AttributedCharacterIterator iterator,
float x,
float y)
drawString in class java.awt.Graphics2Dpublic void drawGlyphVector(java.awt.font.GlyphVector g,
float x,
float y)
drawGlyphVector in class java.awt.Graphics2Dpublic void fill(java.awt.Shape s)
fill in class java.awt.Graphics2Dpublic void drawLine(int x1,
int y1,
int x2,
int y2)
drawLine in class java.awt.Graphicspublic void drawRect(int x,
int y,
int width,
int height)
drawRect in class java.awt.Graphicspublic void fillRect(int x,
int y,
int width,
int height)
fillRect in class java.awt.Graphicspublic void clearRect(int x,
int y,
int width,
int height)
clearRect in class java.awt.Graphicspublic void drawRoundRect(int x,
int y,
int width,
int height,
int arcWidth,
int arcHeight)
drawRoundRect in class java.awt.Graphicspublic void fillRoundRect(int x,
int y,
int width,
int height,
int arcWidth,
int arcHeight)
fillRoundRect in class java.awt.Graphicspublic void drawOval(int x,
int y,
int width,
int height)
drawOval in class java.awt.Graphicspublic void fillOval(int x,
int y,
int width,
int height)
fillOval in class java.awt.Graphicspublic void drawArc(int x,
int y,
int width,
int height,
int startAngle,
int arcAngle)
drawArc in class java.awt.Graphicspublic void fillArc(int x,
int y,
int width,
int height,
int startAngle,
int arcAngle)
fillArc in class java.awt.Graphicspublic void drawPolyline(int[] xPoints,
int[] yPoints,
int nPoints)
drawPolyline in class java.awt.Graphicspublic void drawPolygon(int[] xPoints,
int[] yPoints,
int nPoints)
drawPolygon in class java.awt.Graphicspublic void fillPolygon(int[] xPoints,
int[] yPoints,
int nPoints)
fillPolygon in class java.awt.Graphicspublic void drawBytes(byte[] data,
int offset,
int length,
int x,
int y)
drawBytes in class java.awt.Graphicspublic boolean drawImage(java.awt.Image img,
int x,
int y,
java.awt.image.ImageObserver observer)
drawImage in class java.awt.Graphicspublic boolean drawImage(java.awt.Image img,
int x,
int y,
int width,
int height,
java.awt.image.ImageObserver observer)
drawImage in class java.awt.Graphicspublic boolean drawImage(java.awt.Image img,
int x,
int y,
java.awt.Color bgcolor,
java.awt.image.ImageObserver observer)
drawImage in class java.awt.Graphicspublic boolean drawImage(java.awt.Image img,
int x,
int y,
int width,
int height,
java.awt.Color bgcolor,
java.awt.image.ImageObserver observer)
drawImage in class java.awt.Graphicspublic 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)
drawImage in class java.awt.Graphicspublic 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)
drawImage in class java.awt.Graphicspublic boolean drawImage(java.awt.Image img,
java.awt.geom.AffineTransform xform,
java.awt.image.ImageObserver obs)
drawImage in class java.awt.Graphics2Dpublic void drawImage(java.awt.image.BufferedImage img,
java.awt.image.BufferedImageOp op,
int x,
int y)
drawImage in class java.awt.Graphics2Dpublic void drawRenderedImage(java.awt.image.RenderedImage img,
java.awt.geom.AffineTransform xform)
drawRenderedImage in class java.awt.Graphics2Dpublic void drawRenderableImage(java.awt.image.renderable.RenderableImage img,
java.awt.geom.AffineTransform xform)
drawRenderableImage in class java.awt.Graphics2Dpublic void dispose()
dispose in class java.awt.Graphics