Class TLcdS52GXYLayerFactory

java.lang.Object
com.luciad.format.s52.gxy.TLcdS52GXYLayerFactory
All Implemented Interfaces:
ILcdGXYLayerFactory

@LcdService(service=ILcdGXYLayerFactory.class, priority=20000) public class TLcdS52GXYLayerFactory extends Object implements ILcdGXYLayerFactory

ILcdGXYLayerFactory implementation which can create layers for S-57 models. Both AML and ENC models are supported. The returned layer is an ILcdGXYEditableLabelsLayer.

Example usage:


 String source = ...;//can be a S-57 cell or catalogue file
 TLcdS57UnifiedModelDecoder decoder = new TLcdS57UnifiedModelDecoder();
 ILcdModel model = decoder.decode( source );

 TLcdS52GXYLayerFactory layerFactory = new TLcdS52GXYLayerFactory();
 ILcdGXYLayer layer = layerFactory.createGXYLayer( model );
 
Since:
2013.1
See Also:
  • Constructor Details

  • Method Details

    • getDisplaySettings

      public final TLcdS52DisplaySettings getDisplaySettings()
      Returns the display settings used by this layer factory. This display setting instance is used by all layers created by this layer factory (both future ones and layers which were already created). Making changes to the returned display settings instance will affect all those layers.
      Returns:
      The display settings.
    • setAntiAliasing

      public void setAntiAliasing(boolean aAntiAliasing)

      Indicates whether the S-52 symbologies used by this layer factory should use anti-aliasing or not. Anti-aliasing results in smoother icons and lines but may be slightly slower in rendering.

      Changing this setting will only affect layers which are created after this setting has been changed. Layers which have been created earlier remain unaffected.

      Parameters:
      aAntiAliasing - true when anti-aliasing should be turned on
    • isAntiAliasing

      public boolean isAntiAliasing()

      Indicates whether the S-52 symbologies used by this layer factory use anti-aliasing or not. Anti-aliasing results in smoother icons and lines but may be slightly slower in rendering.

      Returns:
      true when anti-aliasing is turned on; false otherwise
    • setScaleFactor

      public void setScaleFactor(double aScaleFactor)
      Sets the scale factor for the S-52 symbols rendered by this layer factory, in pixels per millimeter. This setting affects the size of the rendered symbols: higher values yield larger symbols. The scale factor corresponds to a screen resolution. The default value is 3, which corresponds to a commodity screen resolution.
      Parameters:
      aScaleFactor - a scale factor, in pixels per millimeter
    • getScaleFactor

      public double getScaleFactor()
      Gets the scale factor for the S-52 symbols rendered by this layer factory, in pixels per millimeter. The scale factor corresponds to a screen resolution. The default value is 3, which corresponds to a commodity screen resolution.
      Returns:
      the scale factor
    • createGXYLayer

      public ILcdGXYEditableLabelsLayer createGXYLayer(ILcdModel aModel)
      Description copied from interface: ILcdGXYLayerFactory
      Creates an ILcdGXYLayer for representing an ILcdModel on an ILcdGXYView.
      Specified by:
      createGXYLayer in interface ILcdGXYLayerFactory
      Parameters:
      aModel - a model that needs to be visualized in an ILcdGXYView
      Returns:
      a layer representing the given model, or null if such a layer cannot be created
      See Also: