Package org.geotools.brewer.color
Class StyleGenerator
Object
StyleGenerator
Generates a style/featureTypeStyle using ColorBrewer.
WARNING: this is unstable and subject to radical change.
WARNING: this is unstable and subject to radical change.
- Author:
- Cory Horner, Refractions Research Inc.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
static final int
static final int
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic FeatureTypeStyle
createFeatureTypeStyle
(Classifier classifier, Expression expression, Color[] colors, String typeId, GeometryDescriptor geometryAttrType, int elseMode, double opacity, Stroke defaultStroke) Merges a classifier, array of colors and other data into a FeatureTypeStyle object.static boolean
Determines if a string is an instance of a ranged expression or unique values.static void
modifyFTS
(FeatureTypeStyle fts, int ruleIndex, String styleExpression) Used to update an existing style based on the provided input.static Filter
toExplicitFilter
(String styleExpression, SimpleFeatureType featureType, String attributeTypeName) Creates a filter with each value explicitly defined.static Filter
toExplicitFilter
(String styleExpression, Expression attribExpr) Creates a filter with each value explicitly defined.static Filter[]
toFilter
(String[] styleExpression, SimpleFeatureType[] featureType, String[] attributeTypeName) Converts an array of styleExpressions and attributes into Filtersstatic Filter
toRangedFilter
(String styleExpression, SimpleFeatureType featureType, String attributeTypeName, boolean upperBoundClosed) Creates a filter for a range of values.static String
toStyleExpression
(Filter filter) static String[]
toStyleExpression
(Filter[] filter)
-
Field Details
-
ELSEMODE_IGNORE
public static final int ELSEMODE_IGNORE- See Also:
-
ELSEMODE_INCLUDEASMIN
public static final int ELSEMODE_INCLUDEASMIN- See Also:
-
ELSEMODE_INCLUDEASMAX
public static final int ELSEMODE_INCLUDEASMAX- See Also:
-
-
Constructor Details
-
StyleGenerator
protected StyleGenerator()
-
-
Method Details
-
createFeatureTypeStyle
public static FeatureTypeStyle createFeatureTypeStyle(Classifier classifier, Expression expression, Color[] colors, String typeId, GeometryDescriptor geometryAttrType, int elseMode, double opacity, Stroke defaultStroke) throws IllegalFilterException Merges a classifier, array of colors and other data into a FeatureTypeStyle object. Yes, this constructor is insane and likely to change very soon.- Parameters:
typeId
- semantic type identifier, which will be prefixed with "colorbrewer:"- Throws:
IllegalFilterException
-
modifyFTS
public static void modifyFTS(FeatureTypeStyle fts, int ruleIndex, String styleExpression) throws IllegalFilterException Used to update an existing style based on the provided input.- Throws:
IllegalFilterException
-
toStyleExpression
-
toStyleExpression
-
toFilter
public static Filter[] toFilter(String[] styleExpression, SimpleFeatureType[] featureType, String[] attributeTypeName) throws IllegalFilterException Converts an array of styleExpressions and attributes into FiltersstyleExpression[0] = "1..5";
styleExpression[1] = "5..10";
styleExpression[2] = "11, -13";
--->
filter[0] = [[1 <= attr] AND [attr < 5]]
filter[1] = [[6 <= attr] AND [attr <= 10]]
filter[2] = [[attr = 11] OR [attr = -13]]
- Parameters:
styleExpression
- strings of ranged expressions "lowValue..highValue" or explicit values "value1, value2"- Returns:
- an array with all the filters
- Throws:
IllegalFilterException
-
toRangedFilter
public static Filter toRangedFilter(String styleExpression, SimpleFeatureType featureType, String attributeTypeName, boolean upperBoundClosed) throws IllegalFilterException Creates a filter for a range of values.Examples:
"1..5", closed=true --> [[1 <= attr] AND [attr <= 5]]
"1..10", closed=false --> [[1 <= attr] AND [attr < 10]] "..10, closed=true --> [attr <= 10]- Parameters:
styleExpression
- the ranged style expression (minValue..maxValue)featureType
- the featureTypeattributeTypeName
- the attributeTypeName whose values correspond toupperBoundClosed
- does the upper bound include the max value? (true: <=, false: <)- Returns:
- a filter
- Throws:
IllegalFilterException
-
isRanged
Determines if a string is an instance of a ranged expression or unique values. -
toExplicitFilter
public static Filter toExplicitFilter(String styleExpression, SimpleFeatureType featureType, String attributeTypeName) throws IllegalFilterException Creates a filter with each value explicitly defined.Examples:
"LIB" --> [PARTY = LIB]
"LIB, NDP" --> [[PARTY = LIB] OR [PARTY = NDP]]- Parameters:
styleExpression
- the list of attribute values, separated by commas (and optional spaces)attributeTypeName
- A Sting with the attributeTypeName whose values correspond to- Returns:
- a filter
- Throws:
IllegalFilterException
-
toExplicitFilter
public static Filter toExplicitFilter(String styleExpression, Expression attribExpr) throws IllegalFilterException Creates a filter with each value explicitly defined.Examples:
"LIB" --> [PARTY = LIB]
"LIB, NDP" --> [[PARTY = LIB] OR [PARTY = NDP]]- Parameters:
styleExpression
- the list of attribute values, separated by commas (and optional spaces)attribExpr
- an Expression to compare each value with (simple case = attributeExpression)- Returns:
- a filter
- Throws:
IllegalFilterException
-