Package com.luciad.format.s52
Class TLcdS52ProductConfiguration
java.lang.Object
com.luciad.format.s52.TLcdS52ProductConfiguration
An S-52 product configuration contains all visualization information for one specific S-57
product type.
It provides convenience factory methods for creation of preconfigured S-52 symbologies, painter
providers and
model list builders.
Use getInstance(com.luciad.format.s57.ELcdS57ProductType)
to obtain the S-52 product configuration of a product type.
- Since:
- 11.0
-
Method Summary
Modifier and TypeMethodDescriptioncreateGXYLayerFactory
(TLcdS52DisplaySettings aDisplaySettings) Creates anILcdGXYLayerFactory
capable of creating S-52 compliant layers for S-57 cells and catalogues.createGXYPainterProvider
(TLcdS52DisplaySettings aDisplaySettings) Creates a new S-52 painter provide for this product type, configured with the specified S-52 display settings.createModelListBuilder
(TLcdS52DisplaySettings aDisplaySettings) Deprecated.It is no longer needed to order the model elements before visualising them.createOrderedModelDecoder
(ILcdModelDecoder aS57ModelDecoder, TLcdS52DisplaySettings aDisplaySettings) Deprecated.It is no longer needed to order the model elements before visualising them.createSymbology
(TLcdS52DisplaySettings aDisplaySettings) Creates a new S-52 symbology for this product type, configured with the specified S-52 display settings.static TLcdS52ProductConfiguration
getInstance
(ELcdS57ProductType aProductType) Get a S-52 product configuration for the specified S-57 product type.static TLcdS52ProductConfiguration
getInstance
(ELcdS57ProductType aProductType, boolean aAntiAliasing) Get a S-52 product configuration for the specified S-57 product type and anti-aliasing setting.static TLcdS52ProductConfiguration
getInstance
(ELcdS57ProductType aProductType, boolean aAntiAliasing, double aScaleFactor) Get a S-52 product configuration for the specified S-57 product type, anti-aliasing setting and scale factor.static TLcdS52ProductConfiguration
newInstance
(ELcdS57ProductType aProductType) Deprecated.Since the returned instance is immutable, you can usegetInstance(com.luciad.format.s57.ELcdS57ProductType)
instead (since 2013.1)static TLcdS52ProductConfiguration
newInstance
(ELcdS57ProductType aProductType, boolean aAntiAliasing) Deprecated.Since the returned instance is immutable, you can usegetInstance(com.luciad.format.s57.ELcdS57ProductType)
instead (since 2013.1)
-
Method Details
-
newInstance
public static TLcdS52ProductConfiguration newInstance(ELcdS57ProductType aProductType) throws IOException Deprecated.Since the returned instance is immutable, you can usegetInstance(com.luciad.format.s57.ELcdS57ProductType)
instead (since 2013.1)Creates a new S-52 product configuration for the specified S-57 product type.- Parameters:
aProductType
- an S-57 product type.- Returns:
- a new S-52 product configuration for the specified S-57 product type.
- Throws:
IOException
- if an I/O exception occurs during loading of the resources for the specified product type.
-
newInstance
public static TLcdS52ProductConfiguration newInstance(ELcdS57ProductType aProductType, boolean aAntiAliasing) throws IOException Deprecated.Since the returned instance is immutable, you can usegetInstance(com.luciad.format.s57.ELcdS57ProductType)
instead (since 2013.1)Creates a new S-52 product configuration for the specified S-57 product type.- Parameters:
aProductType
- an S-57 product type.aAntiAliasing
- indicates whether the S-52 symbologies created by this configuration should use anti-aliasing or not. Anti-aliasing results in smoother icons and lines, but may be slightly slower in rendering.- Returns:
- a new S-52 product configuration for the specified S-57 product type.
- Throws:
IOException
- if an I/O exception occurs during loading of the resources for the specified product type.
-
getInstance
Get a S-52 product configuration for the specified S-57 product type.Anti-aliasing is enabled, and a default scale factor of 3 will be used.
- Parameters:
aProductType
- an S-57 product type.- Returns:
- an S-52 product configuration for the specified product type.
- Throws:
IllegalStateException
- If an error occurred while loading the product type's resources.- Since:
- 2013.1
-
getInstance
public static TLcdS52ProductConfiguration getInstance(ELcdS57ProductType aProductType, boolean aAntiAliasing) Get a S-52 product configuration for the specified S-57 product type and anti-aliasing setting.A default scale factor of 3 will be used.
- Parameters:
aProductType
- an S-57 product type.aAntiAliasing
- anti-aliasing on or off- Returns:
- an S-52 product configuration for the specified product type.
- Throws:
IllegalStateException
- If an error occurred while loading the product type's resources.- Since:
- 2013.1
-
getInstance
public static TLcdS52ProductConfiguration getInstance(ELcdS57ProductType aProductType, boolean aAntiAliasing, double aScaleFactor) Get a S-52 product configuration for the specified S-57 product type, anti-aliasing setting and scale factor.- Parameters:
aProductType
- an S-57 product type.aAntiAliasing
- anti-aliasing on or offaScaleFactor
- a scale factor in pixels per mm.- Returns:
- an S-52 product configuration for the specified product type.
- Throws:
IllegalStateException
- If an error occurred while loading the product type's resources.- Since:
- 2013.1
-
createSymbology
Creates a new S-52 symbology for this product type, configured with the specified S-52 display settings. The symbology remains linked to the display settings after creation: changing the S-52 display settings will have an immediate effect on the symbology. Note that the created symbologies are lightweight objects, internally sharing the same symbol lookup tables. Creating multiple symbologies has a minimal impact on memory usage.- Parameters:
aDisplaySettings
- the S-52 display settings to be used by the created symbology.- Returns:
- a new S-52 symbology.
-
createModelListBuilder
Deprecated.It is no longer needed to order the model elements before visualising them. The layer factories accept models decoded by the model decoders as well. In GXY you can still use the ordered model. Lightspeed only supports models that come straight from the model decoder.Creates a new S-52 model list builder for this product type, configured with the specified S-52 display settings. The model list builder remains linked to the display settings after creation: changing the S-52 display settings will have an immediate effect on the model list builder.- Parameters:
aDisplaySettings
- the S-52 display settings to be used by the created model list builder.- Returns:
- a new S-52 model list builder..
-
createGXYPainterProvider
Creates a new S-52 painter provide for this product type, configured with the specified S-52 display settings. The painter provider remains linked to the display settings after creation: changing the S-52 display settings will have an immediate effect on the painter provider. As painters and painter providers are not thread-safe, each S-52 layer requires its own S-52 painter provider instance. The created painter providers are lightweight objects, internally sharing the same symbol lookup tables. Creating multiple S-52 painter providers therefore only has a minimal impact on memory usage.- Parameters:
aDisplaySettings
- the S-52 display settings to be used by the created symbology.- Returns:
- a new S-52 symbology.
-
createGXYLayerFactory
Creates an
ILcdGXYLayerFactory
capable of creating S-52 compliant layers for S-57 cells and catalogues.- Parameters:
aDisplaySettings
- the S-52 display settings to be used by the created layers.- Returns:
- a layer factory capable of creating layers for S-57 cells and catalogues.
-
createOrderedModelDecoder
public ILcdModelDecoder createOrderedModelDecoder(ILcdModelDecoder aS57ModelDecoder, TLcdS52DisplaySettings aDisplaySettings) Deprecated.It is no longer needed to order the model elements before visualising them. The layer factories accept models decoded by the model decoders as well. In GXY you can still use the ordered model. Lightspeed only supports models that come straight from the model decoder. Consult the developer guide for more information.Wraps the given S-57 model decoder in another model decoder which automatically orders the elements in the decoded models, based on their display priority. If a relevant display setting, influencing the display priority, has changed, the model will be reordered automatically.- Parameters:
aS57ModelDecoder
- the S-57 model decoder to be wrapped; this can be a cell or a catalogue decoder.aDisplaySettings
- the S-52 display settings to be used for determining the display priority of the S-57 domain objects.- Returns:
- a model decoder, capable of decoding and ordering S-57 data.
-