/* * GeoTools - The Open Source Java GIS Toolkit * http://geotools.org * * (C) 2002-2008, Open Source Geospatial Foundation (OSGeo) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; * version 2.1 of the License. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. */ package org.geotools.styling; import org.opengis.filter.expression.Expression; /** * A basic interface for objects which can hold color map entries. * <pre> * <xs:element name="ColorMapEntry"> * <xs:complexType> * <xs:attribute name="color" type="xs:string" use="required"/> * <xs:attribute name="opacity" type="xs:double"/> * <xs:attribute name="quantity" type="xs:double"/> * <xs:attribute name="label" type="xs:string"/> * </xs:complexType> * </xs:element> * </pre> * * @source $URL$ */ public interface ColorMapEntry { /** Label for this Color Map Entry */ String getLabel(); /** * @param label */ void setLabel(String label); /** * Expression resulting in a color * @param color */ void setColor(Expression color); /** * @return Expression evaualted into a color */ Expression getColor(); /** * @param opacity Expressed as a value between 0 and 1 */ void setOpacity(Expression opacity); /** * * @return Opacity expressed as a value between 0 and 1 */ Expression getOpacity(); /** * Quantity marking the start of this color map entry. * * @param quantity */ void setQuantity(Expression quantity); /** * @return Quanity marking the start of this color map entry */ Expression getQuantity(); void accept(org.geotools.styling.StyleVisitor visitor); }