|
|||||||||
| Home >> All >> org >> apache >> batik >> ext >> awt >> [ g2d overview ] | PREV CLASS NEXT CLASS | ||||||||
SUMMARY: JAVADOC | SOURCE | DOWNLOAD | NESTED | FIELD | CONSTR | METHOD |
DETAIL: FIELD | CONSTR | METHOD | ||||||||
org.apache.batik.ext.awt.g2d
Class GraphicContext

java.lang.Objectorg.apache.batik.ext.awt.g2d.GraphicContext
- All Implemented Interfaces:
- java.lang.Cloneable
- public class GraphicContext
- extends java.lang.Object
- implements java.lang.Cloneable
- extends java.lang.Object
Handles the attributes in a graphic context:
+ Composite
+ Font
+ Paint
+ Stroke
+ Clip
+ RenderingHints
+ AffineTransform
- Version:
- $Id: GraphicContext.java,v 1.10 2005/04/02 14:26:09 deweese Exp $
| Field Summary | |
protected java.awt.Color |
background
Current background color. |
protected java.awt.Shape |
clip
Current clip |
protected java.awt.Composite |
composite
Current Composite |
protected java.awt.geom.AffineTransform |
defaultTransform
Default Transform to be used for creating FontRenderContext. |
protected java.awt.Font |
font
Current Font |
protected java.awt.Color |
foreground
Current foreground color |
protected java.awt.RenderingHints |
hints
Current set of RenderingHints |
protected java.awt.Paint |
paint
Current Paint |
protected java.awt.Stroke |
stroke
Current Stroke |
protected java.awt.geom.AffineTransform |
transform
Current AffineTransform. |
protected java.util.Vector |
transformStack
Transform stack |
protected boolean |
transformStackValid
Defines whether the transform stack is valide or not. |
| Constructor Summary | |
GraphicContext()
Default constructor |
|
GraphicContext(java.awt.geom.AffineTransform defaultDeviceTransform)
|
|
| Method Summary | |
void |
addRenderingHints(java.util.Map hints)
Sets the values of an arbitrary number of preferences for the rendering algorithms. |
void |
clip(java.awt.Shape s)
Intersects the current Clip with the interior of the
specified Shape and sets the Clip to the
resulting intersection. |
void |
clipRect(int x,
int y,
int width,
int height)
Intersects the current clip with the specified rectangle. |
java.lang.Object |
clone()
This method may be called to create a new copy of the Object. |
java.awt.Color |
getBackground()
Returns the background color used for clearing a region. |
java.awt.Shape |
getClip()
Gets the current clipping area. |
java.awt.Rectangle |
getClipBounds()
Returns the bounding rectangle of the current clipping area. |
java.awt.Color |
getColor()
Gets this graphics context's current color. |
java.awt.Composite |
getComposite()
Returns the current Composite in the
Graphics2D context. |
java.awt.Font |
getFont()
Gets the current font. |
java.awt.font.FontRenderContext |
getFontRenderContext()
Get the rendering context of the Font within this
Graphics2D context. |
java.awt.Paint |
getPaint()
Returns the current Paint of the
Graphics2D context. |
java.lang.Object |
getRenderingHint(java.awt.RenderingHints.Key hintKey)
Returns the value of a single preference for the rendering algorithms. |
java.awt.RenderingHints |
getRenderingHints()
Gets the preferences for the rendering algorithms. |
java.awt.Stroke |
getStroke()
Returns the current Stroke in the
Graphics2D context. |
java.awt.geom.AffineTransform |
getTransform()
Returns a copy of the current Transform in the
Graphics2D context. |
TransformStackElement[] |
getTransformStack()
|
protected void |
invalidateTransformStack()
Marks the GraphicContext's isNewTransformStack to true as a memento that the current transform stack was reset since it was last read. |
boolean |
isTransformStackValid()
Checks the status of the transform stack |
void |
rotate(double theta)
Concatenates the current Graphics2D
Transform with a rotation transform. |
void |
rotate(double theta,
double x,
double y)
Concatenates the current Graphics2D
Transform with a translated rotation
transform. |
void |
scale(double sx,
double sy)
Concatenates the current Graphics2D
Transform with a scaling transformation
Subsequent rendering is resized according to the specified scaling
factors relative to the previous scaling. |
void |
setBackground(java.awt.Color color)
Sets the background color for the Graphics2D context. |
void |
setClip(int x,
int y,
int width,
int height)
Sets the current clip to the rectangle specified by the given coordinates. |
void |
setClip(java.awt.Shape clip)
Sets the current clipping area to an arbitrary clip shape. |
void |
setColor(java.awt.Color c)
Sets this graphics context's current color to the specified color. |
void |
setComposite(java.awt.Composite comp)
Sets the Composite for the Graphics2D context. |
void |
setFont(java.awt.Font font)
Sets this graphics context's font to the specified font. |
void |
setPaint(java.awt.Paint paint)
Sets the Paint attribute for the
Graphics2D context. |
void |
setRenderingHint(java.awt.RenderingHints.Key hintKey,
java.lang.Object hintValue)
Sets the value of a single preference for the rendering algorithms. |
void |
setRenderingHints(java.util.Map hints)
Replaces the values of all preferences for the rendering algorithms with the specified hints. |
void |
setStroke(java.awt.Stroke s)
Sets the Stroke for the Graphics2D context. |
void |
setTransform(java.awt.geom.AffineTransform Tx)
Sets the Transform in the Graphics2D
context. |
void |
shear(double shx,
double shy)
Concatenates the current Graphics2D
Transform with a shearing transform. |
void |
transform(java.awt.geom.AffineTransform Tx)
Composes an AffineTransform object with the
Transform in this Graphics2D according
to the rule last-specified-first-applied. |
void |
translate(double tx,
double ty)
Concatenates the current Graphics2D Transform
with a translation transform. |
void |
translate(int x,
int y)
Translates the origin of the graphics context to the point (x, y) in the current coordinate system. |
void |
validateTransformStack()
Marks the GraphicContext's isNewTransformStack to false as a memento that the current transform stack was read and has not been reset. |
| Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
defaultTransform
protected java.awt.geom.AffineTransform defaultTransform
- Default Transform to be used for creating FontRenderContext.
transform
protected java.awt.geom.AffineTransform transform
- Current AffineTransform. This is the concatenation
of the original AffineTransform (i.e., last setTransform
invocation) and the following transform invocations,
as captured by originalTransform and the transformStack.
transformStack
protected java.util.Vector transformStack
- Transform stack
transformStackValid
protected boolean transformStackValid
- Defines whether the transform stack is valide or not.
This is for use by the class clients. The client should
validate the stack every time it starts using it. The
stack becomes invalid when a new transform is set.
- See Also:
invalidateTransformStack()55 ,isTransformStackValid()55 ,setTransform(java.awt.geom.AffineTransform)55
paint
protected java.awt.Paint paint
- Current Paint
stroke
protected java.awt.Stroke stroke
- Current Stroke
composite
protected java.awt.Composite composite
- Current Composite
clip
protected java.awt.Shape clip
- Current clip
hints
protected java.awt.RenderingHints hints
- Current set of RenderingHints
font
protected java.awt.Font font
- Current Font
background
protected java.awt.Color background
- Current background color.
foreground
protected java.awt.Color foreground
- Current foreground color
| Constructor Detail |
GraphicContext
public GraphicContext()
- Default constructor
GraphicContext
public GraphicContext(java.awt.geom.AffineTransform defaultDeviceTransform)
| Method Detail |
clone
public java.lang.Object clone()
- Description copied from class:
java.lang.Object - This method may be called to create a new copy of the
Object. The typical behavior is as follows:
o == o.clone()is falseo.getClass() == o.clone().getClass()is trueo.equals(o)is true
However, these are not strict requirements, and may be violated if necessary. Of the three requirements, the last is the most commonly violated, particularly if the subclass does not override Object.equals(Object)>
Object.equals(Object)55 .If the Object you call clone() on does not implement java.lang.Cloneable (which is a placeholder interface), then a CloneNotSupportedException is thrown. Notice that Object does not implement Cloneable; this method exists as a convenience for subclasses that do.
Object's implementation of clone allocates space for the new Object using the correct class, without calling any constructors, and then fills in all of the new field values with the old field values. Thus, it is a shallow copy. However, subclasses are permitted to make a deep copy.
All array types implement Cloneable, and override this method as follows (it should never fail):
public Object clone() { try { super.clone(); } catch (CloneNotSupportedException e) { throw new InternalError(e.getMessage()); } }
getColor
public java.awt.Color getColor()
- Gets this graphics context's current color.
setColor
public void setColor(java.awt.Color c)
- Sets this graphics context's current color to the specified
color. All subsequent graphics operations using this graphics
context use this specified color.
getFont
public java.awt.Font getFont()
- Gets the current font.
setFont
public void setFont(java.awt.Font font)
- Sets this graphics context's font to the specified font.
All subsequent text operations using this graphics context
use this font.
getClipBounds
public java.awt.Rectangle getClipBounds()
- Returns the bounding rectangle of the current clipping area.
This method refers to the user clip, which is independent of the
clipping associated with device bounds and window visibility.
If no clip has previously been set, or if the clip has been
cleared using
setClip(null), this method returnsnull. The coordinates in the rectangle are relative to the coordinate system origin of this graphics context.- Since:
- JDK1.1
clipRect
public void clipRect(int x,
int y,
int width,
int height)
- Intersects the current clip with the specified rectangle.
The resulting clipping area is the intersection of the current
clipping area and the specified rectangle. If there is no
current clipping area, either because the clip has never been
set, or the clip has been cleared using
setClip(null), the specified rectangle becomes the new clip. This method sets the user clip, which is independent of the clipping associated with device bounds and window visibility. This method can only be used to make the current clip smaller. To set the current clip larger, use any of the setClip methods. Rendering operations have no effect outside of the clipping area.
setClip
public void setClip(int x,
int y,
int width,
int height)
- Sets the current clip to the rectangle specified by the given
coordinates. This method sets the user clip, which is
independent of the clipping associated with device bounds
and window visibility.
Rendering operations have no effect outside of the clipping area.
- Since:
- JDK1.1
getClip
public java.awt.Shape getClip()
- Gets the current clipping area.
This method returns the user clip, which is independent of the
clipping associated with device bounds and window visibility.
If no clip has previously been set, or if the clip has been
cleared using
setClip(null), this method returnsnull.- Since:
- JDK1.1
setClip
public void setClip(java.awt.Shape clip)
- Sets the current clipping area to an arbitrary clip shape.
Not all objects that implement the
Shapeinterface can be used to set the clip. The onlyShapeobjects that are guaranteed to be supported areShapeobjects that are obtained via thegetClipmethod and viaRectangleobjects. This method sets the user clip, which is independent of the clipping associated with device bounds and window visibility.- Since:
- JDK1.1
setComposite
public void setComposite(java.awt.Composite comp)
- Sets the
Compositefor theGraphics2Dcontext. TheCompositeis used in all drawing methods such asdrawImage,drawString,draw, andfill. It specifies how new pixels are to be combined with the existing pixels on the graphics device during the rendering process.If this
Graphics2Dcontext is drawing to aComponenton the display screen and theCompositeis a custom object rather than an instance of theAlphaCompositeclass, and if there is a security manager, itscheckPermissionmethod is called with anAWTPermission("readDisplayPixels")permission.
setPaint
public void setPaint(java.awt.Paint paint)
- Sets the
Paintattribute for theGraphics2Dcontext. Calling this method with anullPaintobject does not have any effect on the currentPaintattribute of thisGraphics2D.
setStroke
public void setStroke(java.awt.Stroke s)
- Sets the
Strokefor theGraphics2Dcontext.
setRenderingHint
public void setRenderingHint(java.awt.RenderingHints.Key hintKey,
java.lang.Object hintValue)
- Sets the value of a single preference for the rendering algorithms.
Hint categories include controls for rendering quality and overall
time/quality trade-off in the rendering process. Refer to the
RenderingHintsclass for definitions of some common keys and values.
getRenderingHint
public java.lang.Object getRenderingHint(java.awt.RenderingHints.Key hintKey)
- Returns the value of a single preference for the rendering algorithms.
Hint categories include controls for rendering quality and overall
time/quality trade-off in the rendering process. Refer to the
RenderingHintsclass for definitions of some common keys and values.
setRenderingHints
public void setRenderingHints(java.util.Map hints)
- Replaces the values of all preferences for the rendering
algorithms with the specified
hints. The existing values for all rendering hints are discarded and the new set of known hints and values are initialized from the specified java.util.Map object. Hint categories include controls for rendering quality and overall time/quality trade-off in the rendering process. Refer to theRenderingHintsclass for definitions of some common keys and values.
addRenderingHints
public void addRenderingHints(java.util.Map hints)
- Sets the values of an arbitrary number of preferences for the
rendering algorithms.
Only values for the rendering hints that are present in the
specified
Mapobject are modified. All other preferences not present in the specified object are left unmodified. Hint categories include controls for rendering quality and overall time/quality trade-off in the rendering process. Refer to theRenderingHintsclass for definitions of some common keys and values.
getRenderingHints
public java.awt.RenderingHints getRenderingHints()
- Gets the preferences for the rendering algorithms. Hint categories
include controls for rendering quality and overall time/quality
trade-off in the rendering process.
Returns all of the hint key/value pairs that were ever specified in
one operation. Refer to the
RenderingHintsclass for definitions of some common keys and values.
translate
public void translate(int x,
int y)
- Translates the origin of the graphics context to the point
(x, y) in the current coordinate system.
Modifies this graphics context so that its new origin corresponds
to the point (x, y) in this graphics context's
original coordinate system. All coordinates used in subsequent
rendering operations on this graphics context will be relative
to this new origin.
translate
public void translate(double tx,
double ty)
- Concatenates the current
Graphics2DTransformwith a translation transform. Subsequent rendering is translated by the specified distance relative to the previous position. This is equivalent to calling transform(T), where T is anAffineTransformrepresented by the following matrix:[ 1 0 tx ] [ 0 1 ty ] [ 0 0 1 ]
rotate
public void rotate(double theta)
- Concatenates the current
Graphics2DTransformwith a rotation transform. Subsequent rendering is rotated by the specified radians relative to the previous origin. This is equivalent to callingtransform(R), where R is anAffineTransformrepresented by the following matrix:[ cos(theta) -sin(theta) 0 ] [ sin(theta) cos(theta) 0 ] [ 0 0 1 ]Rotating with a positive angle theta rotates points on the positive x axis toward the positive y axis.
rotate
public void rotate(double theta,
double x,
double y)
- Concatenates the current
Graphics2DTransformwith a translated rotation transform. Subsequent rendering is transformed by a transform which is constructed by translating to the specified location, rotating by the specified radians, and translating back by the same amount as the original translation. This is equivalent to the following sequence of calls:translate(x, y); rotate(theta); translate(-x, -y);Rotating with a positive angle theta rotates points on the positive x axis toward the positive y axis.
scale
public void scale(double sx,
double sy)
- Concatenates the current
Graphics2DTransformwith a scaling transformation Subsequent rendering is resized according to the specified scaling factors relative to the previous scaling. This is equivalent to callingtransform(S), where S is anAffineTransformrepresented by the following matrix:[ sx 0 0 ] [ 0 sy 0 ] [ 0 0 1 ]
shear
public void shear(double shx,
double shy)
- Concatenates the current
Graphics2DTransformwith a shearing transform. Subsequent renderings are sheared by the specified multiplier relative to the previous position. This is equivalent to callingtransform(SH), where SH is anAffineTransformrepresented by the following matrix:[ 1 shx 0 ] [ shy 1 0 ] [ 0 0 1 ]
transform
public void transform(java.awt.geom.AffineTransform Tx)
- Composes an
AffineTransformobject with theTransformin thisGraphics2Daccording to the rule last-specified-first-applied. If the currentTransformis Cx, the result of composition with Tx is a newTransformCx'. Cx' becomes the currentTransformfor thisGraphics2D. Transforming a point p by the updatedTransformCx' is equivalent to first transforming p by Tx and then transforming the result by the originalTransformCx. In other words, Cx'(p) = Cx(Tx(p)). A copy of the Tx is made, if necessary, so further modifications to Tx do not affect rendering.
setTransform
public void setTransform(java.awt.geom.AffineTransform Tx)
- Sets the
Transformin theGraphics2Dcontext.
validateTransformStack
public void validateTransformStack()
- Marks the GraphicContext's isNewTransformStack to false
as a memento that the current transform stack was read and
has not been reset. Only the setTransform method can
override this memento.
isTransformStackValid
public boolean isTransformStackValid()
- Checks the status of the transform stack
getTransformStack
public TransformStackElement[] getTransformStack()
invalidateTransformStack
protected void invalidateTransformStack()
- Marks the GraphicContext's isNewTransformStack to true
as a memento that the current transform stack was reset
since it was last read. Only validateTransformStack
can override this memento
getTransform
public java.awt.geom.AffineTransform getTransform()
- Returns a copy of the current
Transformin theGraphics2Dcontext.
getPaint
public java.awt.Paint getPaint()
- Returns the current
Paintof theGraphics2Dcontext.
getComposite
public java.awt.Composite getComposite()
- Returns the current
Compositein theGraphics2Dcontext.
setBackground
public void setBackground(java.awt.Color color)
- Sets the background color for the
Graphics2Dcontext. The background color is used for clearing a region. When aGraphics2Dis constructed for aComponent, the background color is inherited from theComponent. Setting the background color in theGraphics2Dcontext only affects the subsequentclearRectcalls and not the background color of theComponent. To change the background of theComponent, use appropriate methods of theComponent.
getBackground
public java.awt.Color getBackground()
- Returns the background color used for clearing a region.
getStroke
public java.awt.Stroke getStroke()
- Returns the current
Strokein theGraphics2Dcontext.
clip
public void clip(java.awt.Shape s)
- Intersects the current
Clipwith the interior of the specifiedShapeand sets theClipto the resulting intersection. The specifiedShapeis transformed with the currentGraphics2DTransformbefore being intersected with the currentClip. This method is used to make the currentClipsmaller. To make theCliplarger, usesetClip. The user clip modified by this method is independent of the clipping associated with device bounds and visibility. If no clip has previously been set, or if the clip has been cleared using setClip 55 with anullargument, the specifiedShapebecomes the new user clip.
getFontRenderContext
public java.awt.font.FontRenderContext getFontRenderContext()
- Get the rendering context of the
Fontwithin thisGraphics2Dcontext. The java.awt.font.FontRenderContext encapsulates application hints such as anti-aliasing and fractional metrics, as well as target device specific information such as dots-per-inch. This information should be provided by the application when using objects that perform typographical formatting, such asFontandTextLayout. This information should also be provided by applications that perform their own layout and need accurate measurements of various characteristics of glyphs such as advance and line height when various rendering hints have been applied to the text rendering.- Since:
- JDK1.2
|
|||||||||
| Home >> All >> org >> apache >> batik >> ext >> awt >> [ g2d overview ] | PREV CLASS NEXT CLASS | ||||||||
SUMMARY: JAVADOC | SOURCE | DOWNLOAD | NESTED | FIELD | CONSTR | METHOD |
DETAIL: FIELD | CONSTR | METHOD | ||||||||
JAVADOC
org.apache.batik.ext.awt.g2d.GraphicContext