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
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.
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
for retrieving colors, icons, line and fill style. These methods use a unique identifier
defined by the custom symbology specification.