BasicStroke class.
PathConsumer2D object.
This procedure avoids having to create an intermediate Shape
object to hold the results of the createStrokedShape method.
The main user of this method is the Java 2D non-antialiasing renderer.
AATileGenerator object are explained in its class comments.
sun.java2d.SunGraphics2D class to detect the "thin line" case and set
the rendering attributes accordingly.
sun.java2d.renderer.
Additionally, a runtime System property flag can be set to trace
all calls to methods on the RenderingEngine in use by
setting the sun.java2d.renderer.trace property to any non-null value.
Parts of the system that need to use any of the above features should
call RenderingEngine.getInstance() to obtain the properly
registered (and possibly trace-enabled) version of the RenderingEngine.
| Modifier and Type | Class and Description |
|---|---|
| pack-priv static class |
| Modifier and Type | Field and Description |
|---|---|
| private static RenderingEngine |
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| public abstract Shape | Returns: the widened path stored in a newShape objectthe source path to be widened src, float the width of the widened path as per width, int BasicStrokethe end cap decorations as per caps, int BasicStrokethe segment join decorations as per join, float BasicStrokethe miter limit as per miterlimit, float[] BasicStrokethe dash length array as per dashes, float BasicStrokethe initial dash phase as per dashphase)BasicStrokeCreate a widened path as specified by the parameters. |
| public static void | feedConsumer(PathIterator pi, PathConsumer2D consumer)
Utility method to feed a |
| public abstract AATileGenerator | Returns: theAATileGenerator instance to be consulted
for tile coverages, or null if there is no output to renderthe shape to be rendered (fill or draw) s, AffineTransform the transform to be applied to the shape and the
stroke attributes at, Region the current clip in effect in device coordinates clip, BasicStroke if non-null, a bs, boolean BasicStroke whose attributes
should be applied to this operationtrue if the transformed stroke attributes are smaller
than the minimum dropout pen width thin, boolean true if the normalize, int[] VALUE_STROKE_NORMALIZE
RenderingHint is in effectreturns the bounds of the iteration bbox)Construct an antialiased tile generator for the given shape with the given rendering attributes and store the bounds of the tile iteration in the bbox parameter. |
| public abstract AATileGenerator | Returns: theAATileGenerator instance to be consulted
for tile coverages, or null if there is no output to renderthe X coordinate of the first corner of the parallelogram x, double the Y coordinate of the first corner of the parallelogram y, double the X coordinate delta of the first leg of the parallelogram dx1, double the Y coordinate delta of the first leg of the parallelogram dy1, double the X coordinate delta of the second leg of the parallelogram dx2, double the Y coordinate delta of the second leg of the parallelogram dy2, double the line width ratio for the first leg of the parallelogram lw1, double the line width ratio for the second leg of the parallelogram lw2, Region the current clip in effect in device coordinates clip, int[] returns the bounds of the iteration bbox)Construct an antialiased tile generator for the given parallelogram store the bounds of the tile iteration in the bbox parameter. |
| public static synchronized RenderingEngine | Returns: an instance ofRenderingEngineReturns an instance of |
| public abstract float | getMinimumAAPenSize()
Returns the minimum pen width that the antialiasing rasterizer can represent without dropouts occurring. |
| public abstract void | strokeTo(Shape
the source path to be widened src, AffineTransform the transform to be applied to the shape and the
stroke attributes at, BasicStroke the bs, boolean BasicStroke object specifying the
decorations to be applied to the widened pathtrue if the transformed stroke attributes are smaller
than the minimum dropout pen width thin, boolean indicates whether stroke normalization should
be applied normalize, boolean indicates whether or not adjustments appropriate
to antialiased rendering should be applied antialias, PathConsumer2D the consumer)PathConsumer2D instance to forward
the widened geometry toSends the geometry for a widened path as specified by the parameters to the specified consumer. |
| public void | strokeTo(Shape
the source path to be widened src, AffineTransform the transform to be applied to the shape and the
stroke attributes at, Region the current clip in effect in device coordinates clip, BasicStroke the bs, boolean BasicStroke object specifying the
decorations to be applied to the widened pathtrue if the transformed stroke attributes are smaller
than the minimum dropout pen width thin, boolean indicates whether stroke normalization should
be applied normalize, boolean indicates whether or not adjustments appropriate
to antialiased rendering should be applied antialias, final PathConsumer2D the consumer)PathConsumer2D instance to forward
the widened geometry toSends the geometry for a widened path as specified by the parameters to the specified consumer. |
| reImpl | back to summary |
|---|---|
| private static RenderingEngine reImpl | |
| RenderingEngine | back to summary |
|---|---|
| public RenderingEngine() | |
| createStrokedShape | back to summary |
|---|---|
| public abstract Shape createStrokedShape(Shape src, float width, int caps, int join, float miterlimit, float[] dashes, float dashphase) Create a widened path as specified by the parameters.
The specified
| |
| feedConsumer | back to summary |
|---|---|
| public static void feedConsumer(PathIterator pi, PathConsumer2D consumer) Utility method to feed a | |
| getAATileGenerator | back to summary |
|---|---|
| public abstract AATileGenerator getAATileGenerator(Shape s, AffineTransform at, Region clip, BasicStroke bs, boolean thin, boolean normalize, int[] bbox) Construct an antialiased tile generator for the given shape with
the given rendering attributes and store the bounds of the tile
iteration in the bbox parameter.
The
Upon returning, this method will fill the
for (y = bbox[1]; y < bbox[3]; y += tileheight) {
for (x = bbox[0]; x < bbox[2]; x += tilewidth) {
}
}
If there is no output to be rendered, this method may return
null.
| |
| getAATileGenerator | back to summary |
|---|---|
| public abstract AATileGenerator getAATileGenerator(double x, double y, double dx1, double dy1, double dx2, double dy2, double lw1, double lw2, Region clip, int[] bbox) Construct an antialiased tile generator for the given parallelogram store the bounds of the tile iteration in the bbox parameter. The parallelogram is specified as a starting point and 2 delta vectors that indicate the slopes of the 2 pairs of sides of the parallelogram. The 4 corners of the parallelogram are defined by the 4 points:
lw1 and lw2 parameters provide a specification
for an optionally stroked parallelogram if they are positive numbers.
The lw1 parameter is the ratio of the length of the dx1,
dx2 delta vector to half of the line width in that same
direction.
The lw2 parameter provides the same ratio for the other delta
vector.
If lw1 and lw2 are both greater than zero, then
the parallelogram figure is doubled by both expanding and contracting
each delta vector by its corresponding lw value.
If either lw1 or lw2 are also greater than 1, then
the inner (contracted) parallelogram disappears and the figure is
simply a single expanded parallelogram.
The clip parameter specifies the current clip in effect
in device coordinates and can be used to prune the data for the
operation, but the renderer is not required to perform any
clipping.
Upon returning, this method will fill the
for (y = bbox[1]; y < bbox[3]; y += tileheight) {
for (x = bbox[0]; x < bbox[2]; x += tilewidth) {
}
}
If there is no output to be rendered, this method may return
null.
| |
| getInstance | back to summary |
|---|---|
| public static synchronized RenderingEngine getInstance() Returns an instance of
A specific instance of the
java -Dsun.java2d.renderer=<classname>
If no specific RenderingEngine is specified on the command
line or the requested class fails to load, then the Marlin
renderer will be used as the default.
A printout of which RenderingEngine is loaded and used can be enabled by specifying the runtime flag:
java -Dsun.java2d.renderer.verbose=true
Runtime tracing of the actions of the
java -Dsun.java2d.renderer.trace=<any string>
| |
| getMinimumAAPenSize | back to summary |
|---|---|
| public abstract float getMinimumAAPenSize() Returns the minimum pen width that the antialiasing rasterizer can represent without dropouts occurring.
| |
| strokeTo | back to summary |
|---|---|
| public abstract void strokeTo(Shape src, AffineTransform at, BasicStroke bs, boolean thin, boolean normalize, boolean antialias, PathConsumer2D consumer) Sends the geometry for a widened path as specified by the parameters to the specified consumer.
The specified
The geometry of the widened path is forwarded to the indicated
| |
| strokeTo | back to summary |
|---|---|
| public void strokeTo(Shape src, AffineTransform at, Region clip, BasicStroke bs, boolean thin, boolean normalize, boolean antialias, final PathConsumer2D consumer) Sends the geometry for a widened path as specified by the parameters to the specified consumer.
The specified
The geometry of the widened path is forwarded to the indicated
| |
| Modifier and Type | Field and Description |
|---|---|
| pack-priv String | |
| pack-priv RenderingEngine |
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| public Shape | createStrokedShape(Shape src, float width, int caps, int join, float miterlimit, float[] dashes, float dashphase)
Implements abstract sun. Create a widened path as specified by the parameters. |
| public AATileGenerator | getAATileGenerator(Shape s, AffineTransform at, Region clip, BasicStroke bs, boolean thin, boolean normalize, int[] bbox)
Implements abstract sun. Construct an antialiased tile generator for the given shape with the given rendering attributes and store the bounds of the tile iteration in the bbox parameter. |
| public AATileGenerator | getAATileGenerator(double x, double y, double dx1, double dy1, double dx2, double dy2, double lw1, double lw2, Region clip, int[] bbox)
Implements abstract sun. Construct an antialiased tile generator for the given parallelogram store the bounds of the tile iteration in the bbox parameter. |
| public float | getMinimumAAPenSize()
Implements abstract sun. Returns the minimum pen width that the antialiasing rasterizer can represent without dropouts occurring. |
| public void | strokeTo(Shape src, AffineTransform at, BasicStroke bs, boolean thin, boolean normalize, boolean antialias, PathConsumer2D consumer)
Implements abstract sun. Sends the geometry for a widened path as specified by the parameters to the specified consumer. |
| public void | strokeTo(Shape src, AffineTransform at, Region clip, BasicStroke bs, boolean thin, boolean normalize, boolean antialias, PathConsumer2D consumer)
Overrides sun. Sends the geometry for a widened path as specified by the parameters to the specified consumer. |
| name | back to summary |
|---|---|
| pack-priv String name | |
| target | back to summary |
|---|---|
| pack-priv RenderingEngine target | |
| Tracer | back to summary |
|---|---|
| public Tracer(RenderingEngine target) | |
| createStrokedShape | back to summary |
|---|---|
| public Shape createStrokedShape(Shape src, float width, int caps, int join, float miterlimit, float[] dashes, float dashphase) Implements abstract sun. Doc from sun. Create a widened path as specified by the parameters.
The specified | |
| getAATileGenerator | back to summary |
|---|---|
| public AATileGenerator getAATileGenerator(Shape s, AffineTransform at, Region clip, BasicStroke bs, boolean thin, boolean normalize, int[] bbox) Implements abstract sun. Doc from sun. Construct an antialiased tile generator for the given shape with
the given rendering attributes and store the bounds of the tile
iteration in the bbox parameter.
The
Upon returning, this method will fill the
for (y = bbox[1]; y < bbox[3]; y += tileheight) {
for (x = bbox[0]; x < bbox[2]; x += tilewidth) {
}
}
If there is no output to be rendered, this method may return
null.
| |
| getAATileGenerator | back to summary |
|---|---|
| public AATileGenerator getAATileGenerator(double x, double y, double dx1, double dy1, double dx2, double dy2, double lw1, double lw2, Region clip, int[] bbox) Implements abstract sun. Doc from sun. Construct an antialiased tile generator for the given parallelogram store the bounds of the tile iteration in the bbox parameter. The parallelogram is specified as a starting point and 2 delta vectors that indicate the slopes of the 2 pairs of sides of the parallelogram. The 4 corners of the parallelogram are defined by the 4 points:
lw1 and lw2 parameters provide a specification
for an optionally stroked parallelogram if they are positive numbers.
The lw1 parameter is the ratio of the length of the dx1,
dx2 delta vector to half of the line width in that same
direction.
The lw2 parameter provides the same ratio for the other delta
vector.
If lw1 and lw2 are both greater than zero, then
the parallelogram figure is doubled by both expanding and contracting
each delta vector by its corresponding lw value.
If either lw1 or lw2 are also greater than 1, then
the inner (contracted) parallelogram disappears and the figure is
simply a single expanded parallelogram.
The clip parameter specifies the current clip in effect
in device coordinates and can be used to prune the data for the
operation, but the renderer is not required to perform any
clipping.
Upon returning, this method will fill the
for (y = bbox[1]; y < bbox[3]; y += tileheight) {
for (x = bbox[0]; x < bbox[2]; x += tilewidth) {
}
}
If there is no output to be rendered, this method may return
null.
| |
| getMinimumAAPenSize | back to summary |
|---|---|
| public float getMinimumAAPenSize() Implements abstract sun. Doc from sun. Returns the minimum pen width that the antialiasing rasterizer can represent without dropouts occurring. | |
| strokeTo | back to summary |
|---|---|
| public void strokeTo(Shape src, AffineTransform at, BasicStroke bs, boolean thin, boolean normalize, boolean antialias, PathConsumer2D consumer) Implements abstract sun. Doc from sun. Sends the geometry for a widened path as specified by the parameters to the specified consumer.
The specified
The geometry of the widened path is forwarded to the indicated
| |
| strokeTo | back to summary |
|---|---|
| public void strokeTo(Shape src, AffineTransform at, Region clip, BasicStroke bs, boolean thin, boolean normalize, boolean antialias, PathConsumer2D consumer) Overrides sun. Doc from sun. Sends the geometry for a widened path as specified by the parameters to the specified consumer.
The specified
The geometry of the widened path is forwarded to the indicated
| |