Package com.luciad.format.s52
Class TLcdS52SymbologyDecoder
java.lang.Object
com.luciad.format.s52.TLcdS52SymbologyDecoder
- All Implemented Interfaces:
ILcdInputStreamFactoryCapable
This class provides support to decode the ECDIS S-52 Presentation Library,
for use with ECDIS S-57 geometries.
The S-52 format is published by the International Hydrographic Organization
in "Specifications for Chart Content and Display Aspects of ECDIS, Special
Publication No. 52".
Before the decoder can be used, an object class map and an attribute
class map have to be set.
The following tables are decoded:
- The style tables:
- Plain boundaries
- Symbolized boundaries
- Lines
- Simplified symbols
- Paper chart symbols
- The color tables:
- Day bright
- Day white back
- Day black back
- Dusk
- Night
- Line styles
- Symbols
- Fill patterns
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondecodeS52Symbology(String aSourceName) Decodes an S-52 symbology, which can be applied to render S-57 geometry.decodeS52Symbology(String aSourceName, TLcdS52DisplaySettings aDisplaySettings) Decodes an S-52 symbology, which can be applied to render S-57 geometry.Returns the current input stream factory.Returns the attribute class map that is used by this symbology decoder.Returns the object class map that is used by this symbology decoder.doubleReturns the scale fafctor that is applied to the decoded symbols.booleanReturns whether to enable anti-aliasing in the decoded S-52 symbologies or not.voidsetAntiAliasing(boolean aAntiAliasing) Configures whether the decoded S-52 symbologies should use anti-aliasing for their icons.voidsetInputStreamFactory(ILcdInputStreamFactory aInputStreamFactory) Sets the factory that will create input streams from which data can be decoded.voidsetS57AttributeClassMap(ILcdS57AttributeClassMap aS57AttributeClassMap) Sets the attribute class map to be used by this symbology decoder.voidsetS57ObjectClassMap(ILcdS57ObjectClassMap aS57ObjectClassMap) Sets the object class map to be used by this symbology decoder.voidsetScaleFactor(double aScaleFactor) Sets the scale factor that is applied to the decoded symbols.
-
Constructor Details
-
TLcdS52SymbologyDecoder
public TLcdS52SymbologyDecoder()Constructs a newTLcdS52SymbologyDecoder.
-
-
Method Details
-
setInputStreamFactory
Sets the factory that will create input streams from which data can be decoded.- Specified by:
setInputStreamFactoryin interfaceILcdInputStreamFactoryCapable- Parameters:
aInputStreamFactory- the factory that creates an input stream based on a source name.
-
getInputStreamFactory
Returns the current input stream factory.- Specified by:
getInputStreamFactoryin interfaceILcdInputStreamFactoryCapable- Returns:
- the input stream factory that is used.
-
setS57ObjectClassMap
Sets the object class map to be used by this symbology decoder.- Parameters:
aS57ObjectClassMap- the object class map to be used by this symbology decoder.
-
getS57ObjectClassMap
Returns the object class map that is used by this symbology decoder.- Returns:
- the object class map that is used by this symbology decoder.
-
setS57AttributeClassMap
Sets the attribute class map to be used by this symbology decoder.- Parameters:
aS57AttributeClassMap- the attribute class map to be used by this symbology decoder.
-
getS57AttributeClassMap
Returns the attribute class map that is used by this symbology decoder.- Returns:
- the attribute class map that is used by this symbology decoder.
-
setScaleFactor
public void setScaleFactor(double aScaleFactor) Sets the scale factor that is applied to the decoded symbols. The default is 3.0 pixels/mm.- Parameters:
aScaleFactor- the scale factor, expressed in pixels per mm.
-
getScaleFactor
public double getScaleFactor()Returns the scale fafctor that is applied to the decoded symbols.- Returns:
- the scale fafctor, expressed in pixels per mm.
-
isAntiAliasing
public boolean isAntiAliasing()Returns whether to enable anti-aliasing in the decoded S-52 symbologies or not.- Returns:
- whether to enable anti-aliasing in the decoded S-52 symbologies or not.
- See Also:
-
setAntiAliasing
public void setAntiAliasing(boolean aAntiAliasing) Configures whether the decoded S-52 symbologies should use anti-aliasing for their icons. Enabling anti-aliasing will result in better-looking icons, but might have a small impact on the rendering performance. It is disabled by default.- Parameters:
aAntiAliasing- flag indicating whether to enable anti-aliasing or not.- See Also:
-
decodeS52Symbology
public ILcdS52Symbology decodeS52Symbology(String aSourceName, TLcdS52DisplaySettings aDisplaySettings) throws IOException Decodes an S-52 symbology, which can be applied to render S-57 geometry. The source is a properties file that contains the following properties:LINESTYLESPATTERNSSYMBOLSLOOKUP
DAYBRIGHTDAYWHITEBACKDAYBLACKBACKDUSKNIGHT
- Parameters:
aSourceName- the source name of the properties file containing the S-52 symbology configuration.aDisplaySettings- the S-52 display settings to be used for visualization.- Throws:
IOException
-
decodeS52Symbology
Decodes an S-52 symbology, which can be applied to render S-57 geometry. The source is a properties file that contains the following properties:LINESTYLESPATTERNSSYMBOLSLOOKUP
DAYBRIGHTDAYWHITEBACKDAYBLACKBACKDUSKNIGHT
VERSION: the version of the Presentation Library (optional)
- Parameters:
aSourceName- the source name of the properties file containing the S-52 symbology configuration.- Throws:
IOException
-