This documentation is aimed at people who want to tweak the built-in S-52 symbology with small changes. For example changing a few colors or icons, but leaving most of the symbology as-is. |
Next to the built-in support for the ENC, IENC and AML products, LuciadLightspeed also offers support for the configuration of S-57 and S-52 components for use with other products. The S-52 package lets you plug in a custom symbology in the LuciadLightspeed framework in two ways:
-
You create a custom implementation of
ILcdS52Symbology
-
You create a custom set of resource files
Creating a custom implementation of ILcdS52Symbology
The main method of the ILcdS52Symbology
interface that you need to implement is ILcdS52Style getS52Style(ILcdS57Object aObject)
. It returns an
S-52 style for a given S-57 object, based on its object class and attribute values.
The ILcdS52Style
interface contains all style-related information for an object:
line and fill styles, icon and text, display priority, viewing group, minimum
display scale, and an optional reference to a conditional procedure to be executed.
TLcdS52Style
is the default implementation of the interface, providing bean-style
getters and setters for each of these parameters.
In addition, you need to implement the ILcdS52Symbology
methods
for retrieving colors, icons, line and fill style. These methods use a unique identifier
defined by the custom symbology specification.