Class FractionBasedPainter
- java.lang.Object
-
- org.pushingpixels.substance.api.painter.FractionBasedPainter
-
- All Implemented Interfaces:
SubstanceTrait
- Direct Known Subclasses:
FractionBasedBorderPainter,FractionBasedDecorationPainter,FractionBasedFillPainter,FractionBasedHighlightPainter
public abstract class FractionBasedPainter extends java.lang.Object implements SubstanceTrait
Base painter with fraction-based stops and a color query associated with each stop. This class allows creating multi-stop gradients with exact control over which color is used at every gradient control point.
-
-
Field Summary
Fields Modifier and Type Field Description protected ColorSchemeSingleColorQuery[]colorQueriesThe color queries of this painter.protected float[]fractionsThe fractions of this painter.
-
Constructor Summary
Constructors Constructor Description FractionBasedPainter(java.lang.String displayName, float[] fractions, ColorSchemeSingleColorQuery[] colorQueries)Creates a new fraction-based border painter.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ColorSchemeSingleColorQuery[]getColorQueries()Returns the color queries of this painter.java.lang.StringgetDisplayName()Returns the display name ofthistrait.float[]getFractions()Returns the fractions of this painter.
-
-
-
Field Detail
-
fractions
protected float[] fractions
The fractions of this painter. If the constructor has not thrown anIllegalArgumentException, the entries in this array are strictly increasing, starting from 0.0 and ending at 1.0.
-
colorQueries
protected ColorSchemeSingleColorQuery[] colorQueries
The color queries of this painter. Each entry in this array corresponds to the matching index in thefractions, specifying which color will be used at the relevant gradient control point. If the constructor has not thrown anIllegalArgumentException, the size of this array is identical to the size offractions, and there are nonullentries in this array. Note that the application code can still cause an exception at runtime by throwing it in the implementation of theColorSchemeSingleColorQuery.query(SubstanceColorScheme)method.
-
-
Constructor Detail
-
FractionBasedPainter
public FractionBasedPainter(java.lang.String displayName, float[] fractions, ColorSchemeSingleColorQuery[] colorQueries)Creates a new fraction-based border painter.- Parameters:
displayName- The display name of this painter.fractions- The fractions of this painter. Must be strictly increasing, starting from 0.0 and ending at 1.0.colorQueries- The color queries of this painter. Must have the same size as the fractions array, and all entries must be non-null.
-
-
Method Detail
-
getDisplayName
public java.lang.String getDisplayName()
Description copied from interface:SubstanceTraitReturns the display name ofthistrait. This method is part of officially supported API.- Specified by:
getDisplayNamein interfaceSubstanceTrait- Returns:
- The display name of
thistrait.
-
getFractions
public float[] getFractions()
Returns the fractions of this painter.- Returns:
- Fractions of this painter.
-
getColorQueries
public ColorSchemeSingleColorQuery[] getColorQueries()
Returns the color queries of this painter.- Returns:
- Color queries of this painter.
-
-