public class TLcdNVGGXYLabelPainterProvider extends Object implements ILcdGXYLabelPainterProvider
By default, retrieved painters will paint the label of NVG domain objects as defined in the standard.
The retrieved label painters use the TLcdNVGStyle
and the TLcdNVGSymbol
of an element for its label rendering.
If the standard defined in TLcdNVGSymbol
specifies how an object should be rendered, the symbol has
precedence over the style.
Other label painter providers can be registered
for domain specific symbol sets
. If a
element has a symbol with an unsupported standard, only the style is used for visualization.
If an element doesn't have a style set, a configurable
style with default values according to NVG specifications is used.
Style customization of military symbols is possible by setting an ILcdAPP6AStyle
and
an ILcdMS2525bStyle
.
Constructor and Description |
---|
TLcdNVGGXYLabelPainterProvider() |
Modifier and Type | Method and Description |
---|---|
Object |
clone()
Redefines
Object.clone to make it public. |
ILcdAPP6AStyle |
getDefaultAPP6AStyle()
Returns the default symbology style for APP-6 domain objects that do not contain any styling.
|
ILcdMS2525bStyle |
getDefaultMS2525bStyle()
Returns the default symbology style for MIL-STD 2525 domain objects that do not contain any styling.
|
TLcdNVGStyle |
getDefaultNVGStyle()
Returns the
TLcdNVGStyle used for objects without styling information. |
ILcdGXYLabelPainter |
getGXYLabelPainter(Object aObject)
Finds an
ILcdGXYLabelPainter that can be used to label the object passed. |
void |
registerPainterProvider(String aStandardName,
ILcdGXYLabelPainterProvider aLabelPainterProvider)
Allows to use a external label painter provider for a domain specific standard.
|
void |
setDefaultAPP6AStyle(ILcdAPP6AStyle aDefaultAPP6AStyle)
Sets the default symbology style for APP-6 domain objects that do not contain any styling.
|
void |
setDefaultMS2525bStyle(ILcdMS2525bStyle aDefaultMS2525bStyle)
Sets the default symbology style for MIL-STD 2525 domain objects that do not contain any styling.
|
void |
setDefaultNVGStyle(TLcdNVGStyle aDefaultNVGStyle)
Set the default
TLcdNVGStyle of this painter provider. |
public TLcdNVGStyle getDefaultNVGStyle()
TLcdNVGStyle
used for objects without styling information.setDefaultNVGStyle(TLcdNVGStyle)
public void setDefaultNVGStyle(TLcdNVGStyle aDefaultNVGStyle)
TLcdNVGStyle
of this painter provider.
This NVG Style allows to override the default values of the style attributes from NVG specifications. These values will be used to visualize an object if neither its style neither a style of its ancestors explicitly set these attributes. If some values aren't set on this style, the painters will use the ones from the specifications.
For example, if the default style defines a font, that font is used for every element that does not define its font.
This style is not used for military symbols, see setDefaultAPP6AStyle(com.luciad.symbology.app6a.view.gxy.ILcdAPP6AStyle)
/setDefaultMS2525bStyle(com.luciad.symbology.milstd2525b.view.gxy.ILcdMS2525bStyle)
instead.
aDefaultNVGStyle
- a default nvg stylepublic ILcdMS2525bStyle getDefaultMS2525bStyle()
ILcdMS2525bStyle
instance.public void setDefaultMS2525bStyle(ILcdMS2525bStyle aDefaultMS2525bStyle)
aDefaultMS2525bStyle
- the default MS2525 Style for the painter providerpublic ILcdAPP6AStyle getDefaultAPP6AStyle()
ILcdAPP6AStyle
instance.public void setDefaultAPP6AStyle(ILcdAPP6AStyle aDefaultAPP6AStyle)
aDefaultAPP6AStyle
- the default APP6A Style for the painter providerpublic ILcdGXYLabelPainter getGXYLabelPainter(Object aObject)
ILcdGXYLabelPainterProvider
ILcdGXYLabelPainter
that can be used to label the object passed.
The label painter provider is responsible for setting the object to the label painter before returning the label painter. An implementation should therefore have the following structure:
public ILcdGXYLabelPainter getGXYLabelPainter(Object aObject) {
ILcdGXYLabelPainter labelPainter = ... // find the label painter for the object
if (labelPainter != null) {
labelPainter.setObject(aObject);
}
return labelPainter;
}
getGXYLabelPainter
in interface ILcdGXYLabelPainterProvider
aObject
- the object to find a label painter forpublic void registerPainterProvider(String aStandardName, ILcdGXYLabelPainterProvider aLabelPainterProvider)
TLcdNVGSymbol
).aStandardName
- name of the standardaLabelPainterProvider
- a label painter providerpublic Object clone()
ILcdGXYLabelPainterProvider
Object.clone
to make it public.clone
in interface ILcdGXYLabelPainterProvider
clone
in class Object