Interface ExternalGraphic

  • All Superinterfaces:
    ExternalGraphic, GraphicalSymbol, Symbol
    All Known Implementing Classes:
    ExternalGraphicImpl

    public interface ExternalGraphic
    extends ExternalGraphic, Symbol
    Holds a reference to an external graphics file with a URL to its location and its expected MIME type. Knowing the MIME type in advance allows stylers to select best-supported formats from a list of external graphics.

    The details of this object are taken from the OGC Styled-Layer Descriptor Report (OGC 02-070) version 1.0.0.:

    
     <xsd:element name="ExternalGraphic">
       <xsd:annotation>
         <xsd:documentation>
           An "ExternalGraphic" gives a reference to an external raster or
           vector graphical object.
         </xsd:documentation>
       </xsd:annotation>
       <xsd:complexType>
         <xsd:sequence>
           <xsd:element ref="sld:OnlineResource"/>
           <xsd:element ref="sld:Format"/>
         </xsd:sequence>
       </xsd:complexType>
     </xsd:element>
     

    Renderers can use this information when displaying styled features, though it must be remembered that not all renderers will be able to fully represent strokes as set out by this interface. For example, opacity may not be supported.

    Notes:

    • The graphical parameters and their values are derived from SVG/CSS2 standards with names and semantics which are as close as possible.
    Author:
    James Macgill, CCG
    • Field Detail

      • EXTERNAL_GRAPHICS_EMPTY

        static final ExternalGraphic[] EXTERNAL_GRAPHICS_EMPTY
    • Method Detail

      • setURI

        void setURI​(String uri)
        Converts a URI in a string to the location URL
        Parameters:
        uri - the uri of the external graphic
      • getURI

        String getURI()
        Returns the un-parsed URI for the mark (useful if the uri is using transformations or relative locations)
      • getLocation

        URL getLocation()
                 throws MalformedURLException
        Provides the URL for where the external graphic resource can be located.

        This method will be replaced by getOnlineResource().getLinkage() in 2.6.x

        Returns:
        The URL of the ExternalGraphic
        Throws:
        MalformedURLException - If the url held in the ExternalGraphic is malformed.
      • setLocation

        void setLocation​(URL url)
        Provides the URL for where the external graphic resource can be located.
        Parameters:
        url - The URL of the ExternalGraphic
      • setFormat

        void setFormat​(String format)
        Provides the format of the external graphic.
        Parameters:
        format - The format of the external graphic. Reported as its MIME type in a String object.
      • setCustomProperties

        void setCustomProperties​(Map<String,​Object> properties)
        Custom properties; renderer may consult these values when drawing graphic.

        The default GeoTools renderer uses the following:

        • radius: 50
        • circle color: #000066
        • bar height:150
        • bar color:"#000000
        • bar uncertainty:50
        • bar uncertainty width:5
        • bar uncertainty color:"#999999
        • pointer length:100
        • pointer color: #FF0000
        • pointer direction: 21
        • wedge width: 25
        • wedge color: #9999FF"
      • getCustomProperties

        Map<String,​Object> getCustomProperties()
        Custom user supplied properties available when working with an external graphic.
        Returns:
        properties