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 intstatic final intstatic final int -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic FeatureTypeStylecreateFeatureTypeStyle(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 booleanDetermines if a string is an instance of a ranged expression or unique values.static voidmodifyFTS(FeatureTypeStyle fts, int ruleIndex, String styleExpression) Used to update an existing style based on the provided input.static FiltertoExplicitFilter(String styleExpression, SimpleFeatureType featureType, String attributeTypeName) Creates a filter with each value explicitly defined.static FiltertoExplicitFilter(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 FiltertoRangedFilter(String styleExpression, SimpleFeatureType featureType, String attributeTypeName, boolean upperBoundClosed) Creates a filter for a range of values.static StringtoStyleExpression(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
-