public class SmartTextSymbolLabelClass extends AbstractCartographicSupport implements ILabelClass
SmartTextSymbolLabelClass.java
This is a wrapper to be able to use a SmartTextSymbol as a
LabelClass. A SmartTextSymbol uses a line instead of a point.
Being in fact a Line and not a Marker, it does not make any sense
to have label styles since the label styles are well-defined rectangle
areas where texts are placed in fields backgrounded by an image. In this
contexts, the area is defined dinamically for each line, and there is no
sense to have texts fields. They will be rendered as a single string
along a line.
The label itself is the SmartTextSymbol,
the geometry (the line), the label expression,
and the text applied to the symbol.
Most of the operations performed by this LabelClass are in fact
delegated to the symbol.
CartographicSupport.CartographicContext| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
SMART_LABEL_CLASS_PERSISTENCE_DEFINITION_NAME |
PAPER, WORLD| Constructor and Description |
|---|
SmartTextSymbolLabelClass() |
| Modifier and Type | Method and Description |
|---|---|
java.lang.Object |
clone()
Creates a copy of the object.
|
void |
draw(java.awt.Graphics2D graphics,
ILabelLocationMetrics llm,
Geometry geo)
LabelLocationMetrics, contains the anchor point, rotation, and some
other geometric calculations computed by the PlacementManager.
|
void |
drawInsideRectangle(java.awt.Graphics2D graphics,
java.awt.Rectangle bounds)
Useful to render a Label with size inside little rectangles.
|
java.awt.Rectangle |
getBounds() |
java.lang.String |
getClassName() |
java.lang.String[] |
getLabelExpressions()
Returns the expression that defines the text which will be showed in
the label
|
ILabelStyle |
getLabelStyle()
Returns the style of the label
|
java.lang.String |
getName()
Returns the name of the label
|
int |
getPriority() |
Geometry |
getShape(ILabelLocationMetrics llm) |
java.lang.String |
getSQLQuery() |
java.lang.String |
getStringLabelExpression()
Returns the expression that defines the text which will be showed in
the label ready to be used for the label parser
|
java.lang.String[] |
getTexts()
Return the text for the label
|
ITextSymbol |
getTextSymbol()
Returns the text symbol that is being used for the text(the font,
size,style,aligment)
|
boolean |
isUseSqlQuery() |
boolean |
isVisible()
Returns true if the label will be showed in the map
|
boolean |
isVisible(double scale)
Returns true if the label will be showed in the map
|
void |
loadFromState(PersistentState state)
Set the state of the object from the state passed as parameter.
|
static void |
registerPersistent() |
void |
saveToState(PersistentState state)
Saves the internal state of the object on the provided
PersistentState object.
|
void |
setCartographicContext(CartographicSupport.CartographicContext ctx) |
void |
setLabelExpressions(java.lang.String[] lbl_exps)
Sets the expression that defines the text which will be showed in
the label
|
void |
setLabelStyle(ILabelStyle labelStyle)
Stablishes the style for the label.
|
void |
setName(java.lang.String name)
Stablishes the name of the label
|
void |
setPriority(int priority) |
void |
setSQLQuery(java.lang.String sqlQuery) |
void |
setTexts(java.lang.String[] texts)
Sets the text for the label
|
void |
setTextSymbol(ITextSymbol textSymbol)
Stablishes the text symbol that is going to be used for the text(the
font,size,style,aligment)
|
void |
setUseSqlQuery(boolean use_sql) |
void |
setVisible(boolean isVisible)
Sets the visibility of the label in the map.
|
copyCartographicContext, getCartographicContext, getReferenceSystem, getUnit, isInPixels, setCartographicContext, setCartographicContext, setCartographicContext, setCartographicContext, setReferenceSystem, setUnit, toCartographicUnitsequals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waittoStringcloneQuietly, cloneQuietlycopyCartographicContext, copyCartographicContext, getCartographicContext, getReferenceSystem, getUnit, setCartographicContext, setCartographicContext, setCartographicContext, setCartographicContext, setReferenceSystem, setUnit, toCartographicUnitspublic static final java.lang.String SMART_LABEL_CLASS_PERSISTENCE_DEFINITION_NAME
public void draw(java.awt.Graphics2D graphics,
ILabelLocationMetrics llm,
Geometry geo)
ILabelClassLabelLocationMetrics, contains the anchor point, rotation, and some other geometric calculations computed by the PlacementManager.
The shp argument is passed as an accessory for subclasses of this class in case they need futher geometric calculations
draw in interface ILabelClasspublic void drawInsideRectangle(java.awt.Graphics2D graphics,
java.awt.Rectangle bounds)
throws SymbolDrawingException
ILabelClassdrawInsideRectangle in interface ILabelClassgraphics - Graphics2Dbounds - RectangleSymbolDrawingExceptionpublic java.lang.String getClassName()
getClassName in interface ILabelClasspublic ILabelStyle getLabelStyle()
ILabelClassgetLabelStyle in interface ILabelClasspublic ITextSymbol getTextSymbol()
ILabelClassgetTextSymbol in interface ILabelClasspublic void setLabelStyle(ILabelStyle labelStyle)
ILabelClasssetLabelStyle in interface ILabelClasslabelStyle - ILabelStylepublic void setTextSymbol(ITextSymbol textSymbol)
ILabelClasssetTextSymbol in interface ILabelClasstextSymbol - ITextSymbolpublic void loadFromState(PersistentState state) throws PersistenceException
PersistentloadFromState in interface PersistentPersistenceExceptionpublic void saveToState(PersistentState state) throws PersistenceException
PersistentsaveToState in interface PersistentPersistenceExceptionpublic static void registerPersistent()
public boolean isVisible()
ILabelClassisVisible in interface ILabelClasspublic boolean isVisible(double scale)
ILabelClassisVisible in interface ILabelClasspublic void setVisible(boolean isVisible)
ILabelClasssetVisible in interface ILabelClassisVisible - booleanpublic java.lang.String getName()
ILabelClassgetName in interface ILabelClasspublic void setName(java.lang.String name)
ILabelClasssetName in interface ILabelClasspublic void setTexts(java.lang.String[] texts)
ILabelClasssetTexts in interface ILabelClasstexts - String[]public java.lang.String[] getTexts()
ILabelClassgetTexts in interface ILabelClasspublic int getPriority()
getPriority in interface ILabelClasspublic void setPriority(int priority)
setPriority in interface ILabelClasspublic Geometry getShape(ILabelLocationMetrics llm) throws CreateGeometryException
getShape in interface ILabelClassCreateGeometryExceptionpublic void setCartographicContext(CartographicSupport.CartographicContext ctx)
setCartographicContext in interface CartographicSupportsetCartographicContext in class AbstractCartographicSupportpublic java.awt.Rectangle getBounds()
getBounds in interface ILabelClasspublic java.lang.String getSQLQuery()
getSQLQuery in interface ILabelClasspublic void setSQLQuery(java.lang.String sqlQuery)
setSQLQuery in interface ILabelClasspublic java.lang.String[] getLabelExpressions()
ILabelClassgetLabelExpressions in interface ILabelClasspublic void setLabelExpressions(java.lang.String[] lbl_exps)
ILabelClasssetLabelExpressions in interface ILabelClasspublic void setUseSqlQuery(boolean use_sql)
setUseSqlQuery in interface ILabelClasspublic boolean isUseSqlQuery()
isUseSqlQuery in interface ILabelClasspublic java.lang.String getStringLabelExpression()
ILabelClassgetStringLabelExpression in interface ILabelClasspublic java.lang.Object clone()
throws java.lang.CloneNotSupportedException
Cloneableclone in class java.lang.Objectjava.lang.CloneNotSupportedException - if the instance of the object cannot
be cloned. As this is extending Cloneable so its sure
it implements it, so this exception may be used for problems on specific
object instances.Object#clone()}.