deegree 2.5 (2011/06/29 09:44 build-8-official)

org.deegree.graphics.sld
Class Graphic

java.lang.Object
  extended by org.deegree.graphics.sld.Graphic
All Implemented Interfaces:
Marshallable

public class Graphic
extends java.lang.Object
implements Marshallable

A Graphic is a "graphic symbol" with an inherent shape, color, and size. Graphics can either be referenced from an external URL in a common format (such as GIF or SVG) or may be derived from a Mark. Multiple external URLs may be referenced with the semantic that they all provide the same graphic in different formats. The "hot spot" to use for rendering at a point or the start and finish handle points to use for rendering a graphic along a line must either be inherent in the external format or are system- dependent. The default size of an image format (such as GIF) is the inherent size of the image. The default size of a format without an inherent size is 16 pixels in height and the corresponding aspect in width. If a size is specified, the height of the graphic will be scaled to that size and the corresponding aspect will be used for the width. The default if neither an ExternalURL nor a Mark is specified is to use the default Mark with a size of 6 pixels. The size is in pixels and the rotation is in degrees clockwise, with 0 (default) meaning no rotation. In the case that a Graphic is derived from a font-glyph Mark, the Size specified here will be used for the final rendering. Allowed CssParameters are "opacity", "size", and "rotation".

Version:
$Revision: 26665 $, $Date: 2010-09-09 20:44:38 +0200 (Do, 09 Sep 2010) $
Author:
Andreas Poth, last edited by: $Author: lbuesching $

Field Summary
static double OPACITY_DEFAULT
          The default Opacity = 1;
static double ROTATION_DEFAULT
          The default rotation is 0
static double SIZE_DEFAULT
          The default size is -1
 
Constructor Summary
protected Graphic()
          Creates a new Graphic instance based on the default Mark: a square.
  Graphic(java.lang.Object[] marksAndExtGraphics, ParameterValueType opacity, ParameterValueType size, ParameterValueType rotation)
          Creates a new Graphic instance.
protected Graphic(ParameterValueType opacity, ParameterValueType size, ParameterValueType rotation)
          Creates a new Graphic instance based on the default Mark: a square.
 
Method Summary
 void addMarksAndExtGraphic(java.lang.Object object)
          Adds an Object to an object-array that enables the access to the stored ExternalGraphic and Mark -instances.
 java.lang.String exportAsXML()
          exports the content of the Graphic as XML formated String
 java.awt.image.BufferedImage getAsImage(Feature feature)
          Returns a BufferedImage representing this object.
 java.lang.Object[] getMarksAndExtGraphics()
          Returns an object-array that enables the access to the stored ExternalGraphic and Mark -instances.
 ParameterValueType getOpacity()
          returns the ParameterValueType representation of opacity
 double getOpacity(Feature feature)
          The Opacity element gives the opacity to use for rendering the graphic.
 ParameterValueType getRotation()
          returns the ParameterValueType representation of rotation
 double getRotation(Feature feature)
          The Rotation element gives the rotation of a graphic in the clockwise direction about its center point in radian, encoded as a floating- point number.
 ParameterValueType getSize()
          returns the ParameterValueType representation of size
 double getSize(Feature feature)
          The Size element gives the absolute size of the graphic in pixels encoded as a floating-point number.
 void removeMarksAndExtGraphic(java.lang.Object object)
          Removes an Object from an object-array that enables the access to the stored ExternalGraphic and Mark -instances.
 void setAsImage(java.awt.image.BufferedImage bufferedImage)
          Sets a BufferedImage representing this object.
 void setMarksAndExtGraphics(java.lang.Object[] object)
          Sets the ExternalGraphic/ Mark-instances that the image will be based on.
 void setOpacity(double opacity)
          The Opacity element gives the opacity of to use for rendering the graphic.
 void setRotation(double rotation)
           
 void setSize(double size)
           
 void setSize(ParameterValueType size)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

OPACITY_DEFAULT

public static final double OPACITY_DEFAULT
The default Opacity = 1;

See Also:
Constant Field Values

SIZE_DEFAULT

public static final double SIZE_DEFAULT
The default size is -1

See Also:
Constant Field Values

ROTATION_DEFAULT

public static final double ROTATION_DEFAULT
The default rotation is 0

See Also:
Constant Field Values
Constructor Detail

Graphic

public Graphic(java.lang.Object[] marksAndExtGraphics,
               ParameterValueType opacity,
               ParameterValueType size,
               ParameterValueType rotation)
Creates a new Graphic instance.

Parameters:
marksAndExtGraphics - the image will be based upon these
opacity - opacity that the resulting image will have
size - image height will be scaled to this value, respecting the proportions
rotation - image will be rotated clockwise for positive values, negative values result in anti-clockwise rotation

Graphic

