org.geotools.styling
Interface Stroke
- All Known Implementing Classes:
- StrokeImpl
- public interface Stroke
The Stroke object encapsulates the graphical-symbolization parameters for
linear geometries.
There are three basic types of stroke: solid color, graphic fill (stipple),
and repeated linear graphic stroke.
A repeated linear graphic is plotted linearly and has its graphic symbol
bent around the curves of the line string. A GraphicFill has the pixels
of the line rendered with a repeating area-fill pattern.
If neither a graphic fill nor graphic stroke element are given, then the
line symbolizer should render a solid color.
The details of this object are taken from the OGC Styled-Layer
Descriptor Report (OGC 01-077) version 0.7.2.
Renderers can use this information when displaying styled features,
though it must be remembered that not all renderers will be able to
fully represent details as set out by this interface: for example,
opacity may not be supported.
The graphical parameters and their values are derived from SVG/CSS2
standards with names and semantics which are as close as possible.
- Version:
- $Id: Stroke.java,v 1.13 2003/08/10 08:33:39 seangeo Exp $
- Author:
- James Macgill
Method Summary |
void |
accept(StyleVisitor visitor)
|
java.lang.Object |
clone()
Creates a clone of the Stroke. |
Expression |
getColor()
This parameter gives the solid color that will be used for a stroke. |
java.awt.Color |
getColor(Feature f)
This parameter gives the solid color that will be used for a stroke. |
float[] |
getDashArray()
This parameter encodes the dash pattern as a seqeuence of floats. |
Expression |
getDashOffset()
A dash array need not start from the beginning. |
Graphic |
getGraphicFill()
This parameter indicates that a stipple-fill repeated graphic will be
used and specifies the fill graphic to use. |
Graphic |
getGraphicStroke()
This parameter indicates that a repeated-linear-graphic graphic stroke
type will be used and specifies the graphic to use.
|
Expression |
getLineCap()
This parameter controls how line strings should be capped. |
Expression |
getLineJoin()
This parameter controls how line strings should be joined together. |
Expression |
getOpacity()
This specifies the level of translucency to use when rendering the
stroke. |
Expression |
getWidth()
This parameter gives the absolute width (thickness) of a stroke in
pixels encoded as a float.
|
void |
setColor(Expression color)
This parameter gives the solid color that will be used for a stroke. |
void |
setDashArray(float[] dashArray)
This parameter encodes the dash pattern as a seqeuence of floats. |
void |
setDashOffset(Expression dashOffset)
A dash array need not start from the beginning. |
void |
setGraphicFill(Graphic graphicFill)
This parameter indicates that a stipple-fill repeated graphic will be
used and specifies the fill graphic to use. |
void |
setGraphicStroke(Graphic graphicStroke)
This parameter indicates that a repeated-linear-graphic graphic stroke
type will be used and specifies the graphic to use.
|
void |
setLineCap(Expression lineCap)
This parameter controls how line strings should be capped. |
void |
setLineJoin(Expression lineJoin)
This parameter controls how line strings should be joined together. |
void |
setOpacity(Expression opacity)
This specifies the level of translucency to use when rendering the
stroke. |
void |
setWidth(Expression width)
This parameter gives the absolute width (thickness) of a stroke in
pixels encoded as a float.
|
getColor
public Expression getColor()
- This parameter gives the solid color that will be used for a stroke.
The color value is RGB-encoded using two hexidecimal digits per
primary-color component in the order Red, Green, Blue, prefixed wih
the hash (#) sign. The hexidecimal digits between A and F may be in
either upper or lower case. For example, full red is encoded as
"#ff0000" (with no quotation marks).
The default color is defined to be black ("#000000").
Note: in CSS this parameter is just called Stroke and not Color.
- Returns:
- The color of the stroke encoded as a hexidecimal RGB value.
getColor
public java.awt.Color getColor(Feature f)
- This parameter gives the solid color that will be used for a stroke.
The color value returned here as a Java Color object, this is a convinence method
that goes above
The default color is defined to be Color.BLACK
Note: in CSS this parameter is just called Stroke and not Color.
- Returns:
- The color of the stroke as a Color object
setColor
public void setColor(Expression color)
- This parameter gives the solid color that will be used for a stroke.
The color value is RGB-encoded using two hexidecimal digits per
primary-color component in the order Red, Green, Blue, prefixed wih
the hash (#) sign. The hexidecimal digits between A and F may be in
either upper or lower case. For example, full red is encoded as
"#ff0000" (with no quotation marks).
Note: in CSS this parameter is just called Stroke and not Color.
getWidth
public Expression getWidth()
- This parameter gives the absolute width (thickness) of a stroke in
pixels encoded as a float.
The default is 1.0. Fractional numbers are allowed but negative
numbers are not.
- Returns:
- The width of the stroke in pixels.
This may be fractional but not negative.
setWidth
public void setWidth(Expression width)
- This parameter gives the absolute width (thickness) of a stroke in
pixels encoded as a float.
Fractional numbers are allowed but negative
numbers are not.
getOpacity
public Expression getOpacity()
- This specifies the level of translucency to use when rendering the
stroke.
The value is encoded as a floating-point value between 0.0 and
1.0 with 0.0 representing totally transparent and 1.0 representing
totally opaque. A linear scale of translucency is used for intermediate
values.
For example, "0.65" would represent 65% opacity. The default value
is 1.0 (opaque).
- Returns:
- The opacity of the stroke, where 0.0 is completely transparent
and 1.0 is completely opaque.
setOpacity
public void setOpacity(Expression opacity)
- This specifies the level of translucency to use when rendering the
stroke.
The value is encoded as a floating-point value between 0.0 and
1.0 with 0.0 representing totally transparent and 1.0 representing
totally opaque. A linear scale of translucency is used for intermediate
values.
For example, "0.65" would represent 65% opacity.
getLineJoin
public Expression getLineJoin()
- This parameter controls how line strings should be joined together.
- Returns:
- The join style. This will be one of "mitre", "round" and
"bevel". There is no defined default.
setLineJoin
public void setLineJoin(Expression lineJoin)
- This parameter controls how line strings should be joined together.
getLineCap
public Expression getLineCap()
- This parameter controls how line strings should be capped.
- Returns:
- The cap style. This will be one of "butt", "round" and
"square". There is no defined default.
setLineCap
public void setLineCap(Expression lineCap)
- This parameter controls how line strings should be capped.
getDashArray
public float[] getDashArray()
- This parameter encodes the dash pattern as a seqeuence of floats.
The first number gives the length in pixels of the dash to draw, the
second gives the amount of space to leave, and this pattern repeats.
If an odd number of values is given, then the pattern is expanded by
repeating it twice to give an even number of values.
The default is to draw an unbroken line.
For example, "2 1 3 2" would produce:
-- --- -- --- -- ---
-- --- -- --- --
- Returns:
- The dash pattern as an array of float values in the form
"dashlength gaplength ..."
setDashArray
public void setDashArray(float[] dashArray)
- This parameter encodes the dash pattern as a seqeuence of floats.
The first number gives the length in pixels of the dash to draw, the
second gives the amount of space to leave, and this pattern repeats.
If an odd number of values is given, then the pattern is expanded by
repeating it twice to give an even number of values.
For example, "2 1 3 2" would produce:
-- --- -- --- -- ---
-- --- -- --- --
getDashOffset
public Expression getDashOffset()
- A dash array need not start from the beginning. This method allows for
an offset into the dash array before starting it.
- Returns:
- The distance, in pixels, that any dash array should start from.
setDashOffset
public void setDashOffset(Expression dashOffset)
- A dash array need not start from the beginning. This method allows for
an offset into the dash array before starting it.
getGraphicFill
public Graphic getGraphicFill()
- This parameter indicates that a stipple-fill repeated graphic will be
used and specifies the fill graphic to use.
- Returns:
- The graphic to use as a stipple fill.
If null, then no Stipple fill should be used.
setGraphicFill
public void setGraphicFill(Graphic graphicFill)
- This parameter indicates that a stipple-fill repeated graphic will be
used and specifies the fill graphic to use.
getGraphicStroke
public Graphic getGraphicStroke()
- This parameter indicates that a repeated-linear-graphic graphic stroke
type will be used and specifies the graphic to use.
Proper stroking with a linear graphic requires two "hot-spot" points
within the space of the graphic to indicate where the rendering line
starts and stops.
In the case of raster images with no special mark-up, this line will
be assumed to be the middle pixel row of the image, starting from the
first pixel column and ending at the last pixel column.
- Returns:
- The graphic to use as a linear graphic.
If null, then no graphic stroke should be used.
setGraphicStroke
public void setGraphicStroke(Graphic graphicStroke)
- This parameter indicates that a repeated-linear-graphic graphic stroke
type will be used and specifies the graphic to use.
Proper stroking with a linear graphic requires two "hot-spot" points
within the space of the graphic to indicate where the rendering line
starts and stops.
In the case of raster images with no special mark-up, this line will
be assumed to be the middle pixel row of the image, starting from the
first pixel column and ending at the last pixel column.
accept
public void accept(StyleVisitor visitor)
clone
public java.lang.Object clone()
- Creates a clone of the Stroke.
- Returns:
- A clone of the stroke object.
Copyright © GeoTools. All Rights Reserved.