01: /*
02: * GeoTools - OpenSource mapping toolkit
03: * http://geotools.org
04: * (C) 2002-2006, GeoTools Project Managment Committee (PMC)
05: * (C) 2002, Centre for Computational Geography
06: *
07: * This library is free software; you can redistribute it and/or
08: * modify it under the terms of the GNU Lesser General Public
09: * License as published by the Free Software Foundation;
10: * version 2.1 of the License.
11: *
12: * This library is distributed in the hope that it will be useful,
13: * but WITHOUT ANY WARRANTY; without even the implied warranty of
14: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15: * Lesser General Public License for more details.
16: *
17: * Contacts:
18: * UNITED KINGDOM: James Macgill. j.macgill@geog.leeds.ac.uk
19: */
20: package org.geotools.styling;
21:
22: import org.geotools.event.GTComponent;
23:
24: /**
25: * This is the parent interface of all Symbolizers.
26: *
27: * <p>
28: * A symbolizer describes how a feature should appear on a map. The symbolizer
29: * describes not just the shape that should appear but also such graphical
30: * properties as color and opacity.
31: * </p>
32: *
33: * <p>
34: * A symbolizer is obtained by specifying one of a small number of different
35: * types of symbolizer and then supplying parameters to overide its default
36: * behaviour.
37: * </p>
38: *
39: * <p>
40: * The details of this object are taken from the <a
41: * href="https://portal.opengeospatial.org/files/?artifact_id=1188"> OGC
42: * Styled-Layer Descriptor Report (OGC 02-070) version 1.0.0.</a>
43: * </p>
44: *
45: * <p>
46: * Renderers can use this information when displaying styled features, though
47: * it must be remembered that not all renderers will be able to fully
48: * represent strokes as set out by this interface. For example, opacity may
49: * not be supported.
50: * </p>
51: *
52: * <p>
53: * The graphical parameters and their values are derived from SVG/CSS2
54: * standards with names and semantics which are as close as possible.
55: * </p>
56: *
57: * <p></p>
58: *
59: * @author James Macgill, CCG
60: * @source $URL: http://svn.geotools.org/geotools/tags/2.4.1/modules/library/api/src/main/java/org/geotools/styling/Symbolizer.java $
61: * @version $Id: Symbolizer.java 20562 2006-07-16 14:54:53Z jgarnett $
62: */
63: public interface Symbolizer extends GTComponent {
64: void accept(StyleVisitor visitor);
65: }
|