protected Graphic(ParameterValueType opacity,
                  ParameterValueType size,
                  ParameterValueType rotation)
Creates a new Graphic instance based on the default Mark: a square.

Parameters:
opacity - opacity that the resulting image will have
size - image height will be scaled to this value, respecting the proportions
rotation - image will be rotated clockwise for positive values, negative values result in anti-clockwise rotation

Graphic

protected Graphic()
Creates a new Graphic instance based on the default Mark: a square.

Method Detail

getOpacity

public ParameterValueType getOpacity()
returns the ParameterValueType representation of opacity

Returns:
the ParameterValueType representation of opacity

getRotation

public ParameterValueType getRotation()
returns the ParameterValueType representation of rotation

Returns:
the ParameterValueType representation of rotation

getSize

public ParameterValueType getSize()
returns the ParameterValueType representation of size

Returns:
the ParameterValueType representation of size

getMarksAndExtGraphics

public java.lang.Object[] getMarksAndExtGraphics()
Returns an object-array that enables the access to the stored ExternalGraphic and Mark -instances.

Returns:
contains ExternalGraphic and Mark -objects

setMarksAndExtGraphics

public void setMarksAndExtGraphics(java.lang.Object[] object)
Sets the ExternalGraphic/ Mark-instances that the image will be based on.

Parameters:
object - to be used as basis for the resulting image

addMarksAndExtGraphic

public void addMarksAndExtGraphic(java.lang.Object object)
Adds an Object to an object-array that enables the access to the stored ExternalGraphic and Mark -instances.

Parameters:
object - to be used as basis for the resulting image

removeMarksAndExtGraphic

public void removeMarksAndExtGraphic(java.lang.Object object)
Removes an Object from an object-array that enables the access to the stored ExternalGraphic and Mark -instances.

Parameters:
object - to be used as basis for the resulting image

getOpacity

public double getOpacity(Feature feature)
                  throws FilterEvaluationException
The Opacity element gives the opacity to use for rendering the graphic.

Parameters:
feature - specifies the Feature to be used for evaluation of the underlying 'sld:ParameterValueType'
Returns:
the (evaluated) value of the parameter
Throws:
FilterEvaluationException - if the evaluation fails or the value is invalid

setOpacity

public void setOpacity(double opacity)
The Opacity element gives the opacity of to use for rendering the graphic.

Parameters:
opacity - Opacity to be set for the graphic

getSize

public double getSize(Feature feature)
               throws FilterEvaluationException
The Size element gives the absolute size of the graphic in pixels encoded as a floating-point number. This element is also used in other contexts than graphic size and pixel units are still used even for font size. The default size for an object is context-dependent. Negative values are not allowed.

Parameters:
feature - specifies the Feature to be used for evaluation of the underlying 'sld:ParameterValueType'
Returns:
the (evaluated) value of the parameter
Throws:
FilterEvaluationException - if the evaluation fails or the value is invalid

setSize

public void setSize(double size)
Parameters:
size - size to be set for the graphic
See Also:


setSize

public void setSize(ParameterValueType size)
Parameters:
size - size as ParameterValueType to be set for the graphic
See Also:


getRotation

public double getRotation(Feature feature)
                   throws FilterEvaluationException
The Rotation element gives the rotation of a graphic in the clockwise direction about its center point in radian, encoded as a floating- point number. Negative values mean counter-clockwise rotation. The default value is 0.0 (no rotation).

Parameters:
feature - specifies the Feature to be used for evaluation of the underlying 'sld:ParameterValueType'
Returns:
the (evaluated) value of the parameter
Throws:
FilterEvaluationException - if the evaluation fails or the value is invalid

setRotation

public void setRotation(double rotation)
Parameters:
rotation - rotation to be set for the graphic
See Also:


getAsImage

public java.awt.image.BufferedImage getAsImage(Feature feature)
                                        throws FilterEvaluationException
Returns a BufferedImage representing this object. The image respects the 'Opacity', 'Size' and 'Rotation' parameters. If the 'Size'-parameter is omitted, the height of the first ExternalGraphic is used. If there is none, the default value of 6 pixels is used.

Parameters:
feature -
Returns:
the BufferedImage ready to be painted
Throws:
FilterEvaluationException - if the evaluation fails

setAsImage

public void setAsImage(java.awt.image.BufferedImage bufferedImage)
Sets a BufferedImage representing this object. The image respects the 'Opacity', 'Size' and 'Rotation' parameters.

Parameters:
bufferedImage - BufferedImage to be set

exportAsXML

public java.lang.String exportAsXML()
exports the content of the Graphic as XML formated String

Specified by:
exportAsXML in interface Marshallable
Returns:
xml representation of the Graphic

deegree 2.5 (2011/06/29 09:44 build-8-official)

an open source project founded by lat/lon, Bonn, Germany.
For more information visit: http://www.deegree.org