Package org.geotools.renderer.label
Class LabelCacheItem
Object
LabelCacheItem
- All Implemented Interfaces:
Comparable<LabelCacheItem>
The Labelling information that is put in the label cache.
- Author:
- jeichar, dblasby, simone giannecchini, Andrea Aime - OpenGeo
-
Nested Class Summary
Nested Classes -
Constructor Summary
ConstructorsConstructorDescriptionLabelCacheItem(String layerId, TextStyle2D textStyle, LiteShape2 shape, String label, TextSymbolizer symbolizer) ConstructLabelCacheItem. -
Method Summary
Modifier and TypeMethodDescriptionbooleanWheter labels are allowed to go past the start/end of the lineintcompareTo(LabelCacheItem other) booleanintAutomatically wraps long labels when the label width, in pixels, exceeds the autowrap lengthint[]defines the actual angle towards which displacement of label will take place (applies only in polygon or point features)intReturns an example geometry from the list of geometries.getGeoms()The list of geometries this item maintainsdoubleint[]getLabel()Return a modifiable set of idsdoubleMax angle between two subsequence characters in a curved label, in degrees.intMax amount of pixels the label will be moved around trying to find a non conflicting location (how and if the moving will be done is geometry type dependent)intdoubleintWhen enabled, repeats labels every "repeat" pixels (works on lines only atm)intspace around - "dont put any label near me by this # of pixels"The textstyle that is used to label the shape.doubleinthashCode()booleanChecks if conflict resolution has been enabled for this labelbooleanEnables curved labels on linear featuresbooleanIf enabled, text will be forced to follow a left to right alignement (that makes it readable) no matter what the natural orientation of the line isbooleanbooleanbooleanbooleanWhen grouping, wheter we should label only the biggest geometry, or the others as wellbooleanvoidsetAllowOverruns(boolean allowOverruns) voidsetAutoWrap(int autoWrap) voidsetConflictResolutionEnabled(boolean conflictResolutionEnabled) Sets conflict resolution for this label.voidsetDisplacementAngles(int[] displacementAngles) voidsetFollowLineEnabled(boolean followLineEnabled) voidsetFontShrinkSizeMin(int fontShrinkSize) voidsetForceLeftToRightEnabled(boolean forceLeftToRight) voidsetGoodnessOfFit(double goodnessOfFit) A value between 0 and 1 representing the portion of the label that overlaps with the geometry (atm used only for polygons)voidsetGraphicMargin(int[] graphicMargin) voidsetGraphicPlacement(TextSymbolizer.GraphicPlacement graphicPlacement) voidsetGraphicsResize(LabelCacheItem.GraphicResize graphicsResize) voidvoidsetLabelAllGroup(boolean labelAllGroup) voidsetMaxAngleDelta(double maxAngleDelta) voidsetMaxDisplacement(int maxDisplacement) voidsetMinGroupDistance(int minGroupDistance) Minimum cartesian distance between two labels in the same group, in pixelsvoidsetPartialsEnabled(boolean partialsEnabled) voidsetPriority(double d) voidsetRemoveGroupOverlaps(boolean removeGroupOverlaps) voidsetRepeat(int repeat) voidsetSpaceAround(int space) space around - "dont put any label near me by this # of pixels"voidsetTextStrikethrough(boolean textStrikethrough) voidsetTextUnderlined(boolean textUnderlined) voidsetWordSpacing(double wordSpacing)
-
Constructor Details
-
LabelCacheItem
public LabelCacheItem(String layerId, TextStyle2D textStyle, LiteShape2 shape, String label, TextSymbolizer symbolizer) ConstructLabelCacheItem.
-
-
Method Details
-
getGoodnessOfFit
public double getGoodnessOfFit() -
setGoodnessOfFit
public void setGoodnessOfFit(double goodnessOfFit) A value between 0 and 1 representing the portion of the label that overlaps with the geometry (atm used only for polygons) -
getLabel
-
setLabel
-
getSpaceAround
public int getSpaceAround()space around - "dont put any label near me by this # of pixels" -
setSpaceAround
public void setSpaceAround(int space) space around - "dont put any label near me by this # of pixels" -
getPriority
public double getPriority() -
setPriority
public void setPriority(double d) -
getLayerIds
Return a modifiable set of ids -
getGeoms
The list of geometries this item maintains -
getTextStyle
The textstyle that is used to label the shape. -
getGeometry
Returns an example geometry from the list of geometries. -
getMaxDisplacement
public int getMaxDisplacement()Max amount of pixels the label will be moved around trying to find a non conflicting location (how and if the moving will be done is geometry type dependent) -
setMaxDisplacement
public void setMaxDisplacement(int maxDisplacement) -
getDisplacementAngles
public int[] getDisplacementAngles()defines the actual angle towards which displacement of label will take place (applies only in polygon or point features) -
setDisplacementAngles
public void setDisplacementAngles(int[] displacementAngles) -
getRepeat
public int getRepeat()When enabled, repeats labels every "repeat" pixels (works on lines only atm) -
setRepeat
public void setRepeat(int repeat) -
labelAllGroup
public boolean labelAllGroup()When grouping, wheter we should label only the biggest geometry, or the others as well -
setLabelAllGroup
public void setLabelAllGroup(boolean labelAllGroup) -
removeGroupOverlaps
public boolean removeGroupOverlaps() -
setRemoveGroupOverlaps
public void setRemoveGroupOverlaps(boolean removeGroupOverlaps) -
allowOverruns
public boolean allowOverruns()Wheter labels are allowed to go past the start/end of the line -
setAllowOverruns
public void setAllowOverruns(boolean allowOverruns) -
getMinGroupDistance
public int getMinGroupDistance() -
setMinGroupDistance
public void setMinGroupDistance(int minGroupDistance) Minimum cartesian distance between two labels in the same group, in pixels -
isFollowLineEnabled
public boolean isFollowLineEnabled()Enables curved labels on linear features -
setFollowLineEnabled
public void setFollowLineEnabled(boolean followLineEnabled) -
getMaxAngleDelta
public double getMaxAngleDelta()Max angle between two subsequence characters in a curved label, in degrees. Good visual results are obtained with an angle of less than 25 degrees. -
setMaxAngleDelta
public void setMaxAngleDelta(double maxAngleDelta) -
getAutoWrap
public int getAutoWrap()Automatically wraps long labels when the label width, in pixels, exceeds the autowrap length -
setAutoWrap
public void setAutoWrap(int autoWrap) -
compareTo
- Specified by:
compareToin interfaceComparable<LabelCacheItem>
-
isForceLeftToRightEnabled
public boolean isForceLeftToRightEnabled()If enabled, text will be forced to follow a left to right alignement (that makes it readable) no matter what the natural orientation of the line is -
setForceLeftToRightEnabled
public void setForceLeftToRightEnabled(boolean forceLeftToRight) -
isConflictResolutionEnabled
public boolean isConflictResolutionEnabled()Checks if conflict resolution has been enabled for this label -
setConflictResolutionEnabled
public void setConflictResolutionEnabled(boolean conflictResolutionEnabled) Sets conflict resolution for this label. When on, this label outline/bbox will be stored in the conflict resolution map and will prevent every other label to be drawn in the same area -
getGraphicsResize
-
setGraphicsResize
-
getGraphicMargin
public int[] getGraphicMargin() -
setGraphicMargin
public void setGraphicMargin(int[] graphicMargin) -
isPartialsEnabled
public boolean isPartialsEnabled() -
setPartialsEnabled
public void setPartialsEnabled(boolean partialsEnabled) -
isTextUnderlined
public boolean isTextUnderlined() -
setTextUnderlined
public void setTextUnderlined(boolean textUnderlined) -
isTextStrikethrough
public boolean isTextStrikethrough() -
setTextStrikethrough
public void setTextStrikethrough(boolean textStrikethrough) -
getWordSpacing
public double getWordSpacing() -
setWordSpacing
public void setWordSpacing(double wordSpacing) -
getFontShrinkSizeMin
public int getFontShrinkSizeMin() -
setFontShrinkSizeMin
public void setFontShrinkSizeMin(int fontShrinkSize) -
getGraphicPlacement
-
setGraphicPlacement
-
hashCode
public int hashCode() -
equals
